[FFmpeg-user] nvenc h264 encoding

Sven C. Dack sven.c.dack at sky.com
Thu Oct 13 17:50:23 EEST 2016


On 13/10/16 14:01, tyt xtreme wrote:
> And what can i do on Windows to check these capabilities?
> Btw the GPU is a Gainward 6 Gb nVidia GTX 980 Ti so i think this should
> support the above formats.
If I'm not mistaken then yuv444p is linked to 10-bit depth encoding, which is 
only possible on the newer Pascal cards (the 10x0 series). The Video SDK page 
only mentions HEVC/H.265, but I believe it also applies to AVC/H.264. See here: 
https://developer.nvidia.com/nvidia-video-codec-sdk

Try using "high" instead of "high444p" for the profile and "nv12" or "yuv420p" 
for the pixel format.

If you want best quality for compression then add "-rc vbr_2pass -rc-lookahead 
32" to the command line. The encoder cannot actually do two full passes, but it 
can look ahead up to 32 frames, which acts as a substitute for 2-pass encoding 
and can improve the picture quality a lot especially around I-frames.

>
> On Thu, Oct 13, 2016 at 1:52 PM, Sven C. Dack <sven.c.dack at sky.com> wrote:
>
>> On 13/10/16 11:34, tyt xtreme wrote:
>>
>>> Dear All,
>>>
>>> Any idea why this encoding doesn't work?
>>>
>>> $ ffmpeg -i perspective.mp4 -c:v h264_nvenc -profile:v high444p
>>> -pixel_format yuv444p -preset default perspective_out.mp4
>>>
>>> ...
>>> [h264_nvenc @ 0000000001d84640] No free surfaces
>>> Video encoding failed
>>> Conversion failed!
>>>
>> Surfaces are a reference to the memory buffers used by the encoder. You
>> can find out about which surfaces your graphics card supports by opening
>> the Nvidia settings panel, -> "VDPAU Information", -> "Surface Limits".
>>
>> If your card doesn't support the pixel format or the picture exceeds the
>> surface limit might this already explain why you get this error message.
>> Although I would expect to see a different error message...
>>
>> You can also check with "nvidia-smi" which applications are currently
>> using your graphics card. Suspended processes, zombie processes or just
>> multiple processes can also exhaust the amount of available surfaces.
>>
>> _______________________________________________
>> ffmpeg-user mailing list
>> ffmpeg-user at ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>>
>> To unsubscribe, visit link above, or email
>> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".




More information about the ffmpeg-user mailing list