[FFmpeg-user] The h264_cuvid decoder would output more frames than the number of origin video frame.

linecorp baek seunghoon.baek.linecorp at gmail.com
Wed Aug 8 10:18:53 EEST 2018

I'm used to use ffmpeg with nvidia Gpu devices for video transcoding work.
I found issue that when I try to decode a video using h264_cuvid, the
number of output frames are more than the number of origin video frames.

I guess, It issue would be caused ffmpeg side. So I tried some tests and
Please see below results.

[Test environments]
 1. Sample Video
  - 3,600 nb_frame and 1920x1080 60fps video. (A number is increasing
  - baseline profile and h264 coded video.
  - Youtube link, but it is not mine. (
 2. Machine Spec
  - CPU: Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz x40
  - Mem: 128GB
  - GPU: Tesla P4 x2, NVIDIA-SMI 396.26, nvcc V9.2.88 (Release)
 3. Use ffmpeg version 3.4

 1. Video decoding using h264_cuvid on FFmpeg
  - using `ffmpeg -c:v h264_cuvid -i baseline-numbered.mp4 -f rawvideo
-pix_fmt nv12 ./output.ffmpeg.nv12`
  - 4 frames were duplicated. (11209881600 bytes output, 3604 frames)
  - Snapshot:

 2. Video decoding using AppDec Sample code in Nvidia Video SDK.
  - using the source code of "{VIDEO_SDK_BASE}/Samples/AppDecode/AppDec"
  - 0 frames were duplicated. (11197440000 bytes output, 3600 frames)
  - Snapshot:

As I knew that FFmpeg h264_cuvid module was used same code of Nvidia Video
SDK code. So I thought ffmpeg seems occur creating duplicated frame or
something wrong. So I wonder this happening is caused by ffmpeg or not.

In order words,
For getting the same result on ffmpeg, would I ask you this issue
validation by anyone who can help me out?

Thank you.

More information about the ffmpeg-user mailing list