wip: tools/daedalus_decode_h264 cli
This commit is contained in:
@@ -162,6 +162,31 @@ add_executable(bench_flush_frame tests/bench_flush_frame.c)
|
||||
target_link_libraries(bench_flush_frame PRIVATE daedalus_decoder)
|
||||
target_compile_options(bench_flush_frame PRIVATE -O2)
|
||||
|
||||
# ---- Tools (not gated by ctest; opt-in via DAEDALUS_BUILD_TOOLS) ----
|
||||
#
|
||||
# daedalus_decode_h264 — option A standalone test harness that
|
||||
# wraps libavcodec + daedalus-decoder and bit-exact-compares their
|
||||
# outputs on real H.264 streams. Identity-passthrough mode in this
|
||||
# first iteration (predicted = AVFrame pixels, coeffs = 0, no
|
||||
# deblock edges); follow-up PRs use the per-MB inspection callback
|
||||
# (marfrit-packages patch 0016) to feed REAL per-MB state.
|
||||
#
|
||||
# Requires libavcodec + libavformat headers + libs. Off by default
|
||||
# so the standard ctest build doesn't pull in FFmpeg as a hard dep.
|
||||
option(DAEDALUS_BUILD_TOOLS "Build daedalus-decoder CLI tools (requires libavcodec)" OFF)
|
||||
if(DAEDALUS_BUILD_TOOLS)
|
||||
pkg_check_modules(FFMPEG REQUIRED libavcodec libavformat libavutil)
|
||||
add_executable(daedalus_decode_h264 tools/daedalus_decode_h264.c)
|
||||
target_link_libraries(daedalus_decode_h264
|
||||
PRIVATE daedalus_decoder ${FFMPEG_LIBRARIES})
|
||||
target_include_directories(daedalus_decode_h264
|
||||
PRIVATE ${FFMPEG_INCLUDE_DIRS})
|
||||
target_link_directories(daedalus_decode_h264
|
||||
PRIVATE ${FFMPEG_LIBRARY_DIRS})
|
||||
target_compile_options(daedalus_decode_h264
|
||||
PRIVATE -O2 ${FFMPEG_CFLAGS_OTHER})
|
||||
endif()
|
||||
|
||||
# ---- Install ------------------------------------------------------
|
||||
#
|
||||
# Library + public header. Stage 2/3 will add a pkg-config file and
|
||||
|
||||
Reference in New Issue
Block a user