ffmpeg GPU selection issue

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

ffmpeg GPU selection issue

Matthew Reus
Hello
I have ubuntu 18.04 server where i have install ffmpeg and compile sdk as
well as all requirement of NVIDIA tesla M 60 driver .


*1.Issue is whenever i define gpu , both gpu 1 and gpu2 take the process *

*2.ffmepg mostof the time shows frame drops and video buffer *

*Here is have attached all the output and script *

ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
developers
  built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
  configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static
--extra-cflags=-I/root/ffmpeg_build/include
--extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
--bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
--extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk --enable-cuda-nvcc
--enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
--extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
--enable-libass --enable-libfdk-aac --enable-vaapi --enable-libfreetype
--enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx
--enable-libx264 --enable-libx265 --enable-nonfree
  libavutil      56. 32.100 / 56. 32.100
  libavcodec     58. 55.100 / 58. 55.100
  libavformat    58. 30.100 / 58. 30.100
  libavdevice    58.  9.100 / 58.  9.100
  libavfilter     7. 58.100 /  7. 58.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options]
outfile}...


*My test script is *
*ffmpeg -hwaccel_device 1 -hwaccel auto  -i
'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
<http://224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal>' -vf
"hwupload_cuda,format=yuv420p|cuda,yadif_cuda=0:-1:0,scale_npp=-1:720" -c:v
h264_nvenc -gpu 1  -b:v 1800k -c:a aac  -aspect 16:9  -g 50 -b:a 64k -ar
44100 -ac 2 -f flv
'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream
<http://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream>'
</dev/null >/dev/null 2>/var/log/BBs1.log  &*


ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
developers
  built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
  configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static
--extra-cflags=-I/root/ffmpeg_build/include
--extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
--bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
--extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk --enable-cuda-nvcc
--enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
--extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
--enable-libass --enable-libfdk-aac --enable-vaapi --enable-libfreetype
--enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx
--enable-libx264 --enable-libx265 --enable-nonfree
  libavutil      56. 32.100 / 56. 32.100
  libavcodec     58. 55.100 / 58. 55.100
  libavformat    58. 30.100 / 58. 30.100
  libavdevice    58.  9.100 / 58.  9.100
  libavfilter     7. 58.100 /  7. 58.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
[h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
[h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
[h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
[h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
[h264 @ 0x559b7b7248c0] decode_slice_header error
[h264 @ 0x559b7b7248c0] no frame!
[h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
[h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
[h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
[h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
[h264 @ 0x559b7b7248c0] decode_slice_header error
[h264 @ 0x559b7b7248c0] no frame!
[h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
[h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
[h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
[h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
[h264 @ 0x559b7b7248c0] decode_slice_header error
[h264 @ 0x559b7b7248c0] no frame!
[h264 @ 0x559b7b7248c0] mmco: unref short failure
    Last message repeated 1 times
[h264 @ 0x559b7b7248c0] number of reference frames (0+4) exceeds max (3;
probably corrupt input), discarding one
Input #0, mpegts, from 'udp://@
224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal':
  Duration: N/A, start: 7352.806033, bitrate: N/A
  Program 60
    Metadata:
      service_name    : BBS TV 1
      service_provider:
    Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25 fps, 50
tbr, 90k tbn, 50 tbc
    Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
stereo, s16p, 128 kb/s
[rtmp @ 0x559b7b7241c0] Ignoring unsupported var reason
[h264 @ 0x559b7b73eb80] Using auto hwaccel type cuda with new device
created from 1.
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
  Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
Press [q] to stop, [?] for help
[h264 @ 0x559b7c007e00] reference picture missing during reorder
[h264 @ 0x559b7c007e00] Missing reference picture, default is 65297
[h264 @ 0x559b7c024680] mmco: unref short failure
    Last message repeated 1 times
[h264 @ 0x559b7c024680] number of reference frames (0+4) exceeds max (3;
probably corrupt input), discarding one
[h264 @ 0x559b7c05d780] mmco: unref short failure
[h264 @ 0x559b7c108940] mmco: unref short failure
Output #0, flv, to 'rtmp://
admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
  Metadata:
    encoder         : Lavf58.30.100
    Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] / 0x0007),
cuda, 880x720 [SAR 16:11 DAR 16:9], q=-1--1, 1800 kb/s, 25 fps, 1k tbn, 25
tbc
    Metadata:
      encoder         : Lavc58.55.100 h264_nvenc
    Side data:
      cpb: bitrate max/min/avg: 0/0/1800000 buffer size: 3600000 vbv_delay:
-1
    Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz,
stereo, fltp, 64 kb/s
    Metadata:
      encoder         : Lavc58.55.100 aac
root@ubuntu:/var/log# 17.0 size=   68167kB time=00:04:54.44
bitrate=1896.6kbits/s speed=1.02x

_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".

Capture.PNG (79K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: ffmpeg GPU selection issue

Brainiarc7
On Wed, 4 Sep 2019 at 10:39, Matthew Reus <[hidden email]> wrote:

>
> Hello
> I have ubuntu 18.04 server where i have install ffmpeg and compile sdk as
> well as all requirement of NVIDIA tesla M 60 driver .
>
>
> *1.Issue is whenever i define gpu , both gpu 1 and gpu2 take the process *
>
> *2.ffmepg mostof the time shows frame drops and video buffer *
>
> *Here is have attached all the output and script *
>
> ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
> developers
>   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
>   configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static
> --extra-cflags=-I/root/ffmpeg_build/include
> --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
> --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
> --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk --enable-cuda-nvcc
> --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
> --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
> --enable-libass --enable-libfdk-aac --enable-vaapi --enable-libfreetype
> --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx
> --enable-libx264 --enable-libx265 --enable-nonfree
>   libavutil      56. 32.100 / 56. 32.100
>   libavcodec     58. 55.100 / 58. 55.100
>   libavformat    58. 30.100 / 58. 30.100
>   libavdevice    58.  9.100 / 58.  9.100
>   libavfilter     7. 58.100 /  7. 58.100
>   libswscale      5.  6.100 /  5.  6.100
>   libswresample   3.  6.100 /  3.  6.100
>   libpostproc    55.  6.100 / 55.  6.100
> Hyper fast Audio and Video encoder
> usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options]
> outfile}...
>
>
> *My test script is *
> *ffmpeg -hwaccel_device 1 -hwaccel auto  -i
> 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal>' -vf
> "hwupload_cuda,format=yuv420p|cuda,yadif_cuda=0:-1:0,scale_npp=-1:720" -c:v
> h264_nvenc -gpu 1  -b:v 1800k -c:a aac  -aspect 16:9  -g 50 -b:a 64k -ar
> 44100 -ac 2 -f flv
> 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream
> <http://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream>'
> </dev/null >/dev/null 2>/var/log/BBs1.log  &*
>
>
> ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
> developers
>   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
>   configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static
> --extra-cflags=-I/root/ffmpeg_build/include
> --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
> --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
> --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk --enable-cuda-nvcc
> --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
> --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
> --enable-libass --enable-libfdk-aac --enable-vaapi --enable-libfreetype
> --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx
> --enable-libx264 --enable-libx265 --enable-nonfree
>   libavutil      56. 32.100 / 56. 32.100
>   libavcodec     58. 55.100 / 58. 55.100
>   libavformat    58. 30.100 / 58. 30.100
>   libavdevice    58.  9.100 / 58.  9.100
>   libavfilter     7. 58.100 /  7. 58.100
>   libswscale      5.  6.100 /  5.  6.100
>   libswresample   3.  6.100 /  3.  6.100
>   libpostproc    55.  6.100 / 55.  6.100
> [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> [h264 @ 0x559b7b7248c0] decode_slice_header error
> [h264 @ 0x559b7b7248c0] no frame!
> [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> [h264 @ 0x559b7b7248c0] decode_slice_header error
> [h264 @ 0x559b7b7248c0] no frame!
> [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> [h264 @ 0x559b7b7248c0] decode_slice_header error
> [h264 @ 0x559b7b7248c0] no frame!
> [h264 @ 0x559b7b7248c0] mmco: unref short failure
>     Last message repeated 1 times
> [h264 @ 0x559b7b7248c0] number of reference frames (0+4) exceeds max (3;
> probably corrupt input), discarding one
> Input #0, mpegts, from 'udp://@
> 224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal':
>   Duration: N/A, start: 7352.806033, bitrate: N/A
>   Program 60
>     Metadata:
>       service_name    : BBS TV 1
>       service_provider:
>     Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
> yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25 fps, 50
> tbr, 90k tbn, 50 tbc
>     Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
> stereo, s16p, 128 kb/s
> [rtmp @ 0x559b7b7241c0] Ignoring unsupported var reason
> [h264 @ 0x559b7b73eb80] Using auto hwaccel type cuda with new device
> created from 1.
> Stream mapping:
>   Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
>   Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
> Press [q] to stop, [?] for help
> [h264 @ 0x559b7c007e00] reference picture missing during reorder
> [h264 @ 0x559b7c007e00] Missing reference picture, default is 65297
> [h264 @ 0x559b7c024680] mmco: unref short failure
>     Last message repeated 1 times
> [h264 @ 0x559b7c024680] number of reference frames (0+4) exceeds max (3;
> probably corrupt input), discarding one
> [h264 @ 0x559b7c05d780] mmco: unref short failure
> [h264 @ 0x559b7c108940] mmco: unref short failure
> Output #0, flv, to 'rtmp://
> admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
>   Metadata:
>     encoder         : Lavf58.30.100
>     Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] / 0x0007),
> cuda, 880x720 [SAR 16:11 DAR 16:9], q=-1--1, 1800 kb/s, 25 fps, 1k tbn, 25
> tbc
>     Metadata:
>       encoder         : Lavc58.55.100 h264_nvenc
>     Side data:
>       cpb: bitrate max/min/avg: 0/0/1800000 buffer size: 3600000 vbv_delay:
> -1
>     Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz,
> stereo, fltp, 64 kb/s
>     Metadata:
>       encoder         : Lavc58.55.100 aac
> root@ubuntu:/var/log# 17.0 size=   68167kB time=00:04:54.44
> bitrate=1896.6kbits/s speed=1.02x


Hello there,

Please try this. I've simplified your command a bit for legibility.
These `<>` have been dropped.

ffmpeg -fflags +genpts -vsync 1 -threads 4 \
-hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
-i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal \
-vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
-c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k
-maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
-c:a aac -b:a 64k -ar 44100 -ac 2 \
-f flv -flags +global_header -map 0 \
'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'

A few notes:

1. Note how we call up the hwaccel method. Please don't set this to
auto. Judging by your console output, you definitely have nvdec
available. Use it.

2. See how we request for a specific texture format output from the
decoder tied to the hwaccel method. In this case we ask for cuda. That
way you can skip the unnecessary hwupload parts in your previous
script. These extra bits will definitely slow you down.

3. The thread count (-threads 4) is explicitly set to a low value, 4.
For hwaccels such as nvdec, this is ideal. Very high numbers (~16+)
may result in decoder initialization failure, with warnings.

4. On encoder presets: You're using a Maxwell Gen 2 GPU (a Tesla M60).
Based on your previous command line, I assumed you're targeting
constant bitrate output. With that in mind, the command above selects
the low latency high quality preset (-preset:v llhq) whose rate
control method is overridden to constant bitrate, low latency high
quality mode (-cbr:v cbr_ld_hq) while adapting your selected GOP size
and frame rate.

5. On device selection: This is governed by the -hwaccel_device
arguments passed to the underlying hwaccel , and for the encoder, the
-gpu argument takes precedence. Your mistake in the previous command
was calling up hwupload_cuda without specifying a device to use. Your
previous arguments resulted in the creation of a random CUDA device in
the middle of a filter chain, invoking expensive copies to and from
system memory. And that will definitely slow down the encoder.

As an example, with a single RTX 2080 on my laptop encoding one of the
C-band satellite capture samples from https://kodi.wiki/view/Samples :

cd ~/test
time ffmpeg -fflags +genpts -vsync 1 -threads 4 \
-hwaccel nvdec -hwaccel_device 0 -hwaccel_output_format cuda \
-i 'test.mkv' \
-vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
-c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 0 -b:v 1800k
-maxrate:v 1800k -bufsize:v 1800k -r:v 59.94 -g:v 59.98 \
-c:a aac -b:a 64k -ar 44100 -ac 2 \
-f flv -flags +global_header -map 0 'test.flv'

And this runs at a sweet, sweet ~11x speed:

frame=17791 fps=657 q=27.0 Lsize=   68121kB time=00:04:56.92
bitrate=1879.4kbits/s dup=8895 drop=0 speed=  11x
video:65225kB audio:2336kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.829441%
[aac @ 0x561db5b25440] Qavg: 153.261

real    0m27.461s
user    0m15.690s
sys    0m1.404s


At the very least, on your hardware, you should be getting throughput
speeds in multiples of ~1x with no drops whatsoever.

Test and report back.

Warm regards,

Dennis.
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: ffmpeg GPU selection issue

Brainiarc7
On Wed, 4 Sep 2019 at 18:28, Dennis Mungai <[hidden email]> wrote:

>
> On Wed, 4 Sep 2019 at 10:39, Matthew Reus <[hidden email]> wrote:
> >
> > Hello
> > I have ubuntu 18.04 server where i have install ffmpeg and compile sdk as
> > well as all requirement of NVIDIA tesla M 60 driver .
> >
> >
> > *1.Issue is whenever i define gpu , both gpu 1 and gpu2 take the process *
> >
> > *2.ffmepg mostof the time shows frame drops and video buffer *
> >
> > *Here is have attached all the output and script *
> >
> > ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
> > developers
> >   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
> >   configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static
> > --extra-cflags=-I/root/ffmpeg_build/include
> > --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
> > --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
> > --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk --enable-cuda-nvcc
> > --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
> > --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
> > --enable-libass --enable-libfdk-aac --enable-vaapi --enable-libfreetype
> > --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx
> > --enable-libx264 --enable-libx265 --enable-nonfree
> >   libavutil      56. 32.100 / 56. 32.100
> >   libavcodec     58. 55.100 / 58. 55.100
> >   libavformat    58. 30.100 / 58. 30.100
> >   libavdevice    58.  9.100 / 58.  9.100
> >   libavfilter     7. 58.100 /  7. 58.100
> >   libswscale      5.  6.100 /  5.  6.100
> >   libswresample   3.  6.100 /  3.  6.100
> >   libpostproc    55.  6.100 / 55.  6.100
> > Hyper fast Audio and Video encoder
> > usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options]
> > outfile}...
> >
> >
> > *My test script is *
> > *ffmpeg -hwaccel_device 1 -hwaccel auto  -i
> > 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> > <http://224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal>' -vf
> > "hwupload_cuda,format=yuv420p|cuda,yadif_cuda=0:-1:0,scale_npp=-1:720" -c:v
> > h264_nvenc -gpu 1  -b:v 1800k -c:a aac  -aspect 16:9  -g 50 -b:a 64k -ar
> > 44100 -ac 2 -f flv
> > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream
> > <http://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream>'
> > </dev/null >/dev/null 2>/var/log/BBs1.log  &*
> >
> >
> > ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
> > developers
> >   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
> >   configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static
> > --extra-cflags=-I/root/ffmpeg_build/include
> > --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
> > --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
> > --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk --enable-cuda-nvcc
> > --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
> > --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
> > --enable-libass --enable-libfdk-aac --enable-vaapi --enable-libfreetype
> > --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx
> > --enable-libx264 --enable-libx265 --enable-nonfree
> >   libavutil      56. 32.100 / 56. 32.100
> >   libavcodec     58. 55.100 / 58. 55.100
> >   libavformat    58. 30.100 / 58. 30.100
> >   libavdevice    58.  9.100 / 58.  9.100
> >   libavfilter     7. 58.100 /  7. 58.100
> >   libswscale      5.  6.100 /  5.  6.100
> >   libswresample   3.  6.100 /  3.  6.100
> >   libpostproc    55.  6.100 / 55.  6.100
> > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > [h264 @ 0x559b7b7248c0] no frame!
> > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > [h264 @ 0x559b7b7248c0] no frame!
> > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > [h264 @ 0x559b7b7248c0] no frame!
> > [h264 @ 0x559b7b7248c0] mmco: unref short failure
> >     Last message repeated 1 times
> > [h264 @ 0x559b7b7248c0] number of reference frames (0+4) exceeds max (3;
> > probably corrupt input), discarding one
> > Input #0, mpegts, from 'udp://@
> > 224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal':
> >   Duration: N/A, start: 7352.806033, bitrate: N/A
> >   Program 60
> >     Metadata:
> >       service_name    : BBS TV 1
> >       service_provider:
> >     Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
> > yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25 fps, 50
> > tbr, 90k tbn, 50 tbc
> >     Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
> > stereo, s16p, 128 kb/s
> > [rtmp @ 0x559b7b7241c0] Ignoring unsupported var reason
> > [h264 @ 0x559b7b73eb80] Using auto hwaccel type cuda with new device
> > created from 1.
> > Stream mapping:
> >   Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
> >   Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
> > Press [q] to stop, [?] for help
> > [h264 @ 0x559b7c007e00] reference picture missing during reorder
> > [h264 @ 0x559b7c007e00] Missing reference picture, default is 65297
> > [h264 @ 0x559b7c024680] mmco: unref short failure
> >     Last message repeated 1 times
> > [h264 @ 0x559b7c024680] number of reference frames (0+4) exceeds max (3;
> > probably corrupt input), discarding one
> > [h264 @ 0x559b7c05d780] mmco: unref short failure
> > [h264 @ 0x559b7c108940] mmco: unref short failure
> > Output #0, flv, to 'rtmp://
> > admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
> >   Metadata:
> >     encoder         : Lavf58.30.100
> >     Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] / 0x0007),
> > cuda, 880x720 [SAR 16:11 DAR 16:9], q=-1--1, 1800 kb/s, 25 fps, 1k tbn, 25
> > tbc
> >     Metadata:
> >       encoder         : Lavc58.55.100 h264_nvenc
> >     Side data:
> >       cpb: bitrate max/min/avg: 0/0/1800000 buffer size: 3600000 vbv_delay:
> > -1
> >     Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz,
> > stereo, fltp, 64 kb/s
> >     Metadata:
> >       encoder         : Lavc58.55.100 aac
> > root@ubuntu:/var/log# 17.0 size=   68167kB time=00:04:54.44
> > bitrate=1896.6kbits/s speed=1.02x
>
>
> Hello there,
>
> Please try this. I've simplified your command a bit for legibility.
> These `<>` have been dropped.
>
> ffmpeg -fflags +genpts -vsync 1 -threads 4 \
> -hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
> -i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal \
> -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
> -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k
> -maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
> -c:a aac -b:a 64k -ar 44100 -ac 2 \
> -f flv -flags +global_header -map 0 \
> 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'
>
> A few notes:
>
> 1. Note how we call up the hwaccel method. Please don't set this to
> auto. Judging by your console output, you definitely have nvdec
> available. Use it.
>
> 2. See how we request for a specific texture format output from the
> decoder tied to the hwaccel method. In this case we ask for cuda. That
> way you can skip the unnecessary hwupload parts in your previous
> script. These extra bits will definitely slow you down.
>
> 3. The thread count (-threads 4) is explicitly set to a low value, 4.
> For hwaccels such as nvdec, this is ideal. Very high numbers (~16+)
> may result in decoder initialization failure, with warnings.
>
> 4. On encoder presets: You're using a Maxwell Gen 2 GPU (a Tesla M60).
> Based on your previous command line, I assumed you're targeting
> constant bitrate output. With that in mind, the command above selects
> the low latency high quality preset (-preset:v llhq) whose rate
> control method is overridden to constant bitrate, low latency high
> quality mode (-cbr:v cbr_ld_hq) while adapting your selected GOP size
> and frame rate.
>
> 5. On device selection: This is governed by the -hwaccel_device
> arguments passed to the underlying hwaccel , and for the encoder, the
> -gpu argument takes precedence. Your mistake in the previous command
> was calling up hwupload_cuda without specifying a device to use. Your
> previous arguments resulted in the creation of a random CUDA device in
> the middle of a filter chain, invoking expensive copies to and from
> system memory. And that will definitely slow down the encoder.
>
> As an example, with a single RTX 2080 on my laptop encoding one of the
> C-band satellite capture samples from https://kodi.wiki/view/Samples :
>
> cd ~/test
> time ffmpeg -fflags +genpts -vsync 1 -threads 4 \
> -hwaccel nvdec -hwaccel_device 0 -hwaccel_output_format cuda \
> -i 'test.mkv' \
> -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
> -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 0 -b:v 1800k
> -maxrate:v 1800k -bufsize:v 1800k -r:v 59.94 -g:v 59.98 \
> -c:a aac -b:a 64k -ar 44100 -ac 2 \
> -f flv -flags +global_header -map 0 'test.flv'
>
> And this runs at a sweet, sweet ~11x speed:
>
> frame=17791 fps=657 q=27.0 Lsize=   68121kB time=00:04:56.92
> bitrate=1879.4kbits/s dup=8895 drop=0 speed=  11x
> video:65225kB audio:2336kB subtitle:0kB other streams:0kB global
> headers:0kB muxing overhead: 0.829441%
> [aac @ 0x561db5b25440] Qavg: 153.261
>
> real    0m27.461s
> user    0m15.690s
> sys    0m1.404s
>
>
> At the very least, on your hardware, you should be getting throughput
> speeds in multiples of ~1x with no drops whatsoever.
>
> Test and report back.
>
> Warm regards,
>
> Dennis.

With proper escapes:

ffmpeg -fflags +genpts -vsync 1 -threads 4 \
-hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
-i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal \
-vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
-c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k \
-maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
-c:a aac -b:a 64k -ar 44100 -ac 2 \
-f flv -flags +global_header -map 0 \
'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'

Test and report back, thanks.
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: ffmpeg GPU selection issue

Matthew Reus
yes , it taking the defined GPU  and working fine ,

but there is showing dup frame

[h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
[h264 @ 0x565148b79140] non-existing PPS 0 referenced
[h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
[h264 @ 0x565148b79140] non-existing PPS 0 referenced
[h264 @ 0x565148b79140] decode_slice_header error
[h264 @ 0x565148b79140] no frame!
[h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
[h264 @ 0x565148b79140] non-existing PPS 0 referenced
[h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
[h264 @ 0x565148b79140] non-existing PPS 0 referenced
[h264 @ 0x565148b79140] decode_slice_header error
[h264 @ 0x565148b79140] no frame!
[h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
[h264 @ 0x565148b79140] non-existing PPS 0 referenced
[h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
[h264 @ 0x565148b79140] non-existing PPS 0 referenced
[h264 @ 0x565148b79140] decode_slice_header error
[h264 @ 0x565148b79140] no frame!
[h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
[h264 @ 0x565148b79140] non-existing PPS 0 referenced
[h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
[h264 @ 0x565148b79140] non-existing PPS 0 referenced
[h264 @ 0x565148b79140] decode_slice_header error
[h264 @ 0x565148b79140] no frame!
[h264 @ 0x565148b79140] mmco: unref short failure
[h264 @ 0x565148b79140] number of reference frames (0+4) exceeds max (3;
probably corrupt input), discarding one
Input #0, mpegts, from 'udp://@
224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal':
  Duration: N/A, start: 82237.270033, bitrate: N/A
  Program 60
    Metadata:
      service_name    : BBS TV 1
      service_provider:
    Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25 fps, 25
tbr, 90k tbn, 50 tbc
    Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
stereo, s16p, 128 kb/s
[rtmp @ 0x565148b78a40] Ignoring unsupported var reason
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
  Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
Press [q] to stop, [?] for help
[h264 @ 0x56514939de40] co located POCs unavailable
[h264 @ 0x5651493f6340] mmco: unref short failure
[h264 @ 0x5651493f6340] number of reference frames (0+4) exceeds max (3;
probably corrupt input), discarding one
Output #0, flv, to 'rtmp://
admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
  Metadata:
    encoder         : Lavf58.30.100
    Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] / 0x0007),
cuda, 880x720 [SAR 12:11 DAR 4:3], q=-1--1, 1800 kb/s, 25 fps, 1k tbn, 25
tbc
    Metadata:
      encoder         : Lavc58.55.100 h264_nvenc
    Side data:
      cpb: bitrate max/min/avg: 1800000/0/1800000 buffer size: 1800000
vbv_delay: -1
    Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz,
stereo, fltp, 64 kb/s
    Metadata:
      encoder         : Lavc58.55.100 aac
[h264 @ 0x5651493aed00] *mmco: unref short failure0:29:05.24
bitrate=1874.2kbits/s dup=26 drop=0 *speed=   1x
    Last message repeated 1 times
[h264 @ 0x5651493aed00] number of reference frames (0+4) exceeds max (3;
probably corrupt input), discarding one

On Thu, Sep 5, 2019 at 4:11 AM Dennis Mungai <[hidden email]> wrote:

> On Wed, 4 Sep 2019 at 18:28, Dennis Mungai <[hidden email]> wrote:
> >
> > On Wed, 4 Sep 2019 at 10:39, Matthew Reus <[hidden email]>
> wrote:
> > >
> > > Hello
> > > I have ubuntu 18.04 server where i have install ffmpeg and compile sdk
> as
> > > well as all requirement of NVIDIA tesla M 60 driver .
> > >
> > >
> > > *1.Issue is whenever i define gpu , both gpu 1 and gpu2 take the
> process *
> > >
> > > *2.ffmepg mostof the time shows frame drops and video buffer *
> > >
> > > *Here is have attached all the output and script *
> > >
> > > ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
> > > developers
> > >   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
> > >   configuration: --prefix=/root/ffmpeg_build
> --pkg-config-flags=--static
> > > --extra-cflags=-I/root/ffmpeg_build/include
> > > --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
> > > --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
> > > --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk
> --enable-cuda-nvcc
> > > --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
> > > --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
> > > --enable-libass --enable-libfdk-aac --enable-vaapi --enable-libfreetype
> > > --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx
> > > --enable-libx264 --enable-libx265 --enable-nonfree
> > >   libavutil      56. 32.100 / 56. 32.100
> > >   libavcodec     58. 55.100 / 58. 55.100
> > >   libavformat    58. 30.100 / 58. 30.100
> > >   libavdevice    58.  9.100 / 58.  9.100
> > >   libavfilter     7. 58.100 /  7. 58.100
> > >   libswscale      5.  6.100 /  5.  6.100
> > >   libswresample   3.  6.100 /  3.  6.100
> > >   libpostproc    55.  6.100 / 55.  6.100
> > > Hyper fast Audio and Video encoder
> > > usage: ffmpeg [options] [[infile options] -i infile]... {[outfile
> options]
> > > outfile}...
> > >
> > >
> > > *My test script is *
> > > *ffmpeg -hwaccel_device 1 -hwaccel auto  -i
> > > 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
> > > <http://224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal>' -vf
> > > "hwupload_cuda,format=yuv420p|cuda,yadif_cuda=0:-1:0,scale_npp=-1:720"
> -c:v
> > > h264_nvenc -gpu 1  -b:v 1800k -c:a aac  -aspect 16:9  -g 50 -b:a 64k
> -ar
> > > 44100 -ac 2 -f flv
> > > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream
> > > <http://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream>'
> > > </dev/null >/dev/null 2>/var/log/BBs1.log  &*
> > >
> > >
> > > ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
> > > developers
> > >   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
> > >   configuration: --prefix=/root/ffmpeg_build
> --pkg-config-flags=--static
> > > --extra-cflags=-I/root/ffmpeg_build/include
> > > --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
> > > --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
> > > --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk
> --enable-cuda-nvcc
> > > --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
> > > --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
> > > --enable-libass --enable-libfdk-aac --enable-vaapi --enable-libfreetype
> > > --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx
> > > --enable-libx264 --enable-libx265 --enable-nonfree
> > >   libavutil      56. 32.100 / 56. 32.100
> > >   libavcodec     58. 55.100 / 58. 55.100
> > >   libavformat    58. 30.100 / 58. 30.100
> > >   libavdevice    58.  9.100 / 58.  9.100
> > >   libavfilter     7. 58.100 /  7. 58.100
> > >   libswscale      5.  6.100 /  5.  6.100
> > >   libswresample   3.  6.100 /  3.  6.100
> > >   libpostproc    55.  6.100 / 55.  6.100
> > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > > [h264 @ 0x559b7b7248c0] no frame!
> > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > > [h264 @ 0x559b7b7248c0] no frame!
> > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > > [h264 @ 0x559b7b7248c0] no frame!
> > > [h264 @ 0x559b7b7248c0] mmco: unref short failure
> > >     Last message repeated 1 times
> > > [h264 @ 0x559b7b7248c0] number of reference frames (0+4) exceeds max
> (3;
> > > probably corrupt input), discarding one
> > > Input #0, mpegts, from 'udp://@
> > > 224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>':
> > >   Duration: N/A, start: 7352.806033, bitrate: N/A
> > >   Program 60
> > >     Metadata:
> > >       service_name    : BBS TV 1
> > >       service_provider:
> > >     Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
> > > yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25 fps,
> 50
> > > tbr, 90k tbn, 50 tbc
> > >     Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000
> Hz,
> > > stereo, s16p, 128 kb/s
> > > [rtmp @ 0x559b7b7241c0] Ignoring unsupported var reason
> > > [h264 @ 0x559b7b73eb80] Using auto hwaccel type cuda with new device
> > > created from 1.
> > > Stream mapping:
> > >   Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
> > >   Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
> > > Press [q] to stop, [?] for help
> > > [h264 @ 0x559b7c007e00] reference picture missing during reorder
> > > [h264 @ 0x559b7c007e00] Missing reference picture, default is 65297
> > > [h264 @ 0x559b7c024680] mmco: unref short failure
> > >     Last message repeated 1 times
> > > [h264 @ 0x559b7c024680] number of reference frames (0+4) exceeds max
> (3;
> > > probably corrupt input), discarding one
> > > [h264 @ 0x559b7c05d780] mmco: unref short failure
> > > [h264 @ 0x559b7c108940] mmco: unref short failure
> > > Output #0, flv, to 'rtmp://
> > > admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
> > >   Metadata:
> > >     encoder         : Lavf58.30.100
> > >     Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] /
> 0x0007),
> > > cuda, 880x720 [SAR 16:11 DAR 16:9], q=-1--1, 1800 kb/s, 25 fps, 1k
> tbn, 25
> > > tbc
> > >     Metadata:
> > >       encoder         : Lavc58.55.100 h264_nvenc
> > >     Side data:
> > >       cpb: bitrate max/min/avg: 0/0/1800000 buffer size: 3600000
> vbv_delay:
> > > -1
> > >     Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100
> Hz,
> > > stereo, fltp, 64 kb/s
> > >     Metadata:
> > >       encoder         : Lavc58.55.100 aac
> > > root@ubuntu:/var/log# 17.0 size=   68167kB time=00:04:54.44
> > > bitrate=1896.6kbits/s speed=1.02x
> >
> >
> > Hello there,
> >
> > Please try this. I've simplified your command a bit for legibility.
> > These `<>` have been dropped.
> >
> > ffmpeg -fflags +genpts -vsync 1 -threads 4 \
> > -hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
> > -i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal> \
> > -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
> > -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k
> > -maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
> > -c:a aac -b:a 64k -ar 44100 -ac 2 \
> > -f flv -flags +global_header -map 0 \
> > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'
> >
> > A few notes:
> >
> > 1. Note how we call up the hwaccel method. Please don't set this to
> > auto. Judging by your console output, you definitely have nvdec
> > available. Use it.
> >
> > 2. See how we request for a specific texture format output from the
> > decoder tied to the hwaccel method. In this case we ask for cuda. That
> > way you can skip the unnecessary hwupload parts in your previous
> > script. These extra bits will definitely slow you down.
> >
> > 3. The thread count (-threads 4) is explicitly set to a low value, 4.
> > For hwaccels such as nvdec, this is ideal. Very high numbers (~16+)
> > may result in decoder initialization failure, with warnings.
> >
> > 4. On encoder presets: You're using a Maxwell Gen 2 GPU (a Tesla M60).
> > Based on your previous command line, I assumed you're targeting
> > constant bitrate output. With that in mind, the command above selects
> > the low latency high quality preset (-preset:v llhq) whose rate
> > control method is overridden to constant bitrate, low latency high
> > quality mode (-cbr:v cbr_ld_hq) while adapting your selected GOP size
> > and frame rate.
> >
> > 5. On device selection: This is governed by the -hwaccel_device
> > arguments passed to the underlying hwaccel , and for the encoder, the
> > -gpu argument takes precedence. Your mistake in the previous command
> > was calling up hwupload_cuda without specifying a device to use. Your
> > previous arguments resulted in the creation of a random CUDA device in
> > the middle of a filter chain, invoking expensive copies to and from
> > system memory. And that will definitely slow down the encoder.
> >
> > As an example, with a single RTX 2080 on my laptop encoding one of the
> > C-band satellite capture samples from https://kodi.wiki/view/Samples :
> >
> > cd ~/test
> > time ffmpeg -fflags +genpts -vsync 1 -threads 4 \
> > -hwaccel nvdec -hwaccel_device 0 -hwaccel_output_format cuda \
> > -i 'test.mkv' \
> > -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
> > -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 0 -b:v 1800k
> > -maxrate:v 1800k -bufsize:v 1800k -r:v 59.94 -g:v 59.98 \
> > -c:a aac -b:a 64k -ar 44100 -ac 2 \
> > -f flv -flags +global_header -map 0 'test.flv'
> >
> > And this runs at a sweet, sweet ~11x speed:
> >
> > frame=17791 fps=657 q=27.0 Lsize=   68121kB time=00:04:56.92
> > bitrate=1879.4kbits/s dup=8895 drop=0 speed=  11x
> > video:65225kB audio:2336kB subtitle:0kB other streams:0kB global
> > headers:0kB muxing overhead: 0.829441%
> > [aac @ 0x561db5b25440] Qavg: 153.261
> >
> > real    0m27.461s
> > user    0m15.690s
> > sys    0m1.404s
> >
> >
> > At the very least, on your hardware, you should be getting throughput
> > speeds in multiples of ~1x with no drops whatsoever.
> >
> > Test and report back.
> >
> > Warm regards,
> >
> > Dennis.
>
> With proper escapes:
>
> ffmpeg -fflags +genpts -vsync 1 -threads 4 \
> -hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
> -i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal> \
> -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
> -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k \
> -maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
> -c:a aac -b:a 64k -ar 44100 -ac 2 \
> -f flv -flags +global_header -map 0 \
> 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'
>
> Test and report back, thanks.
> _______________________________________________
> ffmpeg-user mailing list
> [hidden email]
> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> [hidden email] with subject "unsubscribe".
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: ffmpeg GPU selection issue

Brainiarc7
On Thu, Sep 5, 2019, 08:11 Matthew Reus <[hidden email]> wrote:

> yes , it taking the defined GPU  and working fine ,
>
> but there is showing dup frame
>
> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
> [h264 @ 0x565148b79140] decode_slice_header error
> [h264 @ 0x565148b79140] no frame!
> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
> [h264 @ 0x565148b79140] decode_slice_header error
> [h264 @ 0x565148b79140] no frame!
> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
> [h264 @ 0x565148b79140] decode_slice_header error
> [h264 @ 0x565148b79140] no frame!
> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
> [h264 @ 0x565148b79140] decode_slice_header error
> [h264 @ 0x565148b79140] no frame!
> [h264 @ 0x565148b79140] mmco: unref short failure
> [h264 @ 0x565148b79140] number of reference frames (0+4) exceeds max (3;
> probably corrupt input), discarding one
> Input #0, mpegts, from 'udp://@
> 224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>':
>   Duration: N/A, start: 82237.270033, bitrate: N/A
>   Program 60
>     Metadata:
>       service_name    : BBS TV 1
>       service_provider:
>     Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
> yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25 fps, 25
> tbr, 90k tbn, 50 tbc
>     Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
> stereo, s16p, 128 kb/s
> [rtmp @ 0x565148b78a40] Ignoring unsupported var reason
> Stream mapping:
>   Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
>   Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
> Press [q] to stop, [?] for help
> [h264 @ 0x56514939de40] co located POCs unavailable
> [h264 @ 0x5651493f6340] mmco: unref short failure
> [h264 @ 0x5651493f6340] number of reference frames (0+4) exceeds max (3;
> probably corrupt input), discarding one
> Output #0, flv, to 'rtmp://
> admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
>   Metadata:
>     encoder         : Lavf58.30.100
>     Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] / 0x0007),
> cuda, 880x720 [SAR 12:11 DAR 4:3], q=-1--1, 1800 kb/s, 25 fps, 1k tbn, 25
> tbc
>     Metadata:
>       encoder         : Lavc58.55.100 h264_nvenc
>     Side data:
>       cpb: bitrate max/min/avg: 1800000/0/1800000 buffer size: 1800000
> vbv_delay: -1
>     Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz,
> stereo, fltp, 64 kb/s
>     Metadata:
>       encoder         : Lavc58.55.100 aac
> [h264 @ 0x5651493aed00] *mmco: unref short failure0:29:05.24
> bitrate=1874.2kbits/s dup=26 drop=0 *speed=   1x
>     Last message repeated 1 times
> [h264 @ 0x5651493aed00] number of reference frames (0+4) exceeds max (3;
> probably corrupt input), discarding one
>
> On Thu, Sep 5, 2019 at 4:11 AM Dennis Mungai <[hidden email]> wrote:
>
> > On Wed, 4 Sep 2019 at 18:28, Dennis Mungai <[hidden email]> wrote:
> > >
> > > On Wed, 4 Sep 2019 at 10:39, Matthew Reus <[hidden email]>
> > wrote:
> > > >
> > > > Hello
> > > > I have ubuntu 18.04 server where i have install ffmpeg and compile
> sdk
> > as
> > > > well as all requirement of NVIDIA tesla M 60 driver .
> > > >
> > > >
> > > > *1.Issue is whenever i define gpu , both gpu 1 and gpu2 take the
> > process *
> > > >
> > > > *2.ffmepg mostof the time shows frame drops and video buffer *
> > > >
> > > > *Here is have attached all the output and script *
> > > >
> > > > ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
> > > > developers
> > > >   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
> > > >   configuration: --prefix=/root/ffmpeg_build
> > --pkg-config-flags=--static
> > > > --extra-cflags=-I/root/ffmpeg_build/include
> > > > --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
> > > > --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
> > > > --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk
> > --enable-cuda-nvcc
> > > > --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
> > > > --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
> > > > --enable-libass --enable-libfdk-aac --enable-vaapi
> --enable-libfreetype
> > > > --enable-libmp3lame --enable-libopus --enable-libvorbis
> --enable-libvpx
> > > > --enable-libx264 --enable-libx265 --enable-nonfree
> > > >   libavutil      56. 32.100 / 56. 32.100
> > > >   libavcodec     58. 55.100 / 58. 55.100
> > > >   libavformat    58. 30.100 / 58. 30.100
> > > >   libavdevice    58.  9.100 / 58.  9.100
> > > >   libavfilter     7. 58.100 /  7. 58.100
> > > >   libswscale      5.  6.100 /  5.  6.100
> > > >   libswresample   3.  6.100 /  3.  6.100
> > > >   libpostproc    55.  6.100 / 55.  6.100
> > > > Hyper fast Audio and Video encoder
> > > > usage: ffmpeg [options] [[infile options] -i infile]... {[outfile
> > options]
> > > > outfile}...
> > > >
> > > >
> > > > *My test script is *
> > > > *ffmpeg -hwaccel_device 1 -hwaccel auto  -i
> > > > 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
> > <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
> > > > <http://224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal>' -vf
> > > >
> "hwupload_cuda,format=yuv420p|cuda,yadif_cuda=0:-1:0,scale_npp=-1:720"
> > -c:v
> > > > h264_nvenc -gpu 1  -b:v 1800k -c:a aac  -aspect 16:9  -g 50 -b:a 64k
> > -ar
> > > > 44100 -ac 2 -f flv
> > > > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream
> > > > <http://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream>'
> > > > </dev/null >/dev/null 2>/var/log/BBs1.log  &*
> > > >
> > > >
> > > > ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
> > > > developers
> > > >   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
> > > >   configuration: --prefix=/root/ffmpeg_build
> > --pkg-config-flags=--static
> > > > --extra-cflags=-I/root/ffmpeg_build/include
> > > > --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread -lm'
> > > > --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
> > > > --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk
> > --enable-cuda-nvcc
> > > > --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
> > > > --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl --enable-libaom
> > > > --enable-libass --enable-libfdk-aac --enable-vaapi
> --enable-libfreetype
> > > > --enable-libmp3lame --enable-libopus --enable-libvorbis
> --enable-libvpx
> > > > --enable-libx264 --enable-libx265 --enable-nonfree
> > > >   libavutil      56. 32.100 / 56. 32.100
> > > >   libavcodec     58. 55.100 / 58. 55.100
> > > >   libavformat    58. 30.100 / 58. 30.100
> > > >   libavdevice    58.  9.100 / 58.  9.100
> > > >   libavfilter     7. 58.100 /  7. 58.100
> > > >   libswscale      5.  6.100 /  5.  6.100
> > > >   libswresample   3.  6.100 /  3.  6.100
> > > >   libpostproc    55.  6.100 / 55.  6.100
> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > > > [h264 @ 0x559b7b7248c0] no frame!
> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > > > [h264 @ 0x559b7b7248c0] no frame!
> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
> > > > [h264 @ 0x559b7b7248c0] decode_slice_header error
> > > > [h264 @ 0x559b7b7248c0] no frame!
> > > > [h264 @ 0x559b7b7248c0] mmco: unref short failure
> > > >     Last message repeated 1 times
> > > > [h264 @ 0x559b7b7248c0] number of reference frames (0+4) exceeds max
> > (3;
> > > > probably corrupt input), discarding one
> > > > Input #0, mpegts, from 'udp://@
> > > > 224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
> > <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>':
> > > >   Duration: N/A, start: 7352.806033, bitrate: N/A
> > > >   Program 60
> > > >     Metadata:
> > > >       service_name    : BBS TV 1
> > > >       service_provider:
> > > >     Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
> > > > yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25 fps,
> > 50
> > > > tbr, 90k tbn, 50 tbc
> > > >     Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000
> > Hz,
> > > > stereo, s16p, 128 kb/s
> > > > [rtmp @ 0x559b7b7241c0] Ignoring unsupported var reason
> > > > [h264 @ 0x559b7b73eb80] Using auto hwaccel type cuda with new device
> > > > created from 1.
> > > > Stream mapping:
> > > >   Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
> > > >   Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
> > > > Press [q] to stop, [?] for help
> > > > [h264 @ 0x559b7c007e00] reference picture missing during reorder
> > > > [h264 @ 0x559b7c007e00] Missing reference picture, default is 65297
> > > > [h264 @ 0x559b7c024680] mmco: unref short failure
> > > >     Last message repeated 1 times
> > > > [h264 @ 0x559b7c024680] number of reference frames (0+4) exceeds max
> > (3;
> > > > probably corrupt input), discarding one
> > > > [h264 @ 0x559b7c05d780] mmco: unref short failure
> > > > [h264 @ 0x559b7c108940] mmco: unref short failure
> > > > Output #0, flv, to 'rtmp://
> > > > admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
> > > >   Metadata:
> > > >     encoder         : Lavf58.30.100
> > > >     Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] /
> > 0x0007),
> > > > cuda, 880x720 [SAR 16:11 DAR 16:9], q=-1--1, 1800 kb/s, 25 fps, 1k
> > tbn, 25
> > > > tbc
> > > >     Metadata:
> > > >       encoder         : Lavc58.55.100 h264_nvenc
> > > >     Side data:
> > > >       cpb: bitrate max/min/avg: 0/0/1800000 buffer size: 3600000
> > vbv_delay:
> > > > -1
> > > >     Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100
> > Hz,
> > > > stereo, fltp, 64 kb/s
> > > >     Metadata:
> > > >       encoder         : Lavc58.55.100 aac
> > > > root@ubuntu:/var/log# 17.0 size=   68167kB time=00:04:54.44
> > > > bitrate=1896.6kbits/s speed=1.02x
> > >
> > >
> > > Hello there,
> > >
> > > Please try this. I've simplified your command a bit for legibility.
> > > These `<>` have been dropped.
> > >
> > > ffmpeg -fflags +genpts -vsync 1 -threads 4 \
> > > -hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
> > > -i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
> > <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal> \
> > > -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
> > > -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k
> > > -maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
> > > -c:a aac -b:a 64k -ar 44100 -ac 2 \
> > > -f flv -flags +global_header -map 0 \
> > > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'
> > >
> > > A few notes:
> > >
> > > 1. Note how we call up the hwaccel method. Please don't set this to
> > > auto. Judging by your console output, you definitely have nvdec
> > > available. Use it.
> > >
> > > 2. See how we request for a specific texture format output from the
> > > decoder tied to the hwaccel method. In this case we ask for cuda. That
> > > way you can skip the unnecessary hwupload parts in your previous
> > > script. These extra bits will definitely slow you down.
> > >
> > > 3. The thread count (-threads 4) is explicitly set to a low value, 4.
> > > For hwaccels such as nvdec, this is ideal. Very high numbers (~16+)
> > > may result in decoder initialization failure, with warnings.
> > >
> > > 4. On encoder presets: You're using a Maxwell Gen 2 GPU (a Tesla M60).
> > > Based on your previous command line, I assumed you're targeting
> > > constant bitrate output. With that in mind, the command above selects
> > > the low latency high quality preset (-preset:v llhq) whose rate
> > > control method is overridden to constant bitrate, low latency high
> > > quality mode (-cbr:v cbr_ld_hq) while adapting your selected GOP size
> > > and frame rate.
> > >
> > > 5. On device selection: This is governed by the -hwaccel_device
> > > arguments passed to the underlying hwaccel , and for the encoder, the
> > > -gpu argument takes precedence. Your mistake in the previous command
> > > was calling up hwupload_cuda without specifying a device to use. Your
> > > previous arguments resulted in the creation of a random CUDA device in
> > > the middle of a filter chain, invoking expensive copies to and from
> > > system memory. And that will definitely slow down the encoder.
> > >
> > > As an example, with a single RTX 2080 on my laptop encoding one of the
> > > C-band satellite capture samples from https://kodi.wiki/view/Samples :
> > >
> > > cd ~/test
> > > time ffmpeg -fflags +genpts -vsync 1 -threads 4 \
> > > -hwaccel nvdec -hwaccel_device 0 -hwaccel_output_format cuda \
> > > -i 'test.mkv' \
> > > -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
> > > -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 0 -b:v 1800k
> > > -maxrate:v 1800k -bufsize:v 1800k -r:v 59.94 -g:v 59.98 \
> > > -c:a aac -b:a 64k -ar 44100 -ac 2 \
> > > -f flv -flags +global_header -map 0 'test.flv'
> > >
> > > And this runs at a sweet, sweet ~11x speed:
> > >
> > > frame=17791 fps=657 q=27.0 Lsize=   68121kB time=00:04:56.92
> > > bitrate=1879.4kbits/s dup=8895 drop=0 speed=  11x
> > > video:65225kB audio:2336kB subtitle:0kB other streams:0kB global
> > > headers:0kB muxing overhead: 0.829441%
> > > [aac @ 0x561db5b25440] Qavg: 153.261
> > >
> > > real    0m27.461s
> > > user    0m15.690s
> > > sys    0m1.404s
> > >
> > >
> > > At the very least, on your hardware, you should be getting throughput
> > > speeds in multiples of ~1x with no drops whatsoever.
> > >
> > > Test and report back.
> > >
> > > Warm regards,
> > >
> > > Dennis.
> >
> > With proper escapes:
> >
> > ffmpeg -fflags +genpts -vsync 1 -threads 4 \
> > -hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
> > -i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
> > <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal> \
> > -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
> > -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k \
> > -maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
> > -c:a aac -b:a 64k -ar 44100 -ac 2 \
> > -f flv -flags +global_header -map 0 \
> > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'
> >
> > Test and report back, thanks.
>

That's due to the -r:v value.
Omit it altogether if this behavior is undesired.
To maintain a constant frame rate, the -r option will either:

(a). Provide true constant frame rate output for formats such as mp4 by
either duplicating or dropping frames.

(b). Act as a ceiling for the maximum frame rate permitted with formats
such as mkv which permit for variable frame rate. Frame rates below the
threshold are passed through, with these above the same being either
dropped or duplicated.

What you're seeing should thus be treated as a notification, especially
where a GOP size (-g) is defined.

>
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: ffmpeg GPU selection issue

Brainiarc7
On Thu, Sep 5, 2019, 11:43 Dennis Mungai <[hidden email]> wrote:

>
>
> On Thu, Sep 5, 2019, 08:11 Matthew Reus <[hidden email]> wrote:
>
>> yes , it taking the defined GPU  and working fine ,
>>
>> but there is showing dup frame
>>
>> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
>> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
>> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
>> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
>> [h264 @ 0x565148b79140] decode_slice_header error
>> [h264 @ 0x565148b79140] no frame!
>> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
>> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
>> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
>> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
>> [h264 @ 0x565148b79140] decode_slice_header error
>> [h264 @ 0x565148b79140] no frame!
>> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
>> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
>> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
>> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
>> [h264 @ 0x565148b79140] decode_slice_header error
>> [h264 @ 0x565148b79140] no frame!
>> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
>> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
>> [h264 @ 0x565148b79140] SPS unavailable in decode_picture_timing
>> [h264 @ 0x565148b79140] non-existing PPS 0 referenced
>> [h264 @ 0x565148b79140] decode_slice_header error
>> [h264 @ 0x565148b79140] no frame!
>> [h264 @ 0x565148b79140] mmco: unref short failure
>> [h264 @ 0x565148b79140] number of reference frames (0+4) exceeds max (3;
>> probably corrupt input), discarding one
>> Input #0, mpegts, from 'udp://@
>> 224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
>> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>':
>>   Duration: N/A, start: 82237.270033, bitrate: N/A
>>   Program 60
>>     Metadata:
>>       service_name    : BBS TV 1
>>       service_provider:
>>     Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
>> yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25 fps, 25
>> tbr, 90k tbn, 50 tbc
>>     Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
>> stereo, s16p, 128 kb/s
>> [rtmp @ 0x565148b78a40] Ignoring unsupported var reason
>> Stream mapping:
>>   Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
>>   Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
>> Press [q] to stop, [?] for help
>> [h264 @ 0x56514939de40] co located POCs unavailable
>> [h264 @ 0x5651493f6340] mmco: unref short failure
>> [h264 @ 0x5651493f6340] number of reference frames (0+4) exceeds max (3;
>> probably corrupt input), discarding one
>> Output #0, flv, to 'rtmp://
>> admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
>>   Metadata:
>>     encoder         : Lavf58.30.100
>>     Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] / 0x0007),
>> cuda, 880x720 [SAR 12:11 DAR 4:3], q=-1--1, 1800 kb/s, 25 fps, 1k tbn, 25
>> tbc
>>     Metadata:
>>       encoder         : Lavc58.55.100 h264_nvenc
>>     Side data:
>>       cpb: bitrate max/min/avg: 1800000/0/1800000 buffer size: 1800000
>> vbv_delay: -1
>>     Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz,
>> stereo, fltp, 64 kb/s
>>     Metadata:
>>       encoder         : Lavc58.55.100 aac
>> [h264 @ 0x5651493aed00] *mmco: unref short failure0:29:05.24
>> bitrate=1874.2kbits/s dup=26 drop=0 *speed=   1x
>>     Last message repeated 1 times
>> [h264 @ 0x5651493aed00] number of reference frames (0+4) exceeds max (3;
>> probably corrupt input), discarding one
>>
>> On Thu, Sep 5, 2019 at 4:11 AM Dennis Mungai <[hidden email]> wrote:
>>
>> > On Wed, 4 Sep 2019 at 18:28, Dennis Mungai <[hidden email]> wrote:
>> > >
>> > > On Wed, 4 Sep 2019 at 10:39, Matthew Reus <[hidden email]>
>> > wrote:
>> > > >
>> > > > Hello
>> > > > I have ubuntu 18.04 server where i have install ffmpeg and compile
>> sdk
>> > as
>> > > > well as all requirement of NVIDIA tesla M 60 driver .
>> > > >
>> > > >
>> > > > *1.Issue is whenever i define gpu , both gpu 1 and gpu2 take the
>> > process *
>> > > >
>> > > > *2.ffmepg mostof the time shows frame drops and video buffer *
>> > > >
>> > > > *Here is have attached all the output and script *
>> > > >
>> > > > ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
>> > > > developers
>> > > >   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
>> > > >   configuration: --prefix=/root/ffmpeg_build
>> > --pkg-config-flags=--static
>> > > > --extra-cflags=-I/root/ffmpeg_build/include
>> > > > --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread
>> -lm'
>> > > > --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
>> > > > --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk
>> > --enable-cuda-nvcc
>> > > > --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
>> > > > --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl
>> --enable-libaom
>> > > > --enable-libass --enable-libfdk-aac --enable-vaapi
>> --enable-libfreetype
>> > > > --enable-libmp3lame --enable-libopus --enable-libvorbis
>> --enable-libvpx
>> > > > --enable-libx264 --enable-libx265 --enable-nonfree
>> > > >   libavutil      56. 32.100 / 56. 32.100
>> > > >   libavcodec     58. 55.100 / 58. 55.100
>> > > >   libavformat    58. 30.100 / 58. 30.100
>> > > >   libavdevice    58.  9.100 / 58.  9.100
>> > > >   libavfilter     7. 58.100 /  7. 58.100
>> > > >   libswscale      5.  6.100 /  5.  6.100
>> > > >   libswresample   3.  6.100 /  3.  6.100
>> > > >   libpostproc    55.  6.100 / 55.  6.100
>> > > > Hyper fast Audio and Video encoder
>> > > > usage: ffmpeg [options] [[infile options] -i infile]... {[outfile
>> > options]
>> > > > outfile}...
>> > > >
>> > > >
>> > > > *My test script is *
>> > > > *ffmpeg -hwaccel_device 1 -hwaccel auto  -i
>> > > > 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
>> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
>> > <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
>> > > > <http://224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal>' -vf
>> > > >
>> "hwupload_cuda,format=yuv420p|cuda,yadif_cuda=0:-1:0,scale_npp=-1:720"
>> > -c:v
>> > > > h264_nvenc -gpu 1  -b:v 1800k -c:a aac  -aspect 16:9  -g 50 -b:a 64k
>> > -ar
>> > > > 44100 -ac 2 -f flv
>> > > > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream
>> > > > <http://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream
>> >'
>> > > > </dev/null >/dev/null 2>/var/log/BBs1.log  &*
>> > > >
>> > > >
>> > > > ffmpeg version N-94423-ga0c1970 Copyright (c) 2000-2019 the FFmpeg
>> > > > developers
>> > > >   built with gcc 7 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
>> > > >   configuration: --prefix=/root/ffmpeg_build
>> > --pkg-config-flags=--static
>> > > > --extra-cflags=-I/root/ffmpeg_build/include
>> > > > --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs='-lpthread
>> -lm'
>> > > > --bindir=/root/bin --enable-cuda --enable-cuvid --enable-libnpp
>> > > > --extra-cflags=-I../nv_sdk --extra-ldflags=-L../nv_sdk
>> > --enable-cuda-nvcc
>> > > > --enable-nvenc --extra-cflags=-I/usr/local/cuda/include/
>> > > > --extra-ldflags=-L/usr/local/cuda/lib64/ --enable-gpl
>> --enable-libaom
>> > > > --enable-libass --enable-libfdk-aac --enable-vaapi
>> --enable-libfreetype
>> > > > --enable-libmp3lame --enable-libopus --enable-libvorbis
>> --enable-libvpx
>> > > > --enable-libx264 --enable-libx265 --enable-nonfree
>> > > >   libavutil      56. 32.100 / 56. 32.100
>> > > >   libavcodec     58. 55.100 / 58. 55.100
>> > > >   libavformat    58. 30.100 / 58. 30.100
>> > > >   libavdevice    58.  9.100 / 58.  9.100
>> > > >   libavfilter     7. 58.100 /  7. 58.100
>> > > >   libswscale      5.  6.100 /  5.  6.100
>> > > >   libswresample   3.  6.100 /  3.  6.100
>> > > >   libpostproc    55.  6.100 / 55.  6.100
>> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
>> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
>> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
>> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
>> > > > [h264 @ 0x559b7b7248c0] decode_slice_header error
>> > > > [h264 @ 0x559b7b7248c0] no frame!
>> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
>> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
>> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
>> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
>> > > > [h264 @ 0x559b7b7248c0] decode_slice_header error
>> > > > [h264 @ 0x559b7b7248c0] no frame!
>> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
>> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
>> > > > [h264 @ 0x559b7b7248c0] SPS unavailable in decode_picture_timing
>> > > > [h264 @ 0x559b7b7248c0] non-existing PPS 0 referenced
>> > > > [h264 @ 0x559b7b7248c0] decode_slice_header error
>> > > > [h264 @ 0x559b7b7248c0] no frame!
>> > > > [h264 @ 0x559b7b7248c0] mmco: unref short failure
>> > > >     Last message repeated 1 times
>> > > > [h264 @ 0x559b7b7248c0] number of reference frames (0+4) exceeds max
>> > (3;
>> > > > probably corrupt input), discarding one
>> > > > Input #0, mpegts, from 'udp://@
>> > > > 224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
>> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
>> > <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>':
>> > > >   Duration: N/A, start: 7352.806033, bitrate: N/A
>> > > >   Program 60
>> > > >     Metadata:
>> > > >       service_name    : BBS TV 1
>> > > >       service_provider:
>> > > >     Stream #0:0[0x3d]: Video: h264 (Main) ([27][0][0][0] / 0x001B),
>> > > > yuv420p(tv, bt470bg, top first), 704x576 [SAR 12:11 DAR 4:3], 25
>> fps,
>> > 50
>> > > > tbr, 90k tbn, 50 tbc
>> > > >     Stream #0:1[0x3e](eng): Audio: mp2 ([4][0][0][0] / 0x0004),
>> 48000
>> > Hz,
>> > > > stereo, s16p, 128 kb/s
>> > > > [rtmp @ 0x559b7b7241c0] Ignoring unsupported var reason
>> > > > [h264 @ 0x559b7b73eb80] Using auto hwaccel type cuda with new device
>> > > > created from 1.
>> > > > Stream mapping:
>> > > >   Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_nvenc))
>> > > >   Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
>> > > > Press [q] to stop, [?] for help
>> > > > [h264 @ 0x559b7c007e00] reference picture missing during reorder
>> > > > [h264 @ 0x559b7c007e00] Missing reference picture, default is 65297
>> > > > [h264 @ 0x559b7c024680] mmco: unref short failure
>> > > >     Last message repeated 1 times
>> > > > [h264 @ 0x559b7c024680] number of reference frames (0+4) exceeds max
>> > (3;
>> > > > probably corrupt input), discarding one
>> > > > [h264 @ 0x559b7c05d780] mmco: unref short failure
>> > > > [h264 @ 0x559b7c108940] mmco: unref short failure
>> > > > Output #0, flv, to 'rtmp://
>> > > > admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream':
>> > > >   Metadata:
>> > > >     encoder         : Lavf58.30.100
>> > > >     Stream #0:0: Video: h264 (h264_nvenc) (Main) ([7][0][0][0] /
>> > 0x0007),
>> > > > cuda, 880x720 [SAR 16:11 DAR 16:9], q=-1--1, 1800 kb/s, 25 fps, 1k
>> > tbn, 25
>> > > > tbc
>> > > >     Metadata:
>> > > >       encoder         : Lavc58.55.100 h264_nvenc
>> > > >     Side data:
>> > > >       cpb: bitrate max/min/avg: 0/0/1800000 buffer size: 3600000
>> > vbv_delay:
>> > > > -1
>> > > >     Stream #0:1(eng): Audio: aac (LC) ([10][0][0][0] / 0x000A),
>> 44100
>> > Hz,
>> > > > stereo, fltp, 64 kb/s
>> > > >     Metadata:
>> > > >       encoder         : Lavc58.55.100 aac
>> > > > root@ubuntu:/var/log# 17.0 size=   68167kB time=00:04:54.44
>> > > > bitrate=1896.6kbits/s speed=1.02x
>> > >
>> > >
>> > > Hello there,
>> > >
>> > > Please try this. I've simplified your command a bit for legibility.
>> > > These `<>` have been dropped.
>> > >
>> > > ffmpeg -fflags +genpts -vsync 1 -threads 4 \
>> > > -hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
>> > > -i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
>> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
>> > <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal> \
>> > > -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
>> > > -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k
>> > > -maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
>> > > -c:a aac -b:a 64k -ar 44100 -ac 2 \
>> > > -f flv -flags +global_header -map 0 \
>> > > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'
>> > >
>> > > A few notes:
>> > >
>> > > 1. Note how we call up the hwaccel method. Please don't set this to
>> > > auto. Judging by your console output, you definitely have nvdec
>> > > available. Use it.
>> > >
>> > > 2. See how we request for a specific texture format output from the
>> > > decoder tied to the hwaccel method. In this case we ask for cuda. That
>> > > way you can skip the unnecessary hwupload parts in your previous
>> > > script. These extra bits will definitely slow you down.
>> > >
>> > > 3. The thread count (-threads 4) is explicitly set to a low value, 4.
>> > > For hwaccels such as nvdec, this is ideal. Very high numbers (~16+)
>> > > may result in decoder initialization failure, with warnings.
>> > >
>> > > 4. On encoder presets: You're using a Maxwell Gen 2 GPU (a Tesla M60).
>> > > Based on your previous command line, I assumed you're targeting
>> > > constant bitrate output. With that in mind, the command above selects
>> > > the low latency high quality preset (-preset:v llhq) whose rate
>> > > control method is overridden to constant bitrate, low latency high
>> > > quality mode (-cbr:v cbr_ld_hq) while adapting your selected GOP size
>> > > and frame rate.
>> > >
>> > > 5. On device selection: This is governed by the -hwaccel_device
>> > > arguments passed to the underlying hwaccel , and for the encoder, the
>> > > -gpu argument takes precedence. Your mistake in the previous command
>> > > was calling up hwupload_cuda without specifying a device to use. Your
>> > > previous arguments resulted in the creation of a random CUDA device in
>> > > the middle of a filter chain, invoking expensive copies to and from
>> > > system memory. And that will definitely slow down the encoder.
>> > >
>> > > As an example, with a single RTX 2080 on my laptop encoding one of the
>> > > C-band satellite capture samples from https://kodi.wiki/view/Samples
>> :
>> > >
>> > > cd ~/test
>> > > time ffmpeg -fflags +genpts -vsync 1 -threads 4 \
>> > > -hwaccel nvdec -hwaccel_device 0 -hwaccel_output_format cuda \
>> > > -i 'test.mkv' \
>> > > -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
>> > > -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 0 -b:v 1800k
>> > > -maxrate:v 1800k -bufsize:v 1800k -r:v 59.94 -g:v 59.98 \
>> > > -c:a aac -b:a 64k -ar 44100 -ac 2 \
>> > > -f flv -flags +global_header -map 0 'test.flv'
>> > >
>> > > And this runs at a sweet, sweet ~11x speed:
>> > >
>> > > frame=17791 fps=657 q=27.0 Lsize=   68121kB time=00:04:56.92
>> > > bitrate=1879.4kbits/s dup=8895 drop=0 speed=  11x
>> > > video:65225kB audio:2336kB subtitle:0kB other streams:0kB global
>> > > headers:0kB muxing overhead: 0.829441%
>> > > [aac @ 0x561db5b25440] Qavg: 153.261
>> > >
>> > > real    0m27.461s
>> > > user    0m15.690s
>> > > sys    0m1.404s
>> > >
>> > >
>> > > At the very least, on your hardware, you should be getting throughput
>> > > speeds in multiples of ~1x with no drops whatsoever.
>> > >
>> > > Test and report back.
>> > >
>> > > Warm regards,
>> > >
>> > > Dennis.
>> >
>> > With proper escapes:
>> >
>> > ffmpeg -fflags +genpts -vsync 1 -threads 4 \
>> > -hwaccel nvdec -hwaccel_device 1 -hwaccel_output_format cuda \
>> > -i 'udp://@224.2.2.21:5008?fifo_size=1000000\&overrun_nonfatal
>> <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal>
>> > <http://224.2.2.21:5008?fifo_size=1000000%5C&overrun_nonfatal> \
>> > -vf "yadif_cuda=0:-1:0,scale_npp=-1:720" \
>> > -c:v h264_nvenc -preset:v llhq -rc:v cbr_ld_hq -gpu 1 -b:v 1800k \
>> > -maxrate:v 1800k -bufsize:v 1800k -r:v 25 -g:v 50 \
>> > -c:a aac -b:a 64k -ar 44100 -ac 2 \
>> > -f flv -flags +global_header -map 0 \
>> > 'rtmp://admin:netaccess@192.168.0.44:1935/nettv/netBBS11500.stream'
>> >
>> > Test and report back, thanks.
>>
>
> That's due to the -r:v value.
> Omit it altogether if this behavior is undesired.
> To maintain a constant frame rate, the -r option will either:
>
> (a). Provide true constant frame rate output for formats such as mp4 by
> either duplicating or dropping frames.
>
> (b). Act as a ceiling for the maximum frame rate permitted with formats
> such as mkv which permit for variable frame rate. Frame rates below the
> threshold are passed through, with these above the same being either
> dropped or duplicated.
>
> What you're seeing should thus be treated as a notification, especially
> where a GOP size (-g) is defined.
>

Confirm your issue is resolved

>
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".