Jump to content

Transcoding setup steps?


sfatula
Go to solution Solved by softworkz,

Recommended Posts

sfatula

So, I made a new ubuntu 20.04.1 machine, and, I see both gpus, intel and rtx2060. Seems like emby doesn't use the rtx, seems to give an

Info    Checking: 'NVDEC GeForce RTX 2060 - H.264 (AVC)' 

NoMatch Encoder is not compatible with 'NvEncDec' decoders

I use the encoder via the emby ffmpeg in /opt/emby-server just fine from an after recording script. Curious as to why the inability of download (which runs convert) to use nvenc?

Logs attached.

ffmpeg-transcode-350d2bf2-aa90-4ce6-b1af-d0fd5897f889_1.txt hardware_detection-63733755426.txt

Link to comment
Share on other sites

sfatula

I did, but I don't see any specific steps in your new guide other than installing latest driver. The linked to page is an overview only. I follow that to the for linux page but really don't see any specific steps. It works fine from command line ffmpeg.

What am I missing?

Link to comment
Share on other sites

sfatula

Yes, it picked the secondary choice, the Intel, since it rejected the configured top choice, the nvidia. So, it's wrong.

 

E5847FE8-7615-47AC-BAE0-7B39223F64AC.png

Link to comment
Share on other sites

sfatula

Yes, I think an nvdia can encode h264. This was a failed attempt to download to an iPad a reduced Bitrate. So, in the emby app, clicked download, changed bitrate to 2.5 and it was converting it, real real real real slow. So, I looked, and it was using the Intel gpu.

worked fine on 18.04.1 ubuntu, not working on 20.04.1

0AF85CCB-3628-4DE6-A4B0-A471A6C1ECA1.png

Edited by sfatula
Forgot image
Link to comment
Share on other sites

sfatula

Yep, always worked on same dvr recordings on ubuntu 18.04. Doesn't work on any file but can command line ffmpeg (emby one) just fine. Seems to work for playback, but not for download.

Edited by sfatula
Link to comment
Share on other sites

  • Solution

@sfatula - Your screen doesn't match your logs.

The hw detection log shows a configuration where the VAAPI encoder has a higher priority than the Nvidia:

image.png.9ad522753ef3a215e79b6f89a9b29960.png

 

And that's what can be seen in the ffmpeg log: The encoder is chosen first and it's VAAPI due to its higher priority.

For the decoders, Nvidia has a higher priority:

image.png.f8bad99c5bd9cf84b3309f9f752e5a3a.png

 

But - we do no longer allow certain combinations of hardware accelerations (the reasons are too complex to explain briefly). VAAPI and Nvidia is one of those unsupported combinations. And that's what the message says:

image.png.c959a758af7e1302ddc481c8a2b1f22c.png

So, Emby is choosing the VAAPI decoder - which is a much better choice to combine with the VAAPI encoder, because thanks to that, you get a full hardware processing pipeline, as can be seen in the ffmpeg log.

 

Bottom line: To use Nvidia instead, you need to set the Nvidia encoder to the highest priority.

Your screenshot shows that - but that setting was not active at the time of the ffmpeg log.

image.png

  • Like 1
Link to comment
Share on other sites

sfatula

Ok, so, no more mix and match like sometime previously when that was allowed, used to work. That's fine, good to know. I had a reason for it, but, no big deal. Thanks!

Link to comment
Share on other sites

24 minutes ago, sfatula said:

Ok, so, no more mix and match like sometime previously when that was allowed, used to work. That's fine, good to know. I had a reason for it, but, no big deal. Thanks!

I'm curious - why would you want to do that?

PS: You could install the Diagnostics Plugin and activate "Legacy Command Building" for the old behavior (until the next release).

Link to comment
Share on other sites

sfatula

It has to do with usage of the RTX2060. While, I'd love to devote that to Emby, the reality is it's for gaming. So, for some things (TV antenna), that's always MPEG-2, and, that can be handled by built in Intel more than adequately. For other things, RTX can handle it as if those things are being played in my house, I'm the one doing it and therefore I am not gaming. Sometimes, the encoder is therefore different than the decoder due to what platform is the client. One isn't going to decode MPEG-2 and encode MPEG-2 for example. 

Anyway, it's not a big deal. There is always the github software to increase Nvidia sessions to more than 2, and, since I use Infuse almost exclusively as a client now (unless I am remote then I am roku but then obviously not gaming at home), there is no transcoding anyway. Just got back from a 10 day trip where I was all Roku. So, a little slow responding. 

Edited by sfatula
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...