Quality chosen for Sync and Optimizer ignored

Server Version#: 1.19.4.2935, 1.19.5.2916

When Disable video stream transcoding is checked, video stream bitrate and video dimension target settings can be ignored by the Optimizer.

This means that optimized files sometimes aren’t created at all when they should be. It can also mean that high-bitrate video is only remuxed when it should be transcoded to a lower bitrate.

DVST Unchecked DVST Unchecked DVST Checked DVST Checked
Source iOS 20Mbps iOS 2Mbps iOS 20Mbps iOS 2Mbps
1080p H.264 AAC MP4 :+1: No file created1 :+1: Video Transcoded No file created :broken_heart: No file created2
1080p H.264 AC3 MKV :+1: Video Remuxed, Audio Transcoded :+1: Video Transcoded, Audio Transcoded Video Remuxed, Audio Transcoded :broken_heart: Video only Remuxed3, Audio Transcoded

(1): No file created, correctly, because file meets profile targets. Clever girl.
(2): Video should be Transcoded. Logs incorrectly state that file meets targets.
(3): Video should be Transcoded. Resulting file/bitrate too big.

I can make and DM server logs if you are excited about them.

This affects mobile sync in the same way.

I just confirmed this is still an issue in 1.19.5.3035.

When optimizing a source 1080p h264 AC3 MKV to iOS 2Mbps, 720p, it behaves differently if Disable Video Stream Transcoding is checked or not.

DVST unchecked (works as expected):

plex 8505 59.1  4.5 324164 180972  -  RNJ  02:36   0:05.97 /usr/local/share/PlexMediaServer-1.19.5.3035-864bbcbb7/Plex Transcoder -codec:0 h264 -codec:1 eac3_eae -eae_prefix:1 5cbf0c62-03dc-43c8-a7f9-c431f72932ca_ -analyzeduration 20000000 -probesize 20000000 -i /path/to/file/movie.mkv -analyzeduration 20000000 -probesize 20000000 -i /usr/local/plexdata/Plex Media Server/Cache/Transcode/Sessions/plex-transcode-5cbf0c62-03dc-43c8-a7f9-c431f72932ca-73d94f38-5ee6-417d-8009-392d91bffcca/temp-0.srt -filter_complex [0:0]scale=w=1280:h=720[0];[0]format=pix_fmts=yuv420p|nv12[1] -filter_complex [0:1] aresample=async=1:ocl='stereo':rematrix_maxval=0.000000dB:osr=48000[2] -map [1] -codec:0 libx264 -crf:0 19 -maxrate:0 2000k -bufsize:0 4000k -r:0 23.975999999999999 -preset:0 fast -x264opts:0 subme=0:me_range=4:rc_lookahead=10:me=dia:no_chroma_me:8x8dct=0:partitions=none -map [2] -metadata:s:1 language=eng -codec:1 aac -b:1 193k -map 0:2 -metadata:s:2 language=eng -codec:2 mov_text -map 1:s:0 -metadata:s:3 language=eng -codec:3 mov_text -f mp4 -map_metadata -1 -map_chapters -1 -movflags +faststart /path/to/file/Plex Versions/Custom_ iOS 6834/Showname/.inProgress/S04E01.mp4.6834 -y -nostats -loglevel quiet -loglevel_plex error -progressurl http://127.0.0.1:32400/video/:/transcode/session/5cbf0c62-03dc-43c8-a7f9-c431f72932ca/73d94f38-5ee6-417d-8009-392d91bffcca/progress

DVST checked (doesn’t transcode video):

plex 8426 37.6  1.7 150980  69816  -  RNJ  02:32   0:05.24 /usr/local/share/PlexMediaServer-1.19.5.3035-864bbcbb7/Plex Transcoder -codec:0 h264 -codec:1 eac3_eae -eae_prefix:1 00202aa4-3ca1-4bd3-827b-811deb0394f0_ -noaccurate_seek -analyzeduration 20000000 -probesize 20000000 -i /path/to/file/movie.mkv -noaccurate_seek -analyzeduration 20000000 -probesize 20000000 -i /usr/local/plexdata/Plex Media Server/Cache/Transcode/Sessions/plex-transcode-00202aa4-3ca1-4bd3-827b-811deb0394f0-3bf3bb62-96b2-4ea6-be52-b93cdc0229ef/temp-0.srt -filter_complex [0:1] aresample=async=1:ocl='stereo':rematrix_maxval=0.000000dB:osr=48000[0] -map 0:0 -codec:0 copy -map [0] -metadata:s:1 language=eng -codec:1 aac -strict:1 experimental -aac_coder:1 fast -q:1 0 -map 0:2 -metadata:s:2 language=eng -codec:2 mov_text -map 1:s:0 -metadata:s:3 language=eng -codec:3 mov_text -f mp4 -map_metadata -1 -map_chapters -1 -movflags +faststart /path/to/file/.inProgress/S04E01.mp4.6832 -y -nostats -loglevel quiet -loglevel_plex error -progressurl http://127.0.0.1:32400/video/:/transcode/session/00202aa4-3ca1-4bd3-827b-811deb0394f0/3bf3bb62-96b2-4ea6-be52-b93cdc0229ef/progress

I don’t want to share full logs here but I’m happy to share privately. Or I could set up another instance of Plex to share minimized logs.

No change in 1.20.0.3133.

(An excuse for a bump.)

The behavior hasn’t changed in 1.20.1.3252. When Disable video stream transcoding is enabled:

If the source video is H.264, the user’s chosen quality/size/bitrate is ignored for sync and optimize jobs.

However, if the source video stream is another codec (H.265!), user quality selection is obeyed. Then the optimization job produces video at the chosen quality.

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