[FFmpeg-user] UDP transport stream unexpected buffer overrun

Massimo Battistel battistel at gmail.com
Tue Jul 12 12:37:24 EEST 2016


Hi,
I've recently upgraded ffmpeg tools from 2015/02/03 Zeranoe build to 2016/07/12
Zeranoe build.

I've experienced an issue when reading from udp-mpegts input: It takes a
lot of time to complete parsing and it exits with an unexpected error. With
old version everything is fine.

ffmpeg -i udp://127.0.0.1:1800

ffmpeg version N-80974-gdf1dc52 Copyright (c) 2000-2016 the FFmpeg
developers
  built with gcc 5.4.0 (GCC)
  configuration: --disable-static --enable-shared --enable-gpl
--enable-version3 --disable-w32threads --enable-dxva2 --enable-libmfx
--enable-nvenc --enable-avisynth --enable-bzlib --enable-libebur128
--enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv
--enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca
--enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc
--enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus
--enable-librtmp --enable-libschroedinger --enable-libsnappy
--enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame
--enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis
--enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264
--enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg
--enable-lzma --enable-decklink --enable-zlib
  libavutil      55. 28.100 / 55. 28.100
  libavcodec     57. 50.100 / 57. 50.100
  libavformat    57. 41.100 / 57. 41.100
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 47.100 /  6. 47.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
[mpeg2video @ 00ee6f60] Invalid frame dimensions 0x0.
    Last message repeated 19 times
Input #0, mpegts, from 'udp://127.0.0.1:1800':
  Duration: N/A, start: 3163.664000, bitrate: N/A
  Program 1
    Metadata:
      service_name    : Service01
      service_provider: FFmpeg
    Stream #0:0[0x64]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002),
yuv420p(tv), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0xc8]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz,
stereo, s16p, 128 kb/s
At least one output file must be specified
[udp @ 0104efa0] Circular buffer overrun. To avoid, increase fifo_size URL
option. To survive in such case, use overrun_nonfatal option

Before showing the last message (Circular buffer overrun), ffmpeg hangs for
about 17-18 seconds.

Old ffmpeg version exits just after "At least one output file must be
specified" (as expected).


Stream source was never changed and it is generated with ffmpeg this way:

ffmpeg -re -i source -vcodec mpeg2video -pix_fmt yuv420p -flags +ildct+ilme
-top 1
-aspect 16:9 -b:v 2000k -trellis 2 -g 25 -bf 2 -acodec mp2 -ac 2 -ar 48000
-b:a 128k -f mpegts -flush_packets 0 "udp://127.0.0.1:1800?pkt_size=1316"


Thanks,
MB


More information about the ffmpeg-user mailing list