FFmpeg and single thread limitations

I’m suffering because of ffmpeg and it only being able to utilise a single thread when transcoding vc-1, with my WD PR4100 :frowning:

Is there anything that the plex team could do to encourage the ffmpeg devs to working on a multi thread update? I realise vc-1 isn’t mainstream, but like many plex users my library consists of lossless bluray rips, so a lot of older movies are vc-1. Since buying the PR4100 to use as a secondary PMS (at a location with very poor internet speeds), I have hit a couple of hurdles with ffmpeg and it only utilising a single thread for certain things. Transcoding vc-1 being the most significant, followed by transcoding pgs subtitles.

This is a shame, bacause the PR4100 is a capable plex server and is more than up to the task of transcoding a 1:1 bluray ripped MKV, but as soon as a PGS subtitle or VC-1 codec is thrown in the mix, it hits a brick wall. I’m also using the PR4100 as an offsite backup to my main plex server, so modifying the content in anyway is not something i want to consider.

I’m guessing the chances are small, but if there’s anything the plex team could do (as a significant consumer of ffmpeg) as far as requesting future updates go, I would be really grateful if multithread transcoding of vc-1 could go on the list.

Thank you.

VC-1 is a single threaded process. That’s just the way it was designed. Nothing can be done.

Why do you think the industry moved onto new codecs?

I’m sure if someone wanted to update / adapt the process to be multithread badly enough, it could be done and whether the industry moved on or not, the reality is that VC-1 is around in older Blurays and will continue to be around for a while to come.

Plus with larger storage solutions becoming cheaper and more user friendly, 1:1 bluray rips are now more realistic
than ever, so with a great media solution like plex and hardware stack like the PR4100, it is a real limitation and shame that it falls short when it comes to media containing things like VC-1, or PGS. Especially as it seems to be out of the plex and wd team’s hands.

Which brings me back to my original post,

… if there’s anything the plex team could do (as a significant consumer of ffmpeg) as far as requesting future updates go, I would be really grateful if multithread transcoding of vc-1 could go on the list.

It’s just not going to happen. There’s no incentive to develop for a dead codec.

You can hold out hope as much as you want but I’m telling you it’s highly unlikely to ever happen.

Plex have no influence over FFMPEG teams actions.

@RICH|FLIX said:
Plus with larger storage solutions becoming cheaper and more user friendly, 1:1 bluray rips are now more realistic
Storage is getting cheaper and so is compute. if transcoding 1:1 VC1 rips is a requirement then the server hardware needs to be designed to cater to that requirement. With H.265 and AV1 this is only going to get much more “obvious”

@danjames92 said:
… I’m telling you it’s highly unlikely to ever happen.
I’m glad i’m not asking you to do it then :wink:

@trudge said:
Storage is getting cheaper and so is compute. if transcoding 1:1 VC1 rips is a requirement then the server hardware needs to be designed to cater to that requirement. With H.265 and AV1 this is only going to get much more “obvious”

I completely agree, sadly i’m in the unfortunate position where I’ve bought hardware that isn’t (i never thought i’d need to research into ffmpeg before the purchase) and I’ve voiced that frustration in a PR4100 thread. Now i’m doing the only thing i can; asking for a little help.

@RICH|FLIX said:

@danjames92 said:
… I’m telling you it’s highly unlikely to ever happen.
I’m glad i’m not asking you to do it then :wink:

@trudge said:
Storage is getting cheaper and so is compute. if transcoding 1:1 VC1 rips is a requirement then the server hardware needs to be designed to cater to that requirement. With H.265 and AV1 this is only going to get much more “obvious”

I completely agree, sadly i’m in the unfortunate position where I’ve bought hardware that isn’t (i never thought i’d need to research into ffmpeg before the purchase) and I’ve voiced that frustration in a PR4100 thread. Now i’m doing the only thing i can; asking for a little help.

You’re asking the wrong people. I’m sure any Plex employee would agree with me.

@RICH|FLIX said:

@danjames92 said:
… I’m telling you it’s highly unlikely to ever happen.
I’m glad i’m not asking you to do it then :wink:

@trudge said:
Storage is getting cheaper and so is compute. if transcoding 1:1 VC1 rips is a requirement then the server hardware needs to be designed to cater to that requirement. With H.265 and AV1 this is only going to get much more “obvious”

I completely agree, sadly i’m in the unfortunate position where I’ve bought hardware that isn’t (i never thought i’d need to research into ffmpeg before the purchase) and I’ve voiced that frustration in a PR4100 thread. Now i’m doing the only thing i can; asking for a little help.

The CPU in that thing is still pretty gutless, even with the magic of multi-threaded VC1 you’ll be very unhappy with it. It’s under the compute limit to deal with a 10Mbps H.264 transcode, and as VC-1 is more compute intensive than H.264 at the same bit-rate you’ll have no love with transcoding full BR rips of any codec. What your asking for would be nice (and people have been asking the ffmpeg guys for it since 2007/08 ish) but it wont actually get you what you want anyway.

@trudge said:
The CPU in that thing is still pretty gutless, even with the magic of multi-threaded VC1 you’ll be very unhappy with it. It’s under the compute limit to deal with a 10Mbps H.264 transcode, and as VC-1 is more compute intensive than H.264 at the same bit-rate you’ll have no love with transcoding full BR rips of any codec. What your asking for would be nice (and people have been asking the ffmpeg guys for it since 2007/08 ish) but it wont actually get you what you want anyway.

Ah i see, thanks for the explanation. I didn’t realise that as well as a single thread limitation that it was an overall more intensive process as well. Talk about a bad combo! Bummer! :confused:

In the PR4100’s defence, it handles a 37.421mbps H.264 transcode perfectly and with hardware acceleration enabled, its processor doesn’t even hit 25% when transcoding. But as you said, if VC-1 is a more intensive process, then who knows how well it would handle that, even with mulithread?

I appreciate your reply.

@RICH|FLIX said:

@trudge said:
In the PR4100’s defence, it handles a 37.421mbps H.264 transcode perfectly and with hardware acceleration enabled, its processor doesn’t even hit 25% when transcoding. But as you said, if VC-1 is a more intensive process, then who knows how well it would handle that, even with mulithread?

I appreciate your reply.

Getting hardware acceleration enabled for VC-1 would be a much better thing to lobby for - something Plex can somewhat control. (It’s already in ffmpeg) Still not something I’d put money on happening though.

@trudge said:
Getting hardware acceleration enabled for VC-1 would be a much better thing to lobby for - something Plex can somewhat control. (It’s already in ffmpeg) Still not something I’d put money on happening though.

Awesome, thank you. I wouldn’t have known that if you hadn’t said.

might already be some discussion on it in this mega thread -> http://forums.plex.tv/discussion/250946/plex-media-server-hardware-transcoding-preview-3-1-6-0-3720/p1

Wow! You’re not kidding about a mega thread. I’ll get reading.

Thank you again :slight_smile:

you could also go the Cayars conversion route…