[FFmpeg-trac] #8232(ffmpeg:new): decklink -> nvenc -> mpegts crush
FFmpeg
trac at avcodec.org
Thu Oct 10 12:36:30 EEST 2019
#8232: decklink -> nvenc -> mpegts crush
--------------------------------+------------------------------------
Reporter: karcun | Type: defect
Status: new | Priority: critical
Component: ffmpeg | Version: 4.2
Keywords: nvenc | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
--------------------------------+------------------------------------
Summary of the bug:
Hello!
Ubuntu 18.04.3
ffmpeg 4.2
Driver Version: 435.21
CUDA Version: 10.1
Nvenc version 9.1
Capture Device: DeckLink Mini Recorder 4K
GPU: NVidia GeForce GTX 1660
i need stream input video to mpegts udp:
How to reproduce:
{{{
% ffmpeg \
-use_wallclock_as_timestamps 1 \
-loglevel debug \
-hwaccel nvdec \
-threads 8 -thread_type frame \
-f decklink \
-video_pts wallclock \
-audio_pts wallclock \
-draw_bars true \
-raw_format yuv422p10 \
-channels 2 \
-i 'DeckLink Mini Recorder 4K' \
\
-c:v h264_nvenc \
-vsync 0 \
-preset:v slow \
-profile:v high \
-level:v 4.2 \
-rc cbr_hq \
-rc-lookahead 32 \
-surfaces 64 \
-weighted_pred 1 \
-pix_fmt yuv420p \
-b:v 4.8M \
-cq 17 \
-qmin 1 \
-qmax 18 \
-g 12 \
-refs 2 \
\
-c:a libfdk_aac \
-profile:a aac_he_v2 \
-ac 2 \
-ar 48000 \
-af 'aresample=async=1' \
\
-f mpegts
'udp://@239.0.0.1:2266?pkt_size=1316&fifo_size=1000000&buffer_size=100000000&overrun_nonfatal=1'
ffmpeg version 4.2.git-3 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
configuration: --prefix=/tmp/ffmpeg_build --extra-version=3
--toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu
--incdir=/usr/include/x86_64-linux-gnu --extra-cflags=-I/tm
p/ffmpeg_build/include --extra-ldflags=-L/tmp/ffmpeg_build/lib --enable-
gpl --disable-stripping --disable-doc --disable-htmlpages --disable-
manpages --disable-podpages --disable
-txtpages --enable-avresample --enable-avisynth --enable-gnutls --enable-
ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-
libcaca --enable-libfontconfig --ena
ble-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm
--enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-
libpulse --enable-librsvg --enable-libshin
e --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh
--enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx
--enable-libwavpack --enable-li
bwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-omx
--enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-
libdrm --enable-frei0r --enable-l
ibx264 --enable-shared --enable-decklink --extra-
cflags=-I/home/karcun/src/BMSDK11.3 --extra-
ldflags=-L/home/karcun/src/BMSDK11.3 --enable-nonfree --extra-ldflags
='-static-libst
dc++ -static-libgcc' --enable-static --enable-pic --enable-libfdk-aac
--enable-cross-compile --pkg-config=pkg-config --enable-libnpp --enable-
cuda-nvcc --enable-cuvid --enable-n
venc --enable-libopenmpt --enable-libxml2 --enable-libzmq --enable-opencl
--arch=x86_64
}}}
after some little time of encoding, it crushes with one of reasons:
{{{
frame=17251 fps= 25 q=26.0 size= 420858kB time=00:11:29.95
bitrate=4997.0kbits/s speed= 1x
frame=17264 fps= 25 q=26.0 size= 421170kB time=00:11:30.50
bitrate=4996.7kbits/s speed= 1x
[decklink @ 0x55dc42b4ac00] Frame received (#17275) - Valid (5529600B) -
QSize 0.000000MB
frame=17277 fps= 25 q=26.0 size= 421484kB time=00:11:31.01
bitrate=4996.7kbits/s speed= 1x
[decklink @ 0x55dc42b4ac00] Frame received (#17300) - Valid (5529600B) -
QSize 63.378754MB
[decklink @ 0x55dc42b4ac00] Frame received (#17325) - Valid (5529600B) -
QSize 195.402374MB
[decklink @ 0x55dc42b4ac00] Frame received (#17350) - Valid (5529600B) -
QSize 327.425995MB
[decklink @ 0x55dc42b4ac00] Frame received (#17375) - Valid (5529600B) -
QSize 459.449615MB
[decklink @ 0x55dc42b4ac00] Frame received (#17400) - Valid (5529600B) -
QSize 591.473236MB
[decklink @ 0x55dc42b4ac00] Frame received (#17425) - Valid (5529600B) -
QSize 723.496857MB
[decklink @ 0x55dc42b4ac00] Frame received (#17450) - Valid (5529600B) -
QSize 855.520477MB
[decklink @ 0x55dc42b4ac00] Frame received (#17475) - Valid (5529600B) -
QSize 987.544098MB
[decklink @ 0x55dc42b4ac00] Decklink input buffer overrun!
Last message repeated 36 times
[decklink @ 0x55dc42b4ac00] Frame received (#17500) - Valid (5529600B) -
QSize 1024.503296MB
[decklink @ 0x55dc42b4ac00] Decklink input buffer overrun!
Last message repeated 49 times
[decklink @ 0x55dc42b4ac00] Frame received (#17525) - Valid (5529600B) -
QSize 1024.503296MB
[decklink @ 0x55dc42b4ac00] Decklink input buffer overrun!
Last message repeated 49 times
[decklink @ 0x55dc42b4ac00] Frame received (#17550) - Valid (5529600B) -
QSize 1024.503296MB
[decklink @ 0x55dc42b4ac00] Decklink input buffer overrun!
Last message repeated 49 times
}}}
and ffmpeg stay alive with repeating:
{{{
[decklink @ 0x55dc42b4ac00] Decklink input buffer overrun!
[decklink @ 0x55dc42b4ac00] Frame received (#{frame_number}) - Valid
(5529600B) - QSize 1024.503296MB
}}}
syslog:
{{{
kernel: [ 1240.080358] NVRM: GPU at PCI:0000:01:00: GPU-
6caba61c-b997-efe4-1f42-012b974eadb5
kernel: [ 1240.080362] NVRM: GPU Board Serial Number:
kernel: [ 1240.080369] NVRM: Xid (PCI:0000:01:00): 31, pid=2196, Ch
00000038, intr 00000000. MMU Fault: ENGINE NVENC0 HUBCLIENT_NVENC0 faulted
@ 0x0_00001000. Fault is of type FAULT_PDE ACCESS_TYPE_VIRT_READ
}}}
or:
{{{
[h264_nvenc @ 0x5612f414e040] Failed locking bitstream buffer: invalid
param (8)
Video encoding failed
[libfdk_aac @ 0x5612f416b480] 4 frames left in the queue on closing
Conversion failed!
}}}
it`s bug or i do it wrong?
--
Ticket URL: <https://trac.ffmpeg.org/ticket/8232>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list