Opened 3 years ago

Closed 3 years ago

#2582 closed defect (needs_more_info)

buffer underflows encoding HD video to ntsc-dvd

Reported by: SullaFelix Owned by:
Priority: normal Component: undetermined
Version: unspecified Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug: Since upgrading to v1.0.5 (and now 1.0.6) I've been getting hundreds of buffer underflows converting my HD video to DVD format, specifically NTSC format. I don't do anything special to the video to encode them and even video I've successfully encoded before are giving underflows when before they encoded cleanly.

How to reproduce:

% ffmpeg -i input -target ntsc-dvd output

ffmpeg version 1.0.6 Copyright (c) 2000-2013 the FFmpeg developers
  built on May 12 2013 19:17:16 with gcc 4.7.2 (GCC) 20121109 (Red Hat 4.7.2-8)
  configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' --enable-bzlib --disable-crystalhd --enable-frei0r --enable-gnutls --enable-libass --enable-libcdio --enable-libcelt --enable-libdc1394 --disable-indev=jack --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-openal --enable-libopencv --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab --enable-avfilter --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect
  libavutil      51. 73.101 / 51. 73.101
  libavcodec     54. 59.100 / 54. 59.100
  libavformat    54. 29.104 / 54. 29.104
  libavdevice    54.  2.101 / 54.  2.101
  libavfilter     3. 17.100 /  3. 17.100
  libswscale      2.  1.101 /  2.  1.101
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100


Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.

Attachments (2)

FFMPEG.noerr.txt (2.6 KB) - added by SullaFelix 3 years ago.
clean encoding setting the video buffer to 0k
FFMPEG.underflow.txt (55.6 KB) - added by SullaFelix 3 years ago.
same file with standard ffmpeg command line, video buffer not changed.

Download all attachments as: .zip

Change History (7)

Changed 3 years ago by SullaFelix

clean encoding setting the video buffer to 0k

Changed 3 years ago by SullaFelix

same file with standard ffmpeg command line, video buffer not changed.

comment:1 Changed 3 years ago by SullaFelix

  • Summary changed from buffer underflows ecoding HD video to ntsc-dvd to buffer underflows encoding HD video to ntsc-dvd

Additional info I left out of the original ticket. I can get a clean encode of the file ONLY if I set the video buffer (using -b:v) to 0k.

comment:2 follow-up: Changed 3 years ago by cehoyos

Please test current git head.

comment:3 in reply to: ↑ 2 Changed 3 years ago by SullaFelix

Replying to cehoyos:

Please test current git head.

It appears to work much better, however, I can't verify that the version I built has the same compile options as the 1.0.6 version that Fedora 18 has. This is the configure line I used:

./configure --libdir=/usr/lib64 --arch=x86_64 --optflags='-02 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' --enable-bzlib --disable-crystalhd --enable-frei0r --enable-gnutls --enable-libass --enable-libcdio --enable-libcelt --enable-libdc1394 --disable-indev=jack --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-openal --enable-libopencv --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab --enable-avfilter --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect

However, I get different output when viewing version information on mine:

[markh@augustus ffmpeg]$ ./ffmpeg -version
ffmpeg version N-53202-g85e8a11
built on May 17 2013 10:44:54 with gcc 4.7.2 (GCC) 20121109 (Red Hat 4.7.2-8)
configuration: --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic'
libavutil 52. 33.100 / 52. 33.100
libavcodec 55. 10.100 / 55. 10.100
libavformat 55. 7.100 / 55. 7.100
libavdevice 55. 0.100 / 55. 0.100
libavfilter 3. 68.101 / 3. 68.101
libswscale 2. 3.100 / 2. 3.100
libswresample 0. 17.102 / 0. 17.102

Compared to the Fedora version:

ffmpeg version 1.0.6 Copyright (c) 2000-2013 the FFmpeg developers

built on May 12 2013 19:17:16 with gcc 4.7.2 (GCC) 20121109 (Red Hat 4.7.2-8)
configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' --enable-bzlib --disable-crystalhd --enable-frei0r --enable-gnutls --enable-libass --enable-libcdio --enable-libcelt --enable-libdc1394 --disable-indev=jack --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-openal --enable-libopencv --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab --enable-avfilter --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect
libavutil 51. 73.101 / 51. 73.101
libavcodec 54. 59.100 / 54. 59.100
libavformat 54. 29.104 / 54. 29.104
libavdevice 54. 2.101 / 54. 2.101
libavfilter 3. 17.100 / 3. 17.100
libswscale 2. 1.101 / 2. 1.101
libswresample 0. 15.100 / 0. 15.100
libpostproc 52. 0.100 / 52. 0.100

I am not a n00b at building and compiling source, but I've never compiled ffmpeg before so I'm not sure if I'm missing something. I want to make sure that the problem is in ffmpeg and not in a compile option from the Fedora guys.

comment:4 Changed 3 years ago by cehoyos

Please always start with ./configure && make then add external libraries if you need them.
Some of the configure options you used look broken to me.

Could you elaborate if there is an issue with current git head? Or with 1.2? If not, I will close this ticket.
If it is really a regression, it could be fixed, but this would at least require a reproducible test case (that I so far do not see).

Version 0, edited 3 years ago by cehoyos (next)

comment:5 Changed 3 years ago by cehoyos

  • Resolution set to needs_more_info
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.