Any news on GPU transcoding, especially Intel Quick Sync?

Hope this will be coming soon. I have QNAP TS-451 with hardware transcoding that Plex cannot use… I’m loving Plex but it struggles with 1080p movies which is a pain, and now I need to use the built in DLNA on the Sony TV which is not as good as Plex…

Yes, I hope Plex is giving at least one guy a few hours a week to look at this. This is going to be more and more critical. Qnap is moving onto new CPU’s that seem to favor GPU assisted playback, not more or faster cores. They are in fact going to more efficient CPU cores that run slower clock rates and have better GPU’s that have built in transcode help. They are using later generations of Intel Video. Also using ATI Radeon. I think 99% of the people here will not care if the transcode is not the best quality, because in most of these cases the file is being played on a lower resolutions screen and over a connection that can’t handle better bitrates. Emby seems to be exploring this as I type this. They have live and beta versions that we can obtain and tinker with.

I don’t mind Plex taking it’s time on this to let the others work out the major quirks and then devoting time to this. However yea, once the 4k media hits the fan, it will be game over. I was using a 4.5Ghz overclocked monster to transcode 4k video, and that ate up 99% of the CPU at times, but kept up. There is no way a Qnap will handle that even their high end I7 based ones without GPU help.

Can you guys work with Qnap to tie into the transcode process they are developing to work across all Intel/AMD and other CPU’s they use. They seem to be onto a standard on their boxes and you might as well just “plug” into it. That was you don’t have to worry which Qnap one uses, it will transcode with some assistance from GPU, regardless of flavor. Plex, I did notice they are moving away from you to Emby and other solutions as their “bundled” player. Perhaps Qnap isn’t something Plex sees as it’s big install base, but it’s a growing one.

As far as other platforms? I assume for the Windows servers, a same standard would apply in terms of it working with all sorts of GPU’s , mainly ATI or Nvidia or Intel. I assume most people will have one of those installed. Obviously there are minimum hardware versions needed, especially if OpenCL. Yes, perhaps the GPU transcode isn’t much faster, or not best quality, but at least give us a choice. Via settings or something on the server.

I will stick with Plex for now, luckily the TVS-663 Qnap I have actually keeps up with 1080p transcodes to one device at a time. but the Qnap options offer more devices at same time. And perhaps the Emby server will work with it soon too. I hope Plex does something fast to keep the loyal Plex users at least informed on the plans regarding GPU transcoding.

Thanks

Plex, please add Intel QuickSync support!

Still nothing. Seems like they don’t care about their customers want.

I totally agree with the post of AlexDua. It is ridiculous that this isn’t implemented yet. I’ve seen posts reaching back to 2014 about this. What are you guys doing at the PLEX-development department?

@thenazgul1988 said:
I totally agree with the post of AlexDua. It is ridiculous that this isn’t implemented yet. I’ve seen posts reaching back to 2014 about this. What are you guys doing at the PLEX-development department?

2012 even. Implement this technology ASAP pls!

Hi All,

I agree with all you fine folks who want the GPU transcoding :slight_smile:

**Poor show PLEX **for not addressing the fans BIGGEST feature request :frowning:

I am actually waiting to hear that the GPU transcoding is available on PLEX (specifically with AMD GPUs :wink: on windows/linux, I would GLADLY pay the lifetime membership to use your service.

Not sure why PLEX haven’t addressed this as the outcome if they don’t would have a huge impact on their subs(££££) as soon as a more viable (only a matter of time) alternative service pops it head up.

Impacts would be:
Lifetime membership - it would infuriate these fans as they believed in the service to pay a lifetime sub and were let down by the PLEX team for not addressing the request.
Yearly Subs - Would leave at the end of their sub and use an alternative service.
Monthly - Stop renewing their sub instantly and move to the service that provide the feature requested.

The key points to acknowledge for PLEX would be:

  1. Nearly all the PLEX media service fans are somewhat tech savvy and understand the benefits of GPU transcoding, they would of nearly all encountered the CPU bottlenecks during multiple user streaming sessions.

  2. Once a user makes that transition over to another service, if its better you lost(£££) that fan for good in most cases.

  3. Who will want to re-organise their media a third time. Fan organised their media with PLEX first time… fan leaves plex for service that provides GPU transcoding and re-organises their media a second time… PLEX makes the changes late… fan can’t be bothered to move back as they have become too used to using the other service and to re-organise their media a third time!

Your choice PLEX!

Either address your fans ASAP and provide a Q1/2/3/4 release for this feature or simply say you wont/can’t implement it due to XYZ and watch the fallout.

You still have the fans ears and loyalty thus far not sure if I would want to see how far that loyalty will hold out.

look forward to seeing a Official post from PLEX to address this :slight_smile:

@KAOS-Syn32TB

  1. Not even close to everyone even knows what a GPU is. Do not mistake Plex from 5 years ago with Plex today.
  2. This feature request was not even on the top 10 most requested feature for a long time (as far as I can remember at least). It is much higher now as the other features have been rolling out over the years.
  3. FFmpeg has not had support for it for any platform for a long time. Then came windows, and now possibly more platforms. This is from an employee here on the forums (post done late last year): The supported ffmpeg solution (mentioned here: https://raw.githubusercontent.com/FFmpeg/FFmpeg/release/2.8/Changelog) uses Intel’s proprietary MFX libraries which are not compatible with the GPL. There are other ways to solve this hardware assisted acceleration, but it will take time, as it will have to be implemented in a GPL compatible manner.

Yes and No. To get started at least with testing they of course could allow a user to recompile their own version of the plex transcoder with the needed libs.

I know this is “nasty” but it would get the ball rolling.

@cayars said:
Yes and No. To get started at least with testing they of course could allow a user to recompile their own version of the plex transcoder with the needed libs.

I know this is “nasty” but it would get the ball rolling.

Yeah, quite possibly a way forward. But spending a lot of dev hours on a solution that only a few really would use because it requires compiling it yourself is not money well spent in my book.
I say that because I assume that using another solution to incorporate it in a GPL compatible way with different drivers would not be the same thing. If I am wrong about that then it would make a bit more sense though.

@atrus said:
@KAOS-Syn32TB

  1. Not even close to everyone even knows what a GPU is. Do not mistake Plex from 5 years ago with Plex today.
  2. This feature request was not even on the top 10 most requested feature for a long time (as far as I can remember at least). It is much higher now as the other features have been rolling out over the years.
  3. FFmpeg has not had support for it for any platform for a long time. Then came windows, and now possibly more platforms. This is from an employee here on the forums (post done late last year): The supported ffmpeg solution (mentioned here: https://raw.githubusercontent.com/FFmpeg/FFmpeg/release/2.8/Changelog) uses Intel’s proprietary MFX libraries which are not compatible with the GPL. There are other ways to solve this hardware assisted acceleration, but it will take time, as it will have to be implemented in a GPL compatible manner.

I totally agree that it is Intel’s fault with their closed-source MFX librairies.
GPL is the way to go.

@atrus said:

@cayars said:
Yes and No. To get started at least with testing they of course could allow a user to recompile their own version of the plex transcoder with the needed libs.

I know this is “nasty” but it would get the ball rolling.

Yeah, quite possibly a way forward. But spending a lot of dev hours on a solution that only a few really would use because it requires compiling it yourself is not money well spent in my book.
I say that because I assume that using another solution to incorporate it in a GPL compatible way with different drivers would not be the same thing. If I am wrong about that then it would make a bit more sense though.

Yea, but I don’t get why Plex thinks they can’t distribute a version of ffmpeg/plextranscoder with the mfx libraries in them? I’m not saying they can as I’m no lawyer but I don’t know what the issue is.

Heck if you want to download an EXE version of ffmpeg from their website you get redirected to Zeranoe FFmpeg and these all have the libraries in them and can do GPU encoding.

In the Intel forums they specifically tell you to download the Zeranoe FFmpeg version for windows to use QSV so I’m not sure what the problem is. I doubt Intel would point people to a website that violates there intellectual property rights.

Can someone enlighten me? I’m obviously missing something. :slight_smile:

@cayars said:

@atrus said:

@cayars said:
Yes and No. To get started at least with testing they of course could allow a user to recompile their own version of the plex transcoder with the needed libs.

I know this is “nasty” but it would get the ball rolling.

Yeah, quite possibly a way forward. But spending a lot of dev hours on a solution that only a few really would use because it requires compiling it yourself is not money well spent in my book.
I say that because I assume that using another solution to incorporate it in a GPL compatible way with different drivers would not be the same thing. If I am wrong about that then it would make a bit more sense though.

Yea, but I don’t get why Plex thinks they can’t distribute a version of ffmpeg/plextranscoder with the mfx libraries in them? I’m not saying they can as I’m no lawyer but I don’t know what the issue is.

Heck if you want to download an EXE version of ffmpeg from their website you get redirected to Zeranoe FFmpeg and these all have the libraries in them and can do GPU encoding.

In the Intel forums they specifically tell you to download the Zeranoe FFmpeg version for windows to use QSV so I’m not sure what the problem is. I doubt Intel would point people to a website that violates there intellectual property rights.

Can someone enlighten me? I’m obviously missing something. :slight_smile:

I am also a bit in the dark about that. I suspect the rules do not apply the same way if you are a person and if you are an company. All I know is that Plex have said that they need to abide by the GPL, and adding the proprietary intel drivers would break the GPL.

What about separating the two? I am in the dark too, but what if Plex GPU assisted transcoding only worked if you had a 3rd party plugin or package loaded on the server? Similar to what Qnap does to support GPU assisted transcoding? That way the two are separated in terms of the GPL issue. Ok if I am totally wrong on something here let me know. Just saying there has got to be many ways you can skin the cat to make this work right?

I was under the impression (could be wrong) that it’s fine to build fmx functionality into your programs (like ffmpeg) but you can’t distribute their binaries/libraries. If the person wants to rebuild/compile the software they have to legally get the software themselves and agree to any TOS from Intel (in this case) before downloading said package.

It wouldn’t make much sense elsewhere as no commercial or freeware software could use it.

I just wish this was clearer. Ironically Intel has a nice white paper on integration with ffmpeg and says in the document that Quick Sync is part of FFmpeg 2.8 and greater.

Then there is ATI:
http://developer.amd.com/community/blog/2014/02/19/introducing-video-coding-engine-vce/

And Nvidia:
Actually , this is some other media streamer that supports nivida:
https://www.wowza.com/forums/content.php?310-Server-specifications-for-NVIDIA-NVENC-and-NVIDIA-CUDA-acceleration-with-Wowza-Transcoder

So I guess the dream is that Plex Server can somehow take advantage of all these GPU’s in the long run.

In an ideal world you could use 3 at the same time. For example Quick Sync until your GPU is maxed out, then make use of the 1 or 2 Nvideo video cards you have installed until they are maxed out (2 transcodes per GPU I believe) then fall back to CPU. :slight_smile:

@cayars said:
In an ideal world you could use 3 at the same time. For example Quick Sync until your GPU is maxed out, then make use of the 1 or 2 Nvideo video cards you have installed until they are maxed out (2 transcodes per GPU I believe) then fall back to CPU. :slight_smile:

Sort of like what DX12 will do with mixed bag of GPU’s. But I think at this point “any” GPU support , even solo, would be a good thing.

I think the win win would be a simple solution that takes advantage of any GPU, with the ability to perhaps tweak settings. The key, IMO, will be some sort of plug in that can be changed without reworking any part of the shared core. This way if lets say someone else comes out with a new GPU it’s just a matter of updating the plug in for those that want to take advantage of any GPU and core applications is not impacted at all.

Also, seem to be some confusion between integrated GPU acceleration and features like QuickSync. Not all Intel CPUs have QuickSync, and GPU acceleration will vary abit depending on CPU. So… the original thread is about QuickSync, so for those that don’t have good hw decoding, I’d start a different thread for that.

Just some idea of what would have to be supported to get GPU Transcode working in Plex…
https://trac.ffmpeg.org/wiki/HWAccelIntro