PR #22787 opened by i-Amogh URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22787 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22787.patch
Added tests for verifying decoded output on an MJPEG sample, decode verification, bitstream modification detection, and DHT segment handling. Coverage: 1. 0% -> 85.2% Line, 100% Function in libavcodec/bsf/mjpega_dump_header.c (maximum limit for FATE coverage) 2. 0% -> 76.8% Line, 100% Function in libavcodec/bsf/mjpeg2jpeg.c (maximum limit for FATE coverage) >From 8854f61e3e8838d36362c280f631fcbb67dd1184 Mon Sep 17 00:00:00 2001 From: i-Amogh <[email protected]> Date: Thu, 9 Apr 2026 22:20:55 +0530 Subject: [PATCH 1/2] tests/fate/video: Add FATE test for libavcodec/bsf/mjpeg2jpeg.c Addded tests for mjpeg2jpeg bitstream filter by applying it to an MJPEG sample during input demuxing and verifying the decoded output via framecrc. Signed-off-by: i-Amogh <[email protected]> --- tests/fate/video.mak | 3 +++ tests/ref/fate/bsf-mjpeg2jpeg | 8 ++++++++ 2 files changed, 11 insertions(+) create mode 100644 tests/ref/fate/bsf-mjpeg2jpeg diff --git a/tests/fate/video.mak b/tests/fate/video.mak index 10d1b20cd5..6621a7757b 100644 --- a/tests/fate/video.mak +++ b/tests/fate/video.mak @@ -279,6 +279,9 @@ fate-mjpegb: CMD = framecrc -idct simple -fflags +bitexact -i $(TARGET_SAMPLES)/ FATE_VIDEO-$(call FRAMECRC, AVI, MJPEG) += fate-mjpeg-ticket3229 fate-mjpeg-ticket3229: CMD = framecrc -idct simple -fflags +bitexact -i $(TARGET_SAMPLES)/mjpeg/mjpeg_field_order.avi -an +FATE_VIDEO-$(call FRAMECRC, AVI, MJPEG, MJPEG2JPEG_BSF) += fate-bsf-mjpeg2jpeg +fate-bsf-mjpeg2jpeg: CMD = framecrc -bsf:v mjpeg2jpeg -idct simple -fflags +bitexact -i $(TARGET_SAMPLES)/mjpeg/mjpeg_field_order.avi -an + FATE_VIDEO-$(call FRAMECRC, MVI, MOTIONPIXELS, SCALE_FILTER) += fate-motionpixels fate-motionpixels: CMD = framecrc -i $(TARGET_SAMPLES)/motion-pixels/INTRO-partial.MVI -an -pix_fmt rgb24 -frames:v 111 -vf scale diff --git a/tests/ref/fate/bsf-mjpeg2jpeg b/tests/ref/fate/bsf-mjpeg2jpeg new file mode 100644 index 0000000000..fc5a8dd7ff --- /dev/null +++ b/tests/ref/fate/bsf-mjpeg2jpeg @@ -0,0 +1,8 @@ +#tb 0: 1/30 +#media_type 0: video +#codec_id 0: rawvideo +#dimensions 0: 468x312 +#sar 0: 0/1 +0, 0, 0, 1, 292032, 0x3af3a5f7 +0, 6, 6, 1, 292032, 0xe97fb504 +0, 8, 8, 1, 292032, 0xd448db04 -- 2.52.0 >From ac79729779ab6fc57b0c1b32039368bc495d8c05 Mon Sep 17 00:00:00 2001 From: i-Amogh <[email protected]> Date: Fri, 10 Apr 2026 03:14:23 +0530 Subject: [PATCH 2/2] tests/fate/video: Add FATE tests for libavcodec/bsf/mjpega_dump_header.c The tests cover: - Basic decode verification - Bitstream modification detection - DHT segment handling Signed-off-by: i-Amogh <[email protected]> --- tests/fate/video.mak | 12 ++++++++++++ tests/ref/fate/bsf-mjpega-dump-header | 8 ++++++++ 2 files changed, 20 insertions(+) create mode 100644 tests/ref/fate/bsf-mjpega-dump-header diff --git a/tests/fate/video.mak b/tests/fate/video.mak index 6621a7757b..2d9e5df679 100644 --- a/tests/fate/video.mak +++ b/tests/fate/video.mak @@ -282,6 +282,18 @@ fate-mjpeg-ticket3229: CMD = framecrc -idct simple -fflags +bitexact -i $(TARGET FATE_VIDEO-$(call FRAMECRC, AVI, MJPEG, MJPEG2JPEG_BSF) += fate-bsf-mjpeg2jpeg fate-bsf-mjpeg2jpeg: CMD = framecrc -bsf:v mjpeg2jpeg -idct simple -fflags +bitexact -i $(TARGET_SAMPLES)/mjpeg/mjpeg_field_order.avi -an +FATE_VIDEO-$(call FRAMECRC, AVI, MJPEG, MJPEGA_DUMP_HEADER_BSF) += fate-bsf-mjpega-dump-header +fate-bsf-mjpega-dump-header: CMD = framecrc -bsf:v mjpegadump -idct simple -fflags +bitexact -i $(TARGET_SAMPLES)/mjpeg/mjpeg_field_order.avi -an + +FATE_VIDEO-$(call ALLYES, AVI_DEMUXER MJPEG_DECODER MJPEGA_DUMP_HEADER_BSF) += fate-bsf-mjpega-dump-header-bitstream +fate-bsf-mjpega-dump-header-bitstream: CMD = md5pipe -i $(TARGET_SAMPLES)/mjpeg/mjpeg_field_order.avi -c:v copy -bsf:v mjpegadump -f rawvideo +fate-bsf-mjpega-dump-header-bitstream: CMP = oneline +fate-bsf-mjpega-dump-header-bitstream: REF = 76e30eca467b056dbd65b929eb6c0d17 + +FATE_VIDEO-$(call ENCDEC, MJPEG, AVI AVI, MJPEGA_DUMP_HEADER_BSF) += fate-bsf-mjpega-already-formatted +fate-bsf-mjpega-already-formatted: CMD = framecrc -bsf:v mjpegadump,mjpegadump -idct simple -fflags +bitexact -i $(TARGET_SAMPLES)/mjpeg/mjpeg_field_order.avi -an +fate-bsf-mjpega-already-formatted: REF = $(SRC_PATH)/tests/ref/fate/bsf-mjpega-dump-header + FATE_VIDEO-$(call FRAMECRC, MVI, MOTIONPIXELS, SCALE_FILTER) += fate-motionpixels fate-motionpixels: CMD = framecrc -i $(TARGET_SAMPLES)/motion-pixels/INTRO-partial.MVI -an -pix_fmt rgb24 -frames:v 111 -vf scale diff --git a/tests/ref/fate/bsf-mjpega-dump-header b/tests/ref/fate/bsf-mjpega-dump-header new file mode 100644 index 0000000000..fc5a8dd7ff --- /dev/null +++ b/tests/ref/fate/bsf-mjpega-dump-header @@ -0,0 +1,8 @@ +#tb 0: 1/30 +#media_type 0: video +#codec_id 0: rawvideo +#dimensions 0: 468x312 +#sar 0: 0/1 +0, 0, 0, 1, 292032, 0x3af3a5f7 +0, 6, 6, 1, 292032, 0xe97fb504 +0, 8, 8, 1, 292032, 0xd448db04 -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
