Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Leo Izen <leo.izen@gmail.com>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH v3 4/4] fate/jpegxl_anim: add demuxer fate test for jpegxl_anim
Date: Sat, 24 Jun 2023 11:28:29 -0400
Message-ID: <efbf5b28-4c65-4fae-a6db-c754045db2fb@gmail.com> (raw)
In-Reply-To: <6c7beca3-db4b-be70-3073-01f6ed624c35@gmail.com>

On 6/24/23 08:26, James Almer wrote:
> On 6/24/2023 1:38 AM, Leo Izen wrote:
>> Adds a fate test for the jpegxl_anim demuxer, that should allow testing
>> for true positives and false positives for animated jpegxl files. Note
>> that two of the test cases are not animated, in order to help sort out
>> false positives.
>>
>> Signed-off-by: <leo.izen@gmail.com>
>> ---
>>   tests/Makefile                         |  1 +
>>   tests/fate/jxl.mak                     | 16 ++++++++++++++++
>>   tests/ref/fate/jxl-anim-demux-belgium  |  6 ++++++
>>   tests/ref/fate/jxl-anim-demux-icos4d   |  6 ++++++
>>   tests/ref/fate/jxl-anim-demux-lenna256 |  7 +++++++
>>   tests/ref/fate/jxl-anim-demux-newton   |  6 ++++++
>>   6 files changed, 42 insertions(+)
>>   create mode 100644 tests/fate/jxl.mak
>>   create mode 100644 tests/ref/fate/jxl-anim-demux-belgium
>>   create mode 100644 tests/ref/fate/jxl-anim-demux-icos4d
>>   create mode 100644 tests/ref/fate/jxl-anim-demux-lenna256
>>   create mode 100644 tests/ref/fate/jxl-anim-demux-newton
>>
>> diff --git a/tests/Makefile b/tests/Makefile
>> index e09f30a0fc..7b80762e81 100644
>> --- a/tests/Makefile
>> +++ b/tests/Makefile
>> @@ -201,6 +201,7 @@ include $(SRC_PATH)/tests/fate/image.mak
>>   include $(SRC_PATH)/tests/fate/imf.mak
>>   include $(SRC_PATH)/tests/fate/indeo.mak
>>   include $(SRC_PATH)/tests/fate/jpeg2000.mak
>> +include $(SRC_PATH)/tests/fate/jxl.mak
>>   include $(SRC_PATH)/tests/fate/libavcodec.mak
>>   include $(SRC_PATH)/tests/fate/libavdevice.mak
>>   include $(SRC_PATH)/tests/fate/libavformat.mak
>> diff --git a/tests/fate/jxl.mak b/tests/fate/jxl.mak
>> new file mode 100644
>> index 0000000000..057d3be0e1
>> --- /dev/null
>> +++ b/tests/fate/jxl.mak
>> @@ -0,0 +1,16 @@
>> +# These two are animated JXL files
>> +FATE_JPEGXL_ANIM_DEMUX += fate-jxl-anim-demux-newton
>> +fate-jxl-anim-demux-newton: CMD = framecrc -i 
>> $(TARGET_SAMPLES)/jxl/newton.jxl -c copy
>> +FATE_JPEGXL_ANIM_DEMUX += fate-jxl-anim-demux-icos4d
>> +fate-jxl-anim-demux-icos4d: CMD = framecrc -i 
>> $(TARGET_SAMPLES)/jxl/icos4d.jxl -c copy
>> +
>> +# These two are not animated JXL. They are here to check false 
>> positives.
>> +FATE_JPEGXL_ANIM_DEMUX += fate-jxl-anim-demux-belgium
>> +fate-jxl-anim-demux-belgium: CMD = framecrc -i 
>> $(TARGET_SAMPLES)/jxl/belgium.jxl -c copy
>> +FATE_JPEGXL_ANIM_DEMUX += fate-jxl-anim-demux-lenna256
>> +fate-jxl-anim-demux-lenna256: CMD = framecrc -i 
>> $(TARGET_SAMPLES)/jxl/lenna-256.jxl -c copy
>> +
>> +FATE_JPEGXL_ANIM_DEMUX += $(FATE_JPEGXL_ANIM_DEMUX-yes)
>> +
>> +FATE_SAMPLES_FFMPEG-$(call FRAMECRC, JPEGXL_ANIM) += 
>> $(FATE_JPEGXL_ANIM_DEMUX)
>> +fate-jxl-anim-demux: $(FATE_JPEGXL_ANIM_DEMUX)
>> diff --git a/tests/ref/fate/jxl-anim-demux-belgium 
>> b/tests/ref/fate/jxl-anim-demux-belgium
>> new file mode 100644
>> index 0000000000..b2fe5035ac
>> --- /dev/null
>> +++ b/tests/ref/fate/jxl-anim-demux-belgium
>> @@ -0,0 +1,6 @@
>> +#tb 0: 1/25
>> +#media_type 0: video
>> +#codec_id 0: jpegxl
>> +#dimensions 0: 768x512
>> +#sar 0: 0/1
>> +0,          0,          0,        1,       32, 0xa2930a20
>> diff --git a/tests/ref/fate/jxl-anim-demux-icos4d 
>> b/tests/ref/fate/jxl-anim-demux-icos4d
>> new file mode 100644
>> index 0000000000..eff6ff1f1b
>> --- /dev/null
>> +++ b/tests/ref/fate/jxl-anim-demux-icos4d
>> @@ -0,0 +1,6 @@
>> +#tb 0: 1/1000
>> +#media_type 0: video
>> +#codec_id 0: jpegxl
>> +#dimensions 0: 48x48
>> +#sar 0: 0/1
>> +0,          0,          0,        0,    67898, 0x53b6516b
>> diff --git a/tests/ref/fate/jxl-anim-demux-lenna256 
>> b/tests/ref/fate/jxl-anim-demux-lenna256
>> new file mode 100644
>> index 0000000000..0bd286a451
>> --- /dev/null
>> +++ b/tests/ref/fate/jxl-anim-demux-lenna256
>> @@ -0,0 +1,7 @@
>> +#tb 0: 1/25
>> +#media_type 0: video
>> +#codec_id 0: jpegxl
>> +#dimensions 0: 256x256
>> +#sar 0: 0/1
>> +0,          0,          0,        1,     4096, 0x2409e9e3
>> +0,          1,          1,        1,     3992, 0x966dbfcb
> 
> Why is this returning two frames when it's not an animation? And why the 
> two animated files are returning only one frame? Do the latter have the 
> animation bits in the header but still are a single frame?
> 

Because this is with -c copy, these are AVPackets, not AVFrames. For 
some reason, the image2 demuxer is returning 4k-sized packets when fed 
through the parser. This is what prompted the original patch to 
libjxldec, to accommodate those 4k-sized packets that aren't complete 
frames.

>> diff --git a/tests/ref/fate/jxl-anim-demux-newton 
>> b/tests/ref/fate/jxl-anim-demux-newton
>> new file mode 100644
>> index 0000000000..6fcb85c41e
>> --- /dev/null
>> +++ b/tests/ref/fate/jxl-anim-demux-newton
>> @@ -0,0 +1,6 @@
>> +#tb 0: 1/1000
>> +#media_type 0: video
>> +#codec_id 0: jpegxl
>> +#dimensions 0: 128x96
>> +#sar 0: 0/1
>> +0,          0,          0,        0,    43376, 0xb2296182
> _______________________________________________

- Leo Izen

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

      reply	other threads:[~2023-06-24 15:28 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-24  4:38 [FFmpeg-devel] [PATCH v3 0/4] JPEG XL Parser addition Leo Izen
2023-06-24  4:38 ` [FFmpeg-devel] [PATCH v3 1/4] avcodec/libjxldec: use internal AVFrame as buffered space Leo Izen
2023-06-24 11:49   ` James Almer
2023-06-24 15:24     ` Leo Izen
2023-06-24  4:38 ` [FFmpeg-devel] [PATCH v3 2/4] avcodec/jpegxl_parser: add JPEG XL parser Leo Izen
2023-06-24  4:38 ` [FFmpeg-devel] [PATCH v3 3/4] avformat/jpegxl: remove jpegxl_probe, instead call avcodec/jpegxl_parse Leo Izen
2023-06-24 12:21   ` James Almer
2023-06-24 15:26     ` Leo Izen
2023-06-24  4:38 ` [FFmpeg-devel] [PATCH v3 4/4] fate/jpegxl_anim: add demuxer fate test for jpegxl_anim Leo Izen
2023-06-24 12:26   ` James Almer
2023-06-24 15:28     ` Leo Izen [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=efbf5b28-4c65-4fae-a6db-c754045db2fb@gmail.com \
    --to=leo.izen@gmail.com \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git