[FFmpeg-trac] #3871(avcodec:new): FFmpeg MD5 output different with same data #2
FFmpeg
trac at avcodec.org
Tue Aug 19 21:13:06 CEST 2014
#3871: FFmpeg MD5 output different with same data #2
--------------------------------------+----------------------------------
Reporter: ahthovaikied | Type: defect
Status: new | Priority: normal
Component: avcodec | Version: 2.2.4
Keywords: md5 | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
--------------------------------------+----------------------------------
Computing the MD5 of media streams produce different results between two
of my machines, with same input data.
I learned my lesson in bug https://trac.ffmpeg.org/ticket/3524#comment:9
and I am calculating the checksums WITHOUT decoding.
The 2 configurations are :
* Ubuntu 14.04, Core i7 950, FFmpeg compiled with:
{{{
--enable-gpl --enable-version3 --enable-nonfree --disable-runtime-
cpudetect --disable-ffserver --disable-encoder=vorbis --disable-
encoder=aac --enable-x11grab --enable-libfdk-aac --enable-libmp3lame
--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus
--enable-librtmp --enable-libtheora --enable-libvorbis --enable-libvpx
--enable-libx264 --enable-libxvid --disable-debug --extra-libs=-ldl
--cpu=corei7
}}}
* Ubuntu 14.04, Atom D525, FFmpeg compiled with:
{{{
--enable-gpl --enable-version3 --enable-nonfree --disable-runtime-
cpudetect --disable-ffserver --disable-ffplay --disable-encoders
--disable-decoders --disable-debug --cpu=atom
}}}
I get different MD5 for several video files I tried, ie
http://www.auby.no/files/video_tests/h264_720p_hp_3.1_600kbps_aac_mp3_dual_audio_harry_potter.mkv.
Sample output:
{{{
$ ffmpeg -i h264_720p_hp_3.1_600kbps_aac_mp3_dual_audio_harry_potter.mkv
-c:v copy -c:a copy -f md5 -
ffmpeg version N-65758-g746095b Copyright (c) 2000-2014 the FFmpeg
developers
built on Aug 19 2014 20:11:25 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --enable-gpl --enable-version3 --enable-nonfree
--disable-runtime-cpudetect --disable-ffserver --disable-ffplay --disable-
encoders --disable-decoders --disable-debug --cpu=atom
libavutil 54. 5.100 / 54. 5.100
libavcodec 56. 0.101 / 56. 0.101
libavformat 56. 1.100 / 56. 1.100
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 0.100 / 5. 0.100
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
[matroska,webm @ 0x259dc20] Could not find codec parameters for stream 2
(Audio: mp3, 48000 Hz, 2 channels, 160 kb/s): unspecified frame size
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
Guessed Channel Layout for Input Stream #0.1 : stereo
Guessed Channel Layout for Input Stream #0.2 : stereo
Input #0, matroska,webm, from
'h264_720p_hp_3.1_600kbps_aac_mp3_dual_audio_harry_potter.mkv':
Metadata:
title : Harry Potter 4[Eng-Hindi]Dual.Audio BRRIP
720p-=[champ_is_here]=-
encoder : libebml v1.0.0 + libmatroska v1.0.0
creation_time : 2011-01-07 07:42:53
Duration: 00:00:57.61, start: 0.000000, bitrate: 613 kb/s
Stream #0:0(eng): Video: h264 (High), yuv420p, 1280x528 [SAR 1:1 DAR
80:33], 25 fps, 25 tbr, 1k tbn, 47.95 tbc
Metadata:
title : -=[champ_is_here]=-
Stream #0:1(eng): Audio: aac, 48000 Hz, 2 channels
Metadata:
title : -=[champ_is_here]=-
Stream #0:2(hin): Audio: mp3, 48000 Hz, 2 channels, 160 kb/s
Metadata:
title : -=[champ_is_here]=-
Output #0, md5, to 'pipe:':
Metadata:
title : Harry Potter 4[Eng-Hindi]Dual.Audio BRRIP
720p-=[champ_is_here]=-
encoder : Lavf56.1.100
Stream #0:0(eng): Video: h264, yuv420p, 1280x528 [SAR 1:1 DAR 80:33],
q=2-31, 25 fps, 23.98 tbn, 23.98 tbc
Metadata:
title : -=[champ_is_here]=-
Stream #0:1(eng): Audio: aac, 48000 Hz, stereo
Metadata:
title : -=[champ_is_here]=-
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 12 >= 12
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 35 >= 35
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 59 >= 59
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 83 >= 83
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 106 >= 106
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 129 >= 129
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 153 >= 153
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 176 >= 176
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 199 >= 199
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 222 >= 222
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 246 >= 246
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 270 >= 270
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 293 >= 293
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 317 >= 317
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 340 >= 340
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 364 >= 364
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 387 >= 387
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 410 >= 410
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 434 >= 434
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 457 >= 457
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 481 >= 481
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 505 >= 505
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 528 >= 528
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 551 >= 551
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 574 >= 574
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 598 >= 598
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 622 >= 622
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 645 >= 645
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 668 >= 668
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 692 >= 692
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 715 >= 715
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 739 >= 739
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 762 >= 762
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 786 >= 786
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 809 >= 809
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 832 >= 832
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 856 >= 856
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 879 >= 879
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 903 >= 903
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 926 >= 926
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 949 >= 949
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 973 >= 973
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 996 >= 996
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1020 >= 1020
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1044 >= 1044
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1067 >= 1067
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1090 >= 1090
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1114 >= 1114
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1137 >= 1137
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1161 >= 1161
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1184 >= 1184
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1208 >= 1208
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1231 >= 1231
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1254 >= 1254
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1278 >= 1278
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1301 >= 1301
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1325 >= 1325
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1348 >= 1348
[md5 @ 0x273cca0] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 1371 >= 1371
MD5=487e837f7c08ee07cf44e8b473911a06
frame= 1439 fps=0.0 q=-1.0 Lsize= 0kB time=00:00:57.56 bitrate=
0.0kbits/s
video:2917kB audio:257kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: unknown
}}}
Here is the summary of the results I get :
* Atom machine, FFmpeg 2.2.7
=> MD5=527e3ac28a2b5175e1a0a871b0e9f9c3
* Atom machine, FFmpeg from git master commit
746095bc29817875ac89a7d4771f8a54895b3cbb
=> MD5=487e837f7c08ee07cf44e8b473911a06
* Atom machine, FFmpeg from git master commit
746095bc29817875ac89a7d4771f8a54895b3cbb without --disable-decoders
=> MD5=487e837f7c08ee07cf44e8b473911a06
* Core i7 machine, FFmpeg 2.2.7
=> MD5=33a157ebc4fcdf3b1fa75546d67c6364
* Core i7 machine, FFmpeg from git master commit
746095bc29817875ac89a7d4771f8a54895b3cbb
=> MD5=487e837f7c08ee07cf44e8b473911a06
So it seems it has been fixed on git master, and the right MD5 is
487e837f7c08ee07cf44e8b473911a06.
Can anyone confirm this is a known bug that has been fixed?
And if yes, is it planned to backport the fix on the 2.2 branch?
Thank you
--
Ticket URL: <https://trac.ffmpeg.org/ticket/3871>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list