SW vs HW acceleration, against cpu brands

I am looking for a good forum post/ replies here about when to use and not use hardware trans-coding.
And what hardware is required for either SW or HW

There is a lot of talk about Intel CPU is best for HW acceleration, but very little info about using an AMD cpu without HW acc turned on. And very little about configuring an nVidia GPU. and especially AMD CPU with nVidia GPU.

So what is best?

Currently I use desktop with 8700K cpu, and HW acc. turned OFF
Hence interested in using laptop with a Ryzen 9 4900H, which is quite a lot faster. But all of the dialogue I read does not suggest whether SW transcoding is OK on this chip.

Very confusing as to why Intel is required when not considering HW acc.

does software transcoding only provide 1 stream at a time?

The section in this article about “Should I use…” is quite average and doe not get into enough detail, wrt hardware for the SW/HW transcoding. https://support.plex.tv/articles/115002178853-using-hardware-accelerated-streaming/

Silly question?

Why an 8xxx with HW turned off?

I will gladly answer your questions about this.

because I have had so many issues with getting reliable video streams.
sometimes buffering endlessly, (with HW acc. turned ON)

Maybe I need to tried HW acc. again.

but my actual question is: Is a good AMD cpu gong to be alright, what are the limitations (obviously HW acc), is it only HW acc. the problem.

It is not clear what the best setup is, and once having the best setup the best movie file types etc, so on.
Plex covers so many topics.

First, you’re right – good media curation is the key to success.

As the old expression goes: Garbage In yields Garbage Out.

“Buffering” is like saying “my car isn’t running right”.
A lot more info is needed to find the root cause.

  1. When does it happen?
    a. extremely high bit rate movies (80+ Mbps) ?
    b. When local using a browser?
    c. Remote?
    d. Wired connection or WiFi?
    e. Subtitles involved?

  2. When doesn’t it happen?

See my point?

Can you provide more info?

I think my old problems may not be relevant anymore. (however I will test) so let me ask my main questions again, to get back on track.

What does HW acceleration do?
Can I run an AMD Chip in HW acc OFF mode the same as an i7 chip?
Can we expand on the what with respect to the hardware AMD vs intel (QuickSync)

In the meantime I am testing HW mode on on my intel chip.

my next investigation will be what happens when I add my nVidia1070 gpu to the HTC.

Hardware Acceleration uses the Intel QSV (Quick Sync Video) ASIC in Intel CPUS or Nvidia PCI-E GPU cards to offload the conversion of the video stream from one form to another (e.g. High bit rate HEVC → lower bit rate H.264 to send to a lesser-capable device)

Plex does not yet support the MESA / Gallium capabilities inherent to AMD chips but they are exploring it.

To answer your specific question:

Can I run an AMD Chip in HW acc OFF mode the same as an i7 chip?

With hardware turned off, it’s no different than an i7. An AMD Ryzen 7 3700x will however , most likely, whip it silly at the increased raw computational performance.

Intel i7-8700 has 13111 passmarks performance.
https://www.cpubenchmark.net/cpu.php?cpu=Intel+Core+i7-8700+%40+3.20GHz&id=3099

AMD Ryzen 7 3700x has 22823 passmarks performance
https://www.cpubenchmark.net/cpu.php?cpu=AMD+Ryzen+7+3700X&id=3485

What we like to do, when possible:

  1. Let hardware (whether that be the GPU/ASIC or a graphics card) handle the brute force video work.
  2. We let the CPU handle the other work which it can’t do in hardware , namely audio and subtitle burning.

In both Intel, and eventually AMD, you’ll run out of CPU power very quickly when burning subtitles into the video frames is required.

my next investigation will be what happens when I add my nVidia1070 gpu to the HTC.

If you add the Nvidia to the AMD Ryzen 7, you’re going to have a screaming box.

  1. It will have 2x the CPU power of an Intel i7-8700
  2. The Nvidia will easy accept the load which the Intel hardware would have done.

Hardware accelerated transcoding offloads the work of decoding the stream from one codec and encoding it to another to purpose-built decoding/encoding hardware. This improves performance and generally increases the number of simultaneous transcodes which can be performed. The potential tradeoff is visual quality, but that has likely improved to the point where you won’t notice it.

Yes.

It’s best to think of Intel CPUs (with integrated graphics) as two different devices: A CPU and a GPU. The reason Intel CPUs are supported for hardware accelerated transcoding is that the GPU portion of the chip supports a feature called Quick Sync Video. This is the feature which performs the transcoding. AMD CPUs, while some have integrated GPUs, do not support Quick Sync (they have their own decoding/encoding feature). On Linux, you have two choices currently for hardware accelerated transcoding: Intel CPUs which support Quick Sync Video and certain Nvidia GPU-based graphics cards.

The story is a bit different on Windows as it provides an API, which Plex uses, to abstract the underlying hardware from the implementation. So, you can use (at least some) AMD GPUs in that environment, including CPUs with them integrated.

So, to summarize:
On Linux, you can use Intel CPUs with Quick Sync Video for hardware accelerated transcoding.
On Linux, you can use certain Nvidia GPU-based graphics cards for hardware accelerated transcoding, whether you’re using an Intel or AMD CPU.
On any platform you can use any CPU for software transcoding, provided it provides sufficient performance to do so.

Thanks @ChuckPa for your persistence as always. And the great answer.

I will turn on HWacc now and then incrementally add the nVidia to my i7-8700K and see how everything performs.

If I turn to AMD this will only be in a Gaming Laptop for mainly remote working, but keen to see the 2 side by side.

Thank you @pshanew.

Great Summary. Awesome

I forgot to mention one point.

When you have both an Nvidia GPU with drivers installed and an Intel QSV cpu, you may select which one you wish to use.

It is done via a manual selection in the Preferences.xml

  1. Intel usually maps to /dev/dri/renderD128 because the i915 is found first.
  2. The Nvidia is then mapped to /dev/dri/renderD129

After confirming you have both rendering devices,

Adding HardwareDevicePath="/dev/dri/renderD129" (with spaces separating the preferences) will instruct PMS to use the Nvidia over the Intel.

Likewise, you can force it the other way. The choice is yours.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.