[FFmpeg-trac] #1724(undetermined:new): Remuxing MKV to MPEG-TS causes video to freeze with latest builds

FFmpeg trac at avcodec.org
Tue Sep 11 08:41:54 CEST 2012


#1724: Remuxing MKV to MPEG-TS causes video to freeze with latest builds
-------------------------------------+-------------------------------------
             Reporter:  dvlpr        |                    Owner:
                 Type:  defect       |                   Status:  new
             Priority:  normal       |                Component:
              Version:  unspecified  |  undetermined
             Keywords:               |               Resolution:
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------
Description changed by cehoyos:

Old description:

> Remuxing an MKV with h264 video to an MPEG-TS (video only, audio doesn't
> matter) causes the video to freeze with latest FFmpeg builds.
>
> The latest working build I have is N-43161-g31d8261 - a few days, or a
> couple of weeks after that, this issue came up.
>
> It happens on my Sony Bravia TV, playing the same file remuxed using two
> different FFmpeg versions. The first output works, the second one
> freezes.
>
> Works:
>
> ffmpeg.exe -i "E:\remux_frozen_video_sample.mkv"  -y  -c:v copy  -map 0:0
> -bsf h264_mp4toannexb   -c:a ac3_fixed  -b:a 640000  -ar 48000  -ac 6
> -map 0:1  -f mpegts   -threads 0 -crf 23 "E:\out.mts"
> ffmpeg version N-43161-g31d8261 Copyright (c) 2000-2012 the FFmpeg
> developers
>   built on Aug  3 2012 12:09:29 with gcc 4.7.1 (GCC)
>   configuration: --prefix=/home/dennis/out --disable-shared --enable-
> static --cross-prefix=i686-w64-mingw32- --arch=x86 --target-os=mingw32
> --enable-cross-compile --disable-ffprobe --disable-ffplay --disable-
> ffserver --pkg-config=pkg-config --enable-gpl --enable-version3
> --disable-w32threads --enable-memalign-hack --enable-zlib --disable-
> postproc --enable-libx264 --extra-libs='-lx264 -lpthread' --enable-
> runtime-cpudetect --extra-cflags=-I/home/dennis/cc/include --extra-
> ldflags=-L/home/dennis/cc/lib --enable-libmp3lame
>   libavutil      51. 66.100 / 51. 66.100
>   libavcodec     54. 48.100 / 54. 48.100
>   libavformat    54. 22.100 / 54. 22.100
>   libavdevice    54.  2.100 / 54.  2.100
>   libavfilter     3.  5.101 /  3.  5.101
>   libswscale      2.  1.100 /  2.  1.100
>   libswresample   0. 15.100 /  0. 15.100
> Input #0, matroska,webm, from 'E:\remux_frozen_video_sample.mkv':
>   Metadata:
>     creation_time   : 2007-11-13 23:05:10
>   Duration: 01:56:35.99, start: 0.000000, bitrate: 46 kb/s
>     Stream #0:0(eng): Video: h264 (High), yuv420p, 1280x536, SAR 1:1 DAR
> 160:67, 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
>     Stream #0:1(eng): Audio: dts (DTS), 48000 Hz, 5.1(side), s16, 1536
> kb/s (default)
>     Stream #0:2(eng): Subtitle: ssa (default)
>     Stream #0:3(fre): Subtitle: ssa
>     Stream #0:4(rum): Subtitle: ssa
>     Stream #0:5(dut): Subtitle: ssa
>     Stream #0:6(spa): Subtitle: ssa
>     Stream #0:7: Attachment: ttf
>     Metadata:
>       filename        : CronosPro-Bold.ttf
>       mimetype        : application/x-truetype-font
>     Stream #0:8: Attachment: ttf
>     Metadata:
>       filename        : CronosPro-Semibold.ttf
>       mimetype        : application/x-truetype-font
>     Stream #0:9: Attachment: ttf
>     Metadata:
>       filename        : CronosPro-SemiboldIt.ttf
>       mimetype        : application/x-truetype-font
> [mpegts @ 03fdb700] muxrate VBR, pcr every 2 pkts, sdt every 200, pat/pmt
> every 40 pkts
> Output #0, mpegts, to 'E:\out.mts':
>   Metadata:
>     encoder         : Lavf54.22.100
>     Stream #0:0(eng): Video: h264, yuv420p, 1280x536 [SAR 1:1 DAR
> 160:67], q=2-31, 23.98 fps, 90k tbn, 23.98 tbc (default)
>     Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1, s16, 640 kb/s (default)
> Stream mapping:
>   Stream #0:0 -> #0:0 (copy)
>   Stream #0:1 -> #0:1 (dca -> ac3_fixed)
> Press [q] to stop, [?] for help
> frame=  326 fps=0.0 q=-1.0 size=    5088kB time=00:00:13.51
> bitrate=3084.5kbits/s
> frame=  567 fps=545 q=-1.0 size=    8152kB time=00:00:23.56
> bitrate=2833.9kbits/s
> frame=  902 fps=586 q=-1.0 size=   11896kB time=00:00:37.53
> bitrate=2596.2kbits/s
> frame= 1317 fps=646 q=-1.0 size=   16148kB time=00:00:54.84
> bitrate=2411.9kbits/s
> frame= 1742 fps=686 q=-1.0 size=   19931kB time=00:01:12.57
> bitrate=2249.8kbits/s
> frame= 2140 fps=704 q=-1.0 size=   27172kB time=00:01:29.17
> bitrate=2496.2kbits/s
> frame= 2286 fps=707 q=-1.0 size=   32077kB time=00:01:35.26
> bitrate=2758.4kbits/s
>
> video:21970kB audio:7458kB subtitle:0 global headers:0kB muxing overhead
> 9.001473%
>

> Freezes:
>
> ffmpeg.exe -i "E:\remux_frozen_video_sample.mkv"  -y  -c:v copy  -map 0:0
> -bsf h264_mp4toannexb   -c:a ac3_fixed  -b:a 640000  -ar 48000  -ac 6
> -map 0:1  -f mpegts   -threads 0 -crf 23 "E:\out.mts"
> ffmpeg version N-44287-gdd081f9 Copyright (c) 2000-2012 the FFmpeg
> developers
>   built on Sep  9 2012 08:51:01 with gcc 4.7.1 (GCC)
>   configuration: --prefix=/home/dennis/out --disable-shared --enable-
> static --cross-prefix=i686-w64-mingw32- --arch=x86 --target-os=mingw32
> --enable-cross-compile --disable-ffprobe --disable-ffplay --disable-
> ffserver --pkg-config=pkg-config --enable-gpl --enable-version3
> --disable-pthreads --enable-memalign-hack --enable-zlib --disable-
> postproc --enable-libx264 --extra-libs=-lx264 --enable-runtime-cpudetect
> --extra-cflags=-I/home/dennis/cc/include --extra-
> ldflags=-L/home/dennis/cc/lib --enable-libmp3lame
>   libavutil      51. 72.100 / 51. 72.100
>   libavcodec     54. 55.100 / 54. 55.100
>   libavformat    54. 25.105 / 54. 25.105
>   libavdevice    54.  2.100 / 54.  2.100
>   libavfilter     3. 16.100 /  3. 16.100
>   libswscale      2.  1.101 /  2.  1.101
>   libswresample   0. 15.100 /  0. 15.100
> Input #0, matroska,webm, from 'E:\remux_frozen_video_sample.mkv':
>   Metadata:
>     creation_time   : 2007-11-13 23:05:10
>   Duration: 01:56:35.99, start: 0.000000, bitrate: 46 kb/s
>     Stream #0:0(eng): Video: h264 (High), yuv420p, 1280x536, SAR 1:1 DAR
> 160:67, 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
>     Stream #0:1(eng): Audio: dts (DTS), 48000 Hz, 5.1(side), s16, 1536
> kb/s (default)
>     Stream #0:2(eng): Subtitle: ssa (default)
>     Stream #0:3(fre): Subtitle: ssa
>     Stream #0:4(rum): Subtitle: ssa
>     Stream #0:5(dut): Subtitle: ssa
>     Stream #0:6(spa): Subtitle: ssa
> Codec 0x18000 is not in the full list.
>     Stream #0:7: Attachment: unknown_codec
>     Metadata:
>       filename        : CronosPro-Bold.ttf
>       mimetype        : application/x-truetype-font
> Codec 0x18000 is not in the full list.
>     Stream #0:8: Attachment: unknown_codec
>     Metadata:
>       filename        : CronosPro-Semibold.ttf
>       mimetype        : application/x-truetype-font
> Codec 0x18000 is not in the full list.
>     Stream #0:9: Attachment: unknown_codec
>     Metadata:
>       filename        : CronosPro-SemiboldIt.ttf
>       mimetype        : application/x-truetype-font
> [mpegts @ 040c61a0] muxrate VBR, pcr every 2 pkts, sdt every 200, pat/pmt
> every 40 pkts
> Output #0, mpegts, to 'E:\out.mts':
>   Metadata:
>     encoder         : Lavf54.25.105
>     Stream #0:0(eng): Video: h264, yuv420p, 1280x536 [SAR 1:1 DAR
> 160:67], q=2-31, 23.98 fps, 90k tbn, 23.98 tbc (default)
>     Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1, s16, 640 kb/s (default)
> Stream mapping:
>   Stream #0:0 -> #0:0 (copy)
>   Stream #0:1 -> #0:1 (dca -> ac3_fixed)
> Press [q] to stop, [?] for help
> frame=  129 fps=0.0 q=-1.0 size=    2020kB time=00:00:05.43
> bitrate=3045.3kbits/s
> frame=  263 fps=263 q=-1.0 size=    4058kB time=00:00:11.06
> bitrate=3003.7kbits/s
> frame=  433 fps=288 q=-1.0 size=    6288kB time=00:00:18.04
> bitrate=2855.2kbits/s
> frame=  627 fps=312 q=-1.0 size=    8766kB time=00:00:26.26
> bitrate=2734.0kbits/s
> frame=  874 fps=349 q=-1.0 size=   11732kB time=00:00:36.50
> bitrate=2632.9kbits/s
> frame= 1106 fps=365 q=-1.0 size=   13889kB time=00:00:46.10
> bitrate=2467.8kbits/s
> frame= 1341 fps=380 q=-1.0 size=   16160kB time=00:00:56.02
> bitrate=2362.8kbits/s
> frame= 1537 fps=381 q=-1.0 size=   18442kB time=00:01:04.11
> bitrate=2356.3kbits/s
> frame= 1778 fps=390 q=-1.0 size=   20276kB time=00:01:14.16
> bitrate=2239.5kbits/s
> frame= 2017 fps=397 q=-1.0 size=   24900kB time=00:01:24.18
> bitrate=2423.0kbits/s
> frame= 2211 fps=391 q=-1.0 size=   28801kB time=00:01:32.21
> bitrate=2558.5kbits/s
> frame= 2286 fps=392 q=-1.0 size=   32078kB time=00:01:35.44
> bitrate=2753.2kbits/s
>
> video:21970kB audio:7458kB subtitle:0 global headers:0kB muxing overhead
> 9.004592%
>

> I've tried both w32threads and pthreads without luck.
>
> I'm uploading a sample "remux_frozen_video_sample.*" to the ftp.

New description:

 Remuxing an MKV with h264 video to an MPEG-TS (video only, audio doesn't
 matter) causes the video to freeze with latest FFmpeg builds.

 The latest working build I have is N-43161-g31d8261 - a few days, or a
 couple of weeks after that, this issue came up.

 It happens on my Sony Bravia TV, playing the same file remuxed using two
 different FFmpeg versions. The first output works, the second one freezes.

 Works:
 {{{
 ffmpeg.exe -i "E:\remux_frozen_video_sample.mkv"  -y  -c:v copy  -map 0:0
 -bsf h264_mp4toannexb   -c:a ac3_fixed  -b:a 640000  -ar 48000  -ac 6
 -map 0:1  -f mpegts   -threads 0 -crf 23 "E:\out.mts"
 ffmpeg version N-43161-g31d8261 Copyright (c) 2000-2012 the FFmpeg
 developers
   built on Aug  3 2012 12:09:29 with gcc 4.7.1 (GCC)
   configuration: --prefix=/home/dennis/out --disable-shared --enable-
 static --cross-prefix=i686-w64-mingw32- --arch=x86 --target-os=mingw32
 --enable-cross-compile --disable-ffprobe --disable-ffplay --disable-
 ffserver --pkg-config=pkg-config --enable-gpl --enable-version3 --disable-
 w32threads --enable-memalign-hack --enable-zlib --disable-postproc
 --enable-libx264 --extra-libs='-lx264 -lpthread' --enable-runtime-
 cpudetect --extra-cflags=-I/home/dennis/cc/include --extra-
 ldflags=-L/home/dennis/cc/lib --enable-libmp3lame
   libavutil      51. 66.100 / 51. 66.100
   libavcodec     54. 48.100 / 54. 48.100
   libavformat    54. 22.100 / 54. 22.100
   libavdevice    54.  2.100 / 54.  2.100
   libavfilter     3.  5.101 /  3.  5.101
   libswscale      2.  1.100 /  2.  1.100
   libswresample   0. 15.100 /  0. 15.100
 Input #0, matroska,webm, from 'E:\remux_frozen_video_sample.mkv':
   Metadata:
     creation_time   : 2007-11-13 23:05:10
   Duration: 01:56:35.99, start: 0.000000, bitrate: 46 kb/s
     Stream #0:0(eng): Video: h264 (High), yuv420p, 1280x536, SAR 1:1 DAR
 160:67, 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
     Stream #0:1(eng): Audio: dts (DTS), 48000 Hz, 5.1(side), s16, 1536
 kb/s (default)
     Stream #0:2(eng): Subtitle: ssa (default)
     Stream #0:3(fre): Subtitle: ssa
     Stream #0:4(rum): Subtitle: ssa
     Stream #0:5(dut): Subtitle: ssa
     Stream #0:6(spa): Subtitle: ssa
     Stream #0:7: Attachment: ttf
     Metadata:
       filename        : CronosPro-Bold.ttf
       mimetype        : application/x-truetype-font
     Stream #0:8: Attachment: ttf
     Metadata:
       filename        : CronosPro-Semibold.ttf
       mimetype        : application/x-truetype-font
     Stream #0:9: Attachment: ttf
     Metadata:
       filename        : CronosPro-SemiboldIt.ttf
       mimetype        : application/x-truetype-font
 [mpegts @ 03fdb700] muxrate VBR, pcr every 2 pkts, sdt every 200, pat/pmt
 every 40 pkts
 Output #0, mpegts, to 'E:\out.mts':
   Metadata:
     encoder         : Lavf54.22.100
     Stream #0:0(eng): Video: h264, yuv420p, 1280x536 [SAR 1:1 DAR 160:67],
 q=2-31, 23.98 fps, 90k tbn, 23.98 tbc (default)
     Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1, s16, 640 kb/s (default)
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
   Stream #0:1 -> #0:1 (dca -> ac3_fixed)
 Press [q] to stop, [?] for help
 frame=  326 fps=0.0 q=-1.0 size=    5088kB time=00:00:13.51
 bitrate=3084.5kbits/s
 frame=  567 fps=545 q=-1.0 size=    8152kB time=00:00:23.56
 bitrate=2833.9kbits/s
 frame=  902 fps=586 q=-1.0 size=   11896kB time=00:00:37.53
 bitrate=2596.2kbits/s
 frame= 1317 fps=646 q=-1.0 size=   16148kB time=00:00:54.84
 bitrate=2411.9kbits/s
 frame= 1742 fps=686 q=-1.0 size=   19931kB time=00:01:12.57
 bitrate=2249.8kbits/s
 frame= 2140 fps=704 q=-1.0 size=   27172kB time=00:01:29.17
 bitrate=2496.2kbits/s
 frame= 2286 fps=707 q=-1.0 size=   32077kB time=00:01:35.26
 bitrate=2758.4kbits/s

 video:21970kB audio:7458kB subtitle:0 global headers:0kB muxing overhead
 9.001473%
 }}}
 Freezes:
 {{{
 ffmpeg.exe -i "E:\remux_frozen_video_sample.mkv"  -y  -c:v copy  -map 0:0
 -bsf h264_mp4toannexb   -c:a ac3_fixed  -b:a 640000  -ar 48000  -ac 6
 -map 0:1  -f mpegts   -threads 0 -crf 23 "E:\out.mts"
 ffmpeg version N-44287-gdd081f9 Copyright (c) 2000-2012 the FFmpeg
 developers
   built on Sep  9 2012 08:51:01 with gcc 4.7.1 (GCC)
   configuration: --prefix=/home/dennis/out --disable-shared --enable-
 static --cross-prefix=i686-w64-mingw32- --arch=x86 --target-os=mingw32
 --enable-cross-compile --disable-ffprobe --disable-ffplay --disable-
 ffserver --pkg-config=pkg-config --enable-gpl --enable-version3 --disable-
 pthreads --enable-memalign-hack --enable-zlib --disable-postproc --enable-
 libx264 --extra-libs=-lx264 --enable-runtime-cpudetect --extra-
 cflags=-I/home/dennis/cc/include --extra-ldflags=-L/home/dennis/cc/lib
 --enable-libmp3lame
   libavutil      51. 72.100 / 51. 72.100
   libavcodec     54. 55.100 / 54. 55.100
   libavformat    54. 25.105 / 54. 25.105
   libavdevice    54.  2.100 / 54.  2.100
   libavfilter     3. 16.100 /  3. 16.100
   libswscale      2.  1.101 /  2.  1.101
   libswresample   0. 15.100 /  0. 15.100
 Input #0, matroska,webm, from 'E:\remux_frozen_video_sample.mkv':
   Metadata:
     creation_time   : 2007-11-13 23:05:10
   Duration: 01:56:35.99, start: 0.000000, bitrate: 46 kb/s
     Stream #0:0(eng): Video: h264 (High), yuv420p, 1280x536, SAR 1:1 DAR
 160:67, 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
     Stream #0:1(eng): Audio: dts (DTS), 48000 Hz, 5.1(side), s16, 1536
 kb/s (default)
     Stream #0:2(eng): Subtitle: ssa (default)
     Stream #0:3(fre): Subtitle: ssa
     Stream #0:4(rum): Subtitle: ssa
     Stream #0:5(dut): Subtitle: ssa
     Stream #0:6(spa): Subtitle: ssa
 Codec 0x18000 is not in the full list.
     Stream #0:7: Attachment: unknown_codec
     Metadata:
       filename        : CronosPro-Bold.ttf
       mimetype        : application/x-truetype-font
 Codec 0x18000 is not in the full list.
     Stream #0:8: Attachment: unknown_codec
     Metadata:
       filename        : CronosPro-Semibold.ttf
       mimetype        : application/x-truetype-font
 Codec 0x18000 is not in the full list.
     Stream #0:9: Attachment: unknown_codec
     Metadata:
       filename        : CronosPro-SemiboldIt.ttf
       mimetype        : application/x-truetype-font
 [mpegts @ 040c61a0] muxrate VBR, pcr every 2 pkts, sdt every 200, pat/pmt
 every 40 pkts
 Output #0, mpegts, to 'E:\out.mts':
   Metadata:
     encoder         : Lavf54.25.105
     Stream #0:0(eng): Video: h264, yuv420p, 1280x536 [SAR 1:1 DAR 160:67],
 q=2-31, 23.98 fps, 90k tbn, 23.98 tbc (default)
     Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1, s16, 640 kb/s (default)
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
   Stream #0:1 -> #0:1 (dca -> ac3_fixed)
 Press [q] to stop, [?] for help
 frame=  129 fps=0.0 q=-1.0 size=    2020kB time=00:00:05.43
 bitrate=3045.3kbits/s
 frame=  263 fps=263 q=-1.0 size=    4058kB time=00:00:11.06
 bitrate=3003.7kbits/s
 frame=  433 fps=288 q=-1.0 size=    6288kB time=00:00:18.04
 bitrate=2855.2kbits/s
 frame=  627 fps=312 q=-1.0 size=    8766kB time=00:00:26.26
 bitrate=2734.0kbits/s
 frame=  874 fps=349 q=-1.0 size=   11732kB time=00:00:36.50
 bitrate=2632.9kbits/s
 frame= 1106 fps=365 q=-1.0 size=   13889kB time=00:00:46.10
 bitrate=2467.8kbits/s
 frame= 1341 fps=380 q=-1.0 size=   16160kB time=00:00:56.02
 bitrate=2362.8kbits/s
 frame= 1537 fps=381 q=-1.0 size=   18442kB time=00:01:04.11
 bitrate=2356.3kbits/s
 frame= 1778 fps=390 q=-1.0 size=   20276kB time=00:01:14.16
 bitrate=2239.5kbits/s
 frame= 2017 fps=397 q=-1.0 size=   24900kB time=00:01:24.18
 bitrate=2423.0kbits/s
 frame= 2211 fps=391 q=-1.0 size=   28801kB time=00:01:32.21
 bitrate=2558.5kbits/s
 frame= 2286 fps=392 q=-1.0 size=   32078kB time=00:01:35.44
 bitrate=2753.2kbits/s

 video:21970kB audio:7458kB subtitle:0 global headers:0kB muxing overhead
 9.004592%
 }}}
 I've tried both w32threads and pthreads without luck.

 I'm uploading a sample "remux_frozen_video_sample.*" to the ftp.

--

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1724#comment:3>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list