Jump to content

Hardware encoding on Ubuntu Server


Recommended Posts


It is still correct. Closed source Intel qsv limitations still apply. However, the open source Vaapi has picked up on the quality and is almost on par with qsv (the media server studio version). So, on Linux. U need to choose whether you want to use the Intel media server studio or go the open source way.

Edited by Andy777
Link to comment
Share on other sites


To that point, very few distros support QSV, and VAAPI has been very good for a few years now.  Can't speak to the UHD stuff since idgaf, but 1080 stuff is nice.

Link to comment
Share on other sites

Are all the other files also HEVC? Have you tried with H264 input? I've seen successful AMD examples where the -bf0 was not required.


Anyway: AMD is actually trying to improve encoding right now. Quote from the mesa-devel this month:

"So, does this mean we could actually implement VAAPI encode properly with packed headers now rather than hard-coding all of this in the driver?"

"At least that's the intention here."


Link to the discussion and the patch set: https://lists.freedesktop.org/archives/mesa-dev/2017-November/176176.html


But it should work without specifying -bf0. The driver should report the capabilities and ffmpeg should not try to implement the b-frames (rather than crash).


BTW. Did you notice that in your command line example you used a different ffmpeg version than what was in the emby log?


That's awesome news. Always good things around the corner.


Unfortunately it fails for AVC also:

Format                                   : AVC
[h264_vaapi @ 0x556171cf4200] B frames are not supported (0x1).
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Link to comment
Share on other sites

I apologize, i did not read this entire thread before posting so this might not apply. But for me when it came to getting vaapi working in emby on my ubuntu 16 system the big holdup was actually adding emby to the video group.

Reading some of this i would bet such a thing has already been attempted because in general a majority of this thread is way over my head but i figure i would say something since i spent multiple hours troubleshooting my own basically working system to find out in the end it was a simple permissions issue.

Link to comment
Share on other sites

  • 3 months later...

The next release of Emby Server for Linux x64 will include NVENC support out of the box so all you need to do is enable it. 


Nvidia Cuda and OpenCL drivers will need to be installed first. These cannot be freely distributed by us so you will need to refer to your respective distro to learn how to install them.


Thanks !

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...