Sync support for HEVC/x265, converting to x264 to then download (resolved with downloads feature)

Given HEVC/x265 is now quite common as a supported playback format, wouldn’t it make sense to either allow PMS Sync to allow direct downloads where we select maximum quality, rather than force transcode to x264.

Or to allow for users to select a direct download and take the risk their playback device can’t support.

In fact it would be great in PMS Sync to clear up the language for quality to “no transcode”, as currently it isn’t clear what happens when you select “maximum”.

This is badly needed for the sync feature.

In my case Plex takes a reasonably-sized HEVC file, converts it to a much larger h264 file, then transfers it across. It takes time, and because my server is a few years old I cannot use hardware transcoding so it murders the CPU whilst doing so.

This is even worse if you have a NAS as your PMS; you can direct stream HEVC to devices no problem but sync for HEVC encoded files is a complete non-runner. Even with a NAS you can still choose original quality for h264 files and sync fine.

3 Likes

You can probably easily fix it for yourself for now: Allow sync without transcoding

Dear Plex,

It is a complete waste of time and energy to convert HEVC / x265 back to x264. We encode to x265 to save on space and to be light on the network when streaming. Please give us the options as stated in the original post without us having to resort to workarounds. (Shout out to @enchained for their workaround suggestions.)

~ Zorg

2 Likes

Please add to feature requirement: if sync does not require conversion, skip conversion queue and allow sync to happen in parallel with other PMS tasks.

Thanks.

1 Like

Please fix this. If you choose “Original” for video quality when syncing, Plex should not be transcoding - no matter what.

4 Likes

Yes please, I just want to sync my MKV files to my tablet. No reason to transcode them, even when original is selected there is quality loss

I upvote for this feature :v: I never understood why it was encoding a vidéo that i asked for an original quality Sync. thanks ! :slight_smile:

wtf. I just bought a lifetime Plex Pass for sync and most of my files are in HEVC. Yet Plex won’t sync them without transcoding?

1 Like

Yeap. Agreed. Plex needs to catch up with the times. HEVC is supported on all modern phones and shouldn’t require transcoding when direct streaming.

2 Likes

I did find an iOS.xml update in one of the threads - and it works great. It just has to be replaced every time the server is updated … :frowning:

+1 this needs fixing.

Can you post here the iOs.xml file? I tried several and non working…

Sure, here you go. I grabbed it from the link above (to get it working),

<?xml version="1.0" encoding="utf-8"?>
<Client name="iOS">
  <!-- Author: Plex Inc. -->
  <!-- This profile is used by A10X (and later) iOS (2017+) devices using the MPV ("experimental") video player. Currently, this requires a Plex Pass subscription. -->
  <!-- Because Plex does not currently support TrueHD or DTS-MA playback in the client, this audio is transcoded to FLAC. -->
  <Settings>
    <Setting name="DirectPlayStreamSelection" value="true" />
    <Setting name="StreamUnselectedIncompatibleAudioStreams" value="true" />
  </Settings>
  <TranscodeTargets>
    <VideoProfile container="mkv" codec="h264,h265" audioCodec="flac" />
    <MusicProfile container="flac" codec="flac" />
    <PhotoProfile container="jpeg" />
    <SubtitleProfile container="webvtt" subtitleCodec="webvtt"/>
  </TranscodeTargets>
  <DirectPlayProfiles>
    <VideoProfile container="mkv,mov,mp4,mpegts,mpeg,mpegvideo,avi,flv,ogg" codec="h264,hevc,vp8,vp9,h263,mpeg1video,mpeg2video,mpeg4,vc1" audioCodec="aac,aac_latm,ac3,alac,flac,dca,vorbis,opus,eac3,mp1,mp2,mp3" subtitleCodec="ass,dvb_subtitle,vobsub,eia_608,pgs,microdvd,movtext,ssa,srt" />
    <MusicProfile container="mp3" codec="mp3" />
    <MusicProfile container="m4a" codec="aac,alac" />
    <MusicProfile container="mp4" codec="aac,he-aac,ac3,eac3,alac" />
    <MusicProfile container="flac,mkv" codec="flac" />
    <PhotoProfile container="jpeg" />
  </DirectPlayProfiles>
  <CodecProfiles>
  <VideoCodec name="*">
     <Limitations>
       <UpperBound name="video.width" value="3840" />
       <UpperBound name="video.height" value="2160" />
       <UpperBound name="video.bitDepth" value="10" />
     </Limitations>
    </VideoCodec>
    <VideoAudioCodec name="*">
      <Limitations>
        <UpperBound name="audio.channels" value="2" onlyTranscodes="true" />
      </Limitations>
    </VideoAudioCodec>
  </CodecProfiles>
</Client>
1 Like

Does anyone know - is Plex fixing this? Only asking because I have to re-copy this file with every update, so a bit of a PITA … :smile:

Thanks!

Hi,

One pain in this - the Plex server seems to keep replacing my custom XML file. Is there a way to avoid this? I could also set up a cron job (scheduled task) to replace the file, but I need to restart the server after doing this … that’s a bit dangerous (to run it on some sort of regular basis).

Thoughts?

Thanks!

I have a scheduled task that auto copies a known good XML file and then restarts Plex.

Would be nice if this was addressed by Plex, making the sync process aware of the capabilities of the playback device.

Yes, this is what I was thinking as well … but how to know if a recording is in process? Don’t want to restart the server when that is ongoing.

Thanks!

You have my vote.

Why is no plex admin looking at this, seems people have been asking as far back as 5 years for this fixture?!?!?