[FFmpeg-devel] [PATCH 2/2] tests/fate: disable compression for zlib-based codecs

James Almer jamrial at gmail.com
Sun Sep 29 21:35:07 EEST 2024


On 9/29/2024 3:07 PM, Ramiro Polla wrote:
> FATE results differ when using the original zlib and zlib-ng.
> 
> Since we don't need to test the result from zlib itself, this commit
> disables compression on tests for zlib-based codecs, which ends up
> giving the same results with both libraries.
> ---
>   tests/fate/cover-art.mak                  |  6 +--
>   tests/fate/image.mak                      |  4 +-
>   tests/fate/lavf-image.mak                 |  5 ++-
>   tests/fate/lavf-video.mak                 |  4 +-
>   tests/fate/mov.mak                        |  2 +-
>   tests/fate/vcodec.mak                     |  4 +-
>   tests/ref/fate/cover-art-aiff-id3v2-remux |  6 +--
>   tests/ref/fate/cover-art-flac-remux       | 48 +++++++++++++++++------
>   tests/ref/fate/cover-art-mp3-id3v2-remux  |  6 +--
>   tests/ref/fate/mov-cover-image            |  6 +--
>   tests/ref/fate/png-icc                    |  6 +--
>   tests/ref/fate/png-mdcv                   |  4 +-
>   tests/ref/lavf/apng                       |  4 +-
>   tests/ref/lavf/apng.png                   |  4 +-
>   tests/ref/lavf/gray16be.png               |  4 +-
>   tests/ref/lavf/png                        |  4 +-
>   tests/ref/lavf/rgb48be.png                |  4 +-
>   tests/ref/vsynth/vsynth1-flashsv          |  4 +-
>   tests/ref/vsynth/vsynth1-mpng             |  4 +-
>   tests/ref/vsynth/vsynth1-zlib             |  4 +-
>   tests/ref/vsynth/vsynth2-flashsv          |  4 +-
>   tests/ref/vsynth/vsynth2-mpng             |  4 +-
>   tests/ref/vsynth/vsynth2-zlib             |  4 +-
>   tests/ref/vsynth/vsynth3-mpng             |  4 +-
>   tests/ref/vsynth/vsynth3-zlib             |  4 +-
>   tests/ref/vsynth/vsynth_lena-flashsv      |  4 +-
>   tests/ref/vsynth/vsynth_lena-mpng         |  4 +-
>   tests/ref/vsynth/vsynth_lena-zlib         |  4 +-
>   28 files changed, 96 insertions(+), 69 deletions(-)
> 
> diff --git a/tests/fate/cover-art.mak b/tests/fate/cover-art.mak
> index faa2182745..63515ff65e 100644
> --- a/tests/fate/cover-art.mak
> +++ b/tests/fate/cover-art.mak
> @@ -37,14 +37,14 @@ FATE_COVER_ART_REMUX-$(call ALLYES, FILE_PROTOCOL FLAC_DEMUXER MJPEG_DECODER \
>                                       AIFF_DEMUXER BMP_DECODER PNG_DECODER     \
>                                       FRAMECRC_MUXER PIPE_PROTOCOL)            \
>                          += fate-cover-art-aiff-id3v2-remux
> -fate-cover-art-aiff-id3v2-remux: CMD = transcode flac $(TARGET_SAMPLES)/cover_art/cover_art.flac aiff "-map 0 -map 0:v -map 0:v -map 0:v -c:a pcm_s16be -c:v:0 copy -filter:v:1 scale -c:v:1 png -filter:v:2 scale -c:v:2 bmp -c:v:3 copy -write_id3v2 1 -metadata:g unknown_key=unknown_value -metadata compilation=foo -metadata:s:v:0 title=first -metadata:s:v:1 title=second -metadata:s:v:1 comment=Illustration -metadata:s:v:2 title=third -metadata:s:v:2 comment=Conductor -metadata:s:v:3 title=fourth -metadata:s:v:3 comment=Composer" "-map 0 -c copy -t 0.1" "-show_entries format_tags:stream_tags:stream_disposition=attached_pic:stream=index,codec_name"
> +fate-cover-art-aiff-id3v2-remux: CMD = transcode flac $(TARGET_SAMPLES)/cover_art/cover_art.flac aiff "-map 0 -map 0:v -map 0:v -map 0:v -c:a pcm_s16be -c:v:0 copy -filter:v:1 scale -c:v:1 png -compression_level 0 -filter:v:2 scale -c:v:2 bmp -c:v:3 copy -write_id3v2 1 -metadata:g unknown_key=unknown_value -metadata compilation=foo -metadata:s:v:0 title=first -metadata:s:v:1 title=second -metadata:s:v:1 comment=Illustration -metadata:s:v:2 title=third -metadata:s:v:2 comment=Conductor -metadata:s:v:3 title=fourth -metadata:s:v:3 comment=Composer" "-map 0 -c copy -t 0.1" "-show_entries format_tags:stream_tags:stream_disposition=attached_pic:stream=index,codec_name"
>   
>   FATE_COVER_ART_REMUX-$(call ALLYES, FILE_PROTOCOL MP3_DEMUXER MJPEG_DECODER \
>                                       SCALE_FILTER PNG_ENCODER BMP_ENCODER    \
>                                       MP3_MUXER BMP_DECODER PNG_DECODER       \
>                                       FRAMECRC_MUXER PIPE_PROTOCOL)           \
>                          += fate-cover-art-mp3-id3v2-remux
> -fate-cover-art-mp3-id3v2-remux: CMD = transcode mp3 $(TARGET_SAMPLES)/exif/embedded_small.mp3 mp3 "-map 0 -map 0:v -map 0:v -c:a copy -filter:v:0 scale -filter:v:2 scale -c:v:0 bmp -c:v:1 copy -c:v:2 png -metadata:s:v:0 comment=Band/Orchestra" "-map 0 -c copy -t 0.1" "-show_entries stream_tags:stream_disposition=attached_pic:stream=index,codec_name"
> +fate-cover-art-mp3-id3v2-remux: CMD = transcode mp3 $(TARGET_SAMPLES)/exif/embedded_small.mp3 mp3 "-map 0 -map 0:v -map 0:v -c:a copy -filter:v:0 scale -filter:v:2 scale -c:v:0 bmp -c:v:1 copy -c:v:2 png -compression_level 0 -metadata:s:v:0 comment=Band/Orchestra" "-map 0 -c copy -t 0.1" "-show_entries stream_tags:stream_disposition=attached_pic:stream=index,codec_name"
>   
>   # Also covers muxing and demuxing of nonstandard channel layouts into FLAC
>   # as well as the unorthodox multi_dim_quant option of the FLAC encoder.
> @@ -55,7 +55,7 @@ FATE_COVER_ART_REMUX-$(call ALLYES, FILE_PROTOCOL MOV_DEMUXER OGG_DEMUXER   \
>                                       FLAC_MUXER FLAC_DEMUXER FLAC_DECODER    \
>                                       FRAMECRC_MUXER PIPE_PROTOCOL)           \
>                          += fate-cover-art-flac-remux
> -fate-cover-art-flac-remux: CMD = transcode mov $(TARGET_SAMPLES)/lossless-audio/inside.m4a flac "-map 0 -map 1:v -map 1:v -af channelmap=channel_layout=FL+FC,aresample -c:a flac -multi_dim_quant 1 -c:v:0 copy -metadata:s:v:0 comment=Illustration -metadata:s:v:0 title=OpenMusic  -filter:v:1 scale -c:v:1 png -metadata:s:v:1 title=landscape -c:v:2 copy -filter:v:3 scale -metadata:s:v:2 title=portrait -c:v:3 bmp  -metadata:s:v:3 comment=Conductor -c:v:4 copy -t 0.4" "-map 0 -map 0:a -c:a:0 copy -c:v copy" "-show_entries format_tags:stream_tags:stream_disposition=attached_pic:stream=index,codec_name" "-f ogg -i $(TARGET_SAMPLES)/cover_art/ogg_vorbiscomment_cover.opus"
> +fate-cover-art-flac-remux: CMD = transcode mov $(TARGET_SAMPLES)/lossless-audio/inside.m4a flac "-map 0 -map 1:v -map 1:v -af channelmap=channel_layout=FL+FC,aresample -c:a flac -multi_dim_quant 1 -c:v:0 copy -metadata:s:v:0 comment=Illustration -metadata:s:v:0 title=OpenMusic  -filter:v:1 scale -c:v:1 png -compression_level 0 -metadata:s:v:1 title=landscape -c:v:2 copy -filter:v:3 scale -metadata:s:v:2 title=portrait -c:v:3 bmp  -metadata:s:v:3 comment=Conductor -c:v:4 copy -t 0.4" "-map 0 -map 0:a -c:a:0 copy -c:v copy" "-show_entries format_tags:stream_tags:stream_disposition=attached_pic:stream=index,codec_name" "-f ogg -i $(TARGET_SAMPLES)/cover_art/ogg_vorbiscomment_cover.opus"

You should use -compression_level:v:1 0 here (And maybe in others tests 
too?) to ensure it's not applied to every stream.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 495 bytes
Desc: OpenPGP digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20240929/89b2ca21/attachment.sig>


More information about the ffmpeg-devel mailing list