Opened 9 years ago

Closed 9 years ago

Last modified 4 years ago

#4335 closed defect (fixed)

mpeg fifo assert while remuxing

Reported by: Clément Bœsch Owned by:
Priority: important Component: avformat
Version: git-master Keywords: mpegps crash abort
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Get a long DVD input (might be a bit slow):

% ./ffmpeg -f lavfi -i testsrc=s=pal -t 00:30:00 -target pal-dvd -y test.mpg
ffmpeg version N-70272-g3e0ae19 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.2 (GCC) 20150204 (prerelease)
  configuration: --prefix=/home/ux/local --enable-gpl --enable-nonfree --enable-libx264 --enable-libfaac --enable-libvorbis --enable-libfontconfig --enable-libfreetype --enable-libass --enable-libmp3lame --samples=/home/ux/fate-samples --assert-level=2
  libavutil      54. 19.100 / 54. 19.100
  libavcodec     56. 26.100 / 56. 26.100
  libavformat    56. 23.105 / 56. 23.105
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 11.102 /  5. 11.102
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
Input #0, lavfi, from 'testsrc=s=pal':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 720x576 [SAR 1:1 DAR 5:4], 25 tbr, 25 tbn, 25 tbc
Output #0, dvd, to 'test.mpg':
  Metadata:
    encoder         : Lavf56.23.105
    Stream #0:0: Video: mpeg2video, yuv420p, 720x576 [SAR 1:1 DAR 5:4], q=2-31, 6000 kb/s, 25 fps, 90k tbn, 25 tbc
    Metadata:
      encoder         : Lavc56.26.100 mpeg2video
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg2video (native))
Press [q] to stop, [?] for help
frame=45000 fps=247 q=2.0 Lsize=  208886kB time=00:29:59.96 bitrate= 950.7kbits/s    
video:197278kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 5.883934%

Remux it with DVD subs:

% ./ffmpeg -i test.mpg -i gt-en.sub -map 0:1 -map 1:0 -c copy -f mpeg -y /dev/null
ffmpeg version N-70272-g3e0ae19 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.2 (GCC) 20150204 (prerelease)
  configuration: --prefix=/home/ux/local --enable-gpl --enable-nonfree --enable-libx264 --enable-libfaac --enable-libvorbis --enable-libfontconfig --enable-libfreetype --enable-libass --enable-libmp3lame --samples=/home/ux/fate-samples --assert-level=2
  libavutil      54. 19.100 / 54. 19.100
  libavcodec     56. 26.100 / 56. 26.100
  libavformat    56. 23.105 / 56. 23.105
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 11.102 /  5. 11.102
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
[NULL @ 0x3202880] start time for stream 0 is not set in estimate_timings_from_pts
Input #0, mpeg, from 'test.mpg':
  Duration: 00:30:00.00, start: 0.540000, bitrate: 950 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv), 720x576 [SAR 1:1 DAR 5:4], max. 9000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc
Input #1, mpeg, from 'gt-en.sub':
  Duration: 01:45:07.80, start: 69.600000, bitrate: 5 kb/s
    Stream #1:0[0x20]: Subtitle: dvd_subtitle
Output #0, mpeg, to '/dev/null':
  Metadata:
    encoder         : Lavf56.23.105
    Stream #0:0: Video: mpeg2video, yuv420p, 720x576 [SAR 1:1 DAR 5:4], q=2-31, max. 9000 kb/s, 25 fps, 25 tbr, 90k tbn, 25 tbc
    Stream #0:1: Subtitle: dvd_subtitle
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #1:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
Assertion av_fifo_size(stream->fifo) == 0 failed at libavformat/mpegenc.c:1185s/s    
zsh: abort (core dumped)  ./ffmpeg -i test.mpg -i gt-en.sub -map 0:1 -map 1:0 -c copy -f mpeg -y 

Sub can be found at http://lucy.pkh.me/samples/gt-en.sub

Change History (2)

comment:1 by Michael Niedermayer, 9 years ago

Reproduced by developer: set
Resolution: fixed
Status: newclosed

comment:2 by Carl Eugen Hoyos, 4 years ago

Keywords: mpegps crash abort added; mpeg dvd dvdsub assert removed
Note: See TracTickets for help on using tickets.