[FFmpeg-devel] [PATCH] fate: add apng encoding/muxing test
Andreas Cadhalpun
andreas.cadhalpun at googlemail.com
Sat Oct 29 01:57:12 EEST 2016
On 28.10.2016 02:14, James Almer wrote:
> On 10/27/2016 8:45 PM, Andreas Cadhalpun wrote:
>> Also test the fallback to png creation for a single frame.
>>
>> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com>
>> ---
>>
>> Obviously, the patch fixing this has to be applied first.
>>
>> ---
>> tests/fate/avformat.mak | 1 +
>> tests/lavf-regression.sh | 9 +++++++++
>> tests/ref/lavf/apng | 6 ++++++
>> 3 files changed, 16 insertions(+)
>> create mode 100644 tests/ref/lavf/apng
>>
>> diff --git a/tests/fate/avformat.mak b/tests/fate/avformat.mak
>> index 3760e41..bbb1f98 100644
>> --- a/tests/fate/avformat.mak
>> +++ b/tests/fate/avformat.mak
>> @@ -1,5 +1,6 @@
>> FATE_LAVF-$(call ENCDEC, PCM_S16BE, AIFF) += aiff
>> FATE_LAVF-$(call ENCDEC, PCM_ALAW, PCM_ALAW) += alaw
>> +FATE_LAVF-$(call ENCDEC, APNG, APNG) += apng
>> FATE_LAVF-$(call ENCDEC2, MSMPEG4V3, MP2, ASF) += asf
>> FATE_LAVF-$(call ENCDEC, PCM_S16BE_PLANAR, AST) += ast
>> FATE_LAVF-$(call ENCDEC, PCM_S16BE, AU) += au
>> diff --git a/tests/lavf-regression.sh b/tests/lavf-regression.sh
>> index 8d96178..9050027 100755
>> --- a/tests/lavf-regression.sh
>> +++ b/tests/lavf-regression.sh
>> @@ -212,6 +212,15 @@ do_avconv $file $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $ENC_OPTS -t 1 -q
>> do_avconv_crc $file $DEC_OPTS -i $target_path/$file -pix_fmt rgb24
>> fi
>>
>> +if [ -n "$do_apng" ] ; then
>> +file=${outfile}lavf.apng
>> +do_avconv $file $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $ENC_OPTS -t 1 -qscale 10 -pix_fmt rgb24
>> +do_avconv_crc $file $DEC_OPTS -i $target_path/$file -pix_fmt rgb24
>> +file=${outfile}lavf.png
>> +do_avconv $file $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $ENC_OPTS -t 1 -qscale 10 -pix_fmt rgb24 -frames:v 1
>
> You're already using -frames:v 1, so -t 1 is superfluous.
>
> And you need to force apng as muxer, otherwise it will default to the image2
> muxer because the output file extension is png.
Fixed that and also dropped the useless qscale argument.
>> +do_avconv_crc $file $DEC_OPTS -i $target_path/$file -pix_fmt rgb24
>> +fi
>> +
>> if [ -n "$do_yuv4mpeg" ] ; then
>> file=${outfile}lavf.y4m
>> do_avconv $file $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $ENC_OPTS -t 1 -qscale 10
>> diff --git a/tests/ref/lavf/apng b/tests/ref/lavf/apng
>> new file mode 100644
>> index 0000000..4d35408
>> --- /dev/null
>> +++ b/tests/ref/lavf/apng
>> @@ -0,0 +1,6 @@
>> +a4c46fad7716ad094eb3c78b74ca0244 *./tests/data/lavf/lavf.apng
>> +6209864 ./tests/data/lavf/lavf.apng
>> +./tests/data/lavf/lavf.apng CRC=0x87b3c15f
>> +c5900fdd1b2fc30b985793f5226fd0c4 *./tests/data/lavf/lavf.png
>> +248854 ./tests/data/lavf/lavf.png
>> +./tests/data/lavf/lavf.png CRC=0xd8c7b7a1
>
> LGTM after the above changes.
Pushed.
Best regards,
Andreas
More information about the ffmpeg-devel
mailing list