I have a newer iMac and according to Plex it’s not powerful enough to transcode and stream one 1080p movie. This seems wrong.
The Playback settings on the remote device: Quality: Original (2.2 Mbps, 1080p HD) Audio Stream (ACC 5.1) subtitles .srt
I have set quality to “Maximum” so there shouldn’t be transcoding. Upload speed of server is 1 Gbps.
My library is mostly made up of 1080p H265 hev1 mp4 2300 kb/s overall bit rate files. On the surface these files are compatible with Plex and play locally without issue - but there appears to be an underlying streaming issue that causes problems when a file “needs” to be transcoded because the remote connection is “too slow”.
The files I have were all encoded using hev1. This is not an encoding format that Apple likes. For instance QuickTime will only play hvc1 encoded H265 files.
I realize that Plex uses different software for decoding and encoding but I am wondering…
Today I took a file that I could not play remotely and re-encoded it to hvc1 and sure enough it played remotely without issue and without transcoding.
I know there could be other variables involved but I am wondering if anyone can confirm what I am speculating.
‘hev1’/‘hvc1’ are code points used to signal different packaging of the stream in the container mp4 file. There is no change in the coding itself. It is possible to round trip between the two modes. Try with mp4box :
mp4box -raw 1 file.mp4
This will extract the stream into a raw HEVC file.
mp4box -add file_track1.hvc output.mp4
This will reimport the stream using hvc1 if it can.
As far as I can tell, Plex supports hev1 and hvc1 equally.
I have many hev1 MP4 video files that work well in Plex, on both Apple and non-Apple clients.
You say that you re-encoded the file and then it worked. Did you re-encode the video, or remux and change the codec tag? If you re-encoded, I suspect another variable.
Quick conversion to HVC1, no re-encoding or quality loss:
I cut and paste the commands (because I am a novice) but believe the file wasn’t re-encoded or muxed just encoded? I’ll have to edit my OP.
The file works fine on the desktop, just seems to be a streaming issue. I’ve set everything to Maximum with no transcoding but the server will attempt to transcode and then say it’s not powerful enough. I converted this same movie to play on mobile devices and it was saved as an H264 file that was far larger than the original and that wouldn’t stream either.
I would expect both of those commands to be pretty similar. The mp4box process extracts the video, which happens at almost “copy” speeds, and then muxes it, which also happens at almost “copy” speeds. The ffmpeg command extracts-and-writes in one step - if anything it should be faster.
I’d love to see a sample of the file. Or share server logs.
Using Optimize ... in Plex? That always uses H.264 so it’s not uncommon for it to produce a larger file, but it certainly should play.
You haven’t checked Settings → Transcoding → Disable video stream transcoding, have you?
Oh man… I don’t know what to check and uncheck. I did disable because movies were being transcoded that should have just played based on the movie/audio/subtitle filetypes, the bit rate, and my connection speeds.
I can provide you with Media Info on the file. I can provide server logs but will have to dig through those to find the specific incident
Disable video stream transcoding won’t ever help force anything to play directly. It won’t make Plex “try harder” to play. But it means that if Plex decides transcoding is necessary, since it is disabled, it will fail.
I also think there are some bugs with that checkbox - it sometimes causes Optimize ... jobs to break. I strongly recommend not checking that box.
For server logs, it might be easier to reproduce the playback problem, instead of finding a past example?
Also I think I might have lied about hev1 and hvc1 not mattering. I do see different behavior when the old/AVPlayer is used on an iPhone/iPad/ATV. There’s a Use Old Video Player setting in those apps.
And AVPlayer is also automatically used for some Dolby Vision MP4 playback.
So the Media Info from your examples would be very interesting!