[FFmpeg-trac] #3583(undetermined:new): Internet Explorer fails to play WebM files produced by ffmpeg

FFmpeg trac at avcodec.org
Thu Apr 24 00:03:07 CEST 2014


#3583: Internet Explorer fails to play WebM files produced by ffmpeg
-------------------------------------+-------------------------------------
             Reporter:  Gray         |                    Owner:
                 Type:  defect       |                   Status:  new
             Priority:  important    |                Component:
              Version:  2.2.1        |  undetermined
             Keywords:  regression   |               Resolution:
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------

Comment (by Gray):

 Replying to [comment:8 cehoyos]:
 > If you cannot tell the change introducing the regression, please provide
 the command line including complete, uncut console output of a working
 version of FFmpeg.

 This produces files that work fine in IE11:
 {{{
 ffmpeg-1.2 -v 9 -loglevel 99 -i big-buck-bunny_trailer.webm -crf 4 -b:v
 1000k -an -y bbb_working.webm
 }}}

 I removed some ''Writing block'' stuff from the middle.
 {{{
 ffmpeg version 1.2 Copyright (c) 2000-2013 the FFmpeg developers
   built on Mar 28 2013 00:28:48 with gcc 4.8.0 (GCC)
   configuration: --enable-gpl --enable-version3 --disable-w32threads
 --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r
 --enable-gnutls --enable-libass --enable-libbluray --enable-libcaca
 --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmp3lame
 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg
 --enable-libopus --enable-librtmp --enable-libschroedinger --enable-
 libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-
 libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx
 --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
   libavutil      52. 18.100 / 52. 18.100
   libavcodec     54. 92.100 / 54. 92.100
   libavformat    54. 63.104 / 54. 63.104
   libavdevice    54.  3.103 / 54.  3.103
   libavfilter     3. 42.103 /  3. 42.103
   libswscale      2.  2.100 /  2.  2.100
   libswresample   0. 17.102 /  0. 17.102
   libpostproc    52.  2.100 / 52.  2.100
 Splitting the commandline.
 Reading option '-v' ... matched as option 'v' (set libav* logging level)
 with argument '9'.
 Reading option '-loglevel' ... matched as option 'loglevel' (set libav*
 logging level) with argument '99'.
 Reading option '-i' ... matched as input file with argument 'big-buck-
 bunny_trailer.webm'.
 Reading option '-crf' ... matched as AVOption 'crf' with argument '4'.
 Reading option '-b:v' ... matched as option 'b' (video bitrate (please use
 -b:v)) with argument '1000k'.
 Reading option '-an' ... matched as option 'an' (disable audio) with
 argument '1'.
 Reading option '-y' ... matched as option 'y' (overwrite output files)
 with argument '1'.
 Reading option 'bbb_working.webm' ... matched as output file.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option v (set libav* logging level) with argument 9.
 Applying option y (overwrite output files) with argument 1.
 Successfully parsed a group of options.
 Parsing a group of options: input file big-buck-bunny_trailer.webm.
 Successfully parsed a group of options.
 Opening an input file: big-buck-bunny_trailer.webm.
 [matroska,webm @ 0025c1a0] Format matroska,webm probed with size=2048 and
 score=100
 st:0 removing common factor 1000000 from timebase
 st:1 removing common factor 1000000 from timebase
 [matroska,webm @ 0025c1a0] File position before
 avformat_find_stream_info() is 3963
 [matroska,webm @ 0025c1a0] All info found
 [matroska,webm @ 0025c1a0] File position after avformat_find_stream_info()
 is 4440
 Input #0, matroska,webm, from 'big-buck-bunny_trailer.webm':
   Metadata:
     creation_time   : 2010-05-20 08:21:12
   Duration: 00:00:32.48, start: 0.000000, bitrate: 533 kb/s
     Stream #0:0(eng), 1, 1/1000: Video: vp8, yuv420p, 640x360, 1/1000, SAR
 1:1 DAR 16:9, 25 fps, 25 tbr, 1k tbn, 1k tbc (default)
     Stream #0:1(eng), 1, 1/1000: Audio: vorbis, 44100 Hz, mono, fltp
 (default)
 Successfully opened the file.
 Parsing a group of options: output file bbb_working.webm.
 Applying option b:v (video bitrate (please use -b:v)) with argument 1000k.
 Applying option an (disable audio) with argument 1.
 Successfully parsed a group of options.
 Opening an output file: bbb_working.webm.
 Successfully opened the file.
 [buffer @ 02ec5ca0] Setting entry with key 'video_size' to value '640x360'
 [buffer @ 02ec5ca0] Setting entry with key 'pix_fmt' to value '0'
 [buffer @ 02ec5ca0] Setting entry with key 'time_base' to value '1/1000'
 [buffer @ 02ec5ca0] Setting entry with key 'pixel_aspect' to value '1/1'
 [buffer @ 02ec5ca0] Setting entry with key 'sws_param' to value 'flags=2'
 [buffer @ 02ec5ca0] Setting entry with key 'frame_rate' to value '25/1'
 [graph 0 input from stream 0:0 @ 0025a560] w:640 h:360 pixfmt:yuv420p
 tb:1/1000 fr:25/1 sar:1/1 sws_param:flags=2
 [libvpx @ 00253200] v1.2.0
 [libvpx @ 00253200] --target=x86-win32-gcc
 --prefix=/home/kyle/software/ffmpeg/pkgs/libvpx/libvpx-1.2.0-win32
 --enable-runtime-cpu-detect
 [libvpx @ 00253200] vpx_codec_enc_cfg
 [libvpx @ 00253200] generic settings
   g_usage:                      0
   g_threads:                    0
   g_profile:                    0
   g_w:                          320
   g_h:                          240
   g_timebase:                   {1/30}
   g_error_resilient:            0
   g_pass:                       0
   g_lag_in_frames:              0
 [libvpx @ 00253200] rate control settings
   rc_dropframe_thresh:          0
   rc_resize_allowed:            0
   rc_resize_up_thresh:          60
   rc_resize_down_thresh:        30
   rc_end_usage:                 0
   rc_twopass_stats_in:          00000000(0)
   rc_target_bitrate:            256
 [libvpx @ 00253200] quantizer settings
   rc_min_quantizer:             4
   rc_max_quantizer:             63
 [libvpx @ 00253200] bitrate tolerance
   rc_undershoot_pct:            100
   rc_overshoot_pct:             100
 [libvpx @ 00253200] decoder buffer model
   rc_buf_sz:                    6000
   rc_buf_initial_sz:            4000
   rc_buf_optimal_sz:            5000
 [libvpx @ 00253200] 2 pass rate control settings
   rc_2pass_vbr_bias_pct:        50
   rc_2pass_vbr_minsection_pct:  0
   rc_2pass_vbr_maxsection_pct:  400
 [libvpx @ 00253200] keyframing settings
   kf_mode:                      1
   kf_min_dist:                  0
   kf_max_dist:                  128
 [libvpx @ 00253200]
 [libvpx @ 00253200] vpx_codec_enc_cfg
 [libvpx @ 00253200] generic settings
   g_usage:                      0
   g_threads:                    0
   g_profile:                    0
   g_w:                          640
   g_h:                          360
   g_timebase:                   {1/25}
   g_error_resilient:            0
   g_pass:                       0
   g_lag_in_frames:              25
 [libvpx @ 00253200] rate control settings
   rc_dropframe_thresh:          0
   rc_resize_allowed:            0
   rc_resize_up_thresh:          60
   rc_resize_down_thresh:        30
   rc_end_usage:                 2
   rc_twopass_stats_in:          00000000(0)
   rc_target_bitrate:            1000
 [libvpx @ 00253200] quantizer settings
   rc_min_quantizer:             4
   rc_max_quantizer:             63
 [libvpx @ 00253200] bitrate tolerance
   rc_undershoot_pct:            100
   rc_overshoot_pct:             100
 [libvpx @ 00253200] decoder buffer model
   rc_buf_sz:                    6000
   rc_buf_initial_sz:            4000
   rc_buf_optimal_sz:            5000
 [libvpx @ 00253200] 2 pass rate control settings
   rc_2pass_vbr_bias_pct:        50
   rc_2pass_vbr_minsection_pct:  0
   rc_2pass_vbr_maxsection_pct:  400
 [libvpx @ 00253200] keyframing settings
   kf_mode:                      1
   kf_min_dist:                  0
   kf_max_dist:                  128
 [libvpx @ 00253200]
 [libvpx @ 00253200] vpx_codec_control
 [libvpx @ 00253200]   VP8E_SET_CPUUSED:             3
 [libvpx @ 00253200]   VP8E_SET_ARNR_MAXFRAMES:      0
 [libvpx @ 00253200]   VP8E_SET_ARNR_STRENGTH:       3
 [libvpx @ 00253200]   VP8E_SET_ARNR_TYPE:           3
 [libvpx @ 00253200]   VP8E_SET_NOISE_SENSITIVITY:   0
 [libvpx @ 00253200]   VP8E_SET_TOKEN_PARTITIONS:    0
 [libvpx @ 00253200]   VP8E_SET_STATIC_THRESHOLD:    0
 [libvpx @ 00253200]   VP8E_SET_CQ_LEVEL:            4
 [libvpx @ 00253200] Using deadline: 1000000
 [vp8 @ 02eb0a00] detected 2 logical cores
 Output #0, webm, to 'bbb_working.webm':
   Metadata:
     encoder         : Lavf54.63.104
     Stream #0:0(eng), 0, 1/1000: Video: vp8, yuv420p, 640x360 [SAR 1:1 DAR
 16:9], 1/25, q=-1--1, 1000 kb/s, 1k tbn, 25 tbc (default)
 Stream mapping:
   Stream #0:0 -> #0:0 (vp8 -> libvpx)
 Press [q] to stop, [?] for help
 [webm @ 02f83900] Writing block at offset 460, size 425, pts 0, dts 0,
 duration 40, flags 128
 [webm @ 02f83900] Writing block at offset 892, size 41, pts 40, dts 40,
 duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 939, size 88, pts 80, dts 80,
 duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 1033, size 131, pts 120, dts
 120, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 1171, size 292, pts 160, dts
 160, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 1470, size 539, pts 200, dts
 200, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 2016, size 847, pts 240, dts
 240, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 2870, size 4145, pts 280, dts
 280, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 7022, size 399, pts 320, dts
 320, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 7428, size 810, pts 360, dts
 360, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 8245, size 1769, pts 400, dts
 400, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 10021, size 1635, pts 440, dts
 440, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 11663, size 1947, pts 480, dts
 480, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 13617, size 4144, pts 520, dts
 520, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 17768, size 2105, pts 560, dts
 560, duration 40, flags 0
 [webm @ 02f83900] Starting new cluster at offset 19880 bytes, pts 600
 [webm @ 02f83900] Writing block at offset 19896, size 7401, pts 600, dts
 600, duration 40, flags 128
 [webm @ 02f83900] Writing block at offset 27304, size 2465, pts 640, dts
 640, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 29776, size 2605, pts 680, dts
 680, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 32388, size 3161, pts 720, dts
 720, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 35556, size 2529, pts 760, dts
 760, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 38092, size 3598, pts 800, dts
 800, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 41697, size 4147, pts 840, dts
 840, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 45851, size 4094, pts 880, dts
 880, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 49952, size 3159, pts 920, dts
 920, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 53118, size 2985, pts 960, dts
 960, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 56110, size 2688, pts 1000, dts
 1000, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 58805, size 2804, pts 1040, dts
 1040, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 61616, size 2931, pts 1080, dts
 1080, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 64554, size 2523, pts 1120, dts
 1120, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 67084, size 2861, pts 1160, dts
 1160, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 69952, size 2620, pts 1200, dts
 1200, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 72579, size 2913, pts 1240, dts
 1240, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 75499, size 2433, pts 1280, dts
 1280, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 77939, size 2761, pts 1320, dts
 1320, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 80707, size 2488, pts 1360, dts
 1360, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 83202, size 2675, pts 1400, dts
 1400, duration 40, flags 0
 frame=  795 fps= 59 q=0.0 size=    3597kB time=00:00:31.80 bitrate=
 926.6kbits/s
 Writing block at offset 3714404, size 5202, pts 31800, dts 31800, duration
 40, flags 0
 [webm @ 02f83900] Writing block at offset 3719613, size 5032, pts 31840,
 dts 31840, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3724652, size 5296, pts 31880,
 dts 31880, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3729955, size 5050, pts 31920,
 dts 31920, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3735012, size 7255, pts 31960,
 dts 31960, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3742274, size 4764, pts 32000,
 dts 32000, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3747045, size 4540, pts 32040,
 dts 32040, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3751592, size 7265, pts 32080,
 dts 32080, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3758864, size 5806, pts 32120,
 dts 32120, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3764677, size 5197, pts 32160,
 dts 32160, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3769881, size 4553, pts 32200,
 dts 32200, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3774441, size 4108, pts 32240,
 dts 32240, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3778556, size 3996, pts 32280,
 dts 32280, duration 40, flags 0
 [webm @ 02f83900] Starting new cluster at offset 3782559 bytes, pts 32320
 [webm @ 02f83900] Writing block at offset 3782575, size 4146, pts 32320,
 dts 32320, duration 40, flags 128
 [webm @ 02f83900] Writing block at offset 3786728, size 2114, pts 32360,
 dts 32360, duration 40, flags 0
 [output stream 0:0 @ 00253880] EOF on sink link output stream 0:0:default.
 [webm @ 02f83900] Writing block at offset 3788849, size 2338, pts 32400,
 dts 32400, duration 40, flags 0
 [webm @ 02f83900] Writing block at offset 3791194, size 355, pts 32440,
 dts 32440, duration 40, flags 0
 No more output streams to write to, finishing.
 end duration = 32480
 frame=  812 fps= 59 q=0.0 Lsize=    3703kB time=00:00:32.48 bitrate=
 934.0kbits/s

 video:3696kB audio:0kB subtitle:0 global headers:0kB muxing overhead
 0.184783%
 [AVIOContext @ 00257f40] Statistics: 2165175 bytes read, 0 seeks

 }}}



 > You could also test older Zeranoe builds if you want to help:
 http://ffmpeg.zeranoe.com/builds/win32/static/
 The build right after 1.2 fails (ffmpeg-20130329-git-
 551f683-win32-static.7z 28-Mar-2013 21:04)

 And the html file I used to test in IE11:


 {{{
 <!DOCTYPE html>
 <html>
 <head>
   <title>WebM</title>
 </head>
 <body>
 <h2>ffmpeg-20130329-git-551f683-win32-static.7z 28-Mar-2013 21:04</h2>
 <video controls src="file:///C:/bbb_broken.webm"></video>
 <h2>ffmpeg-1.2-win32-static.7z                  27-Mar-2013 23:4</h2>
 <video controls src="file:///C:/bbb_working.webm"></video>
 </body>
 </html>
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/3583#comment:9>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list