When I limit BW, Plex Transcodes Unexpectedly

Wow, I don’t know what I have done. But messing around with it so much, now it is working! I went back to get you a log. Set the bw to 1.5 (again) and now it works awesome! Take a look:

Thanks to everyone for the help! I am hopeful it will stay this way. :slight_smile:

Sheesh this is frustrating. I tried another video encoded with the exact same parameters. It transcodes. Here is the xml file:
501st.xml.txt (13.5 KB)

I PM’d you my logs. :slight_smile:

The original file has gone through deep analysis and has more firm bandwidth requirements defined:

<Part accessible="1" exists="1" id="28180" key="/library/parts/28180/1575840221/file.mp4" duration="5868029" file="/media/exfat/Movies/13 Going on 30 (2004) - BD.mp4" size="645613876" audioProfile="lc" container="mp4" deepAnalysisVersion="4" has64bitOffsets="0" optimizedForStreaming="0" requiredBandwidths="961,895,895,895,895,895,895,895" videoProfile="main">

The second file does not appear to have been deeply analyzed yet, so PMS is relying on the “two times the average bitrate” algorithm to determine bandwidth requirements:

<Part accessible="1" exists="1" id="28187" key="/library/parts/28187/1575845904/file.mp4" duration="5701800" file="/media/exfat/Movies/50 First Dates (2004).mp4" size="627670762" audioProfile="lc" container="mp4" has64bitOffsets="0" optimizedForStreaming="0" videoProfile="main">

Note the missing “deepAnalysisVersion” and “requiredBandwidths” parameters in the second list.

I’m not sure if you can force deep analysis, it is usually performed (if enabled) during maintenance (Settings -> Scheduled Tasks). You can force a normal media analysis at any time, but, but I’m not sure if that adds the extra information gathered by the deep one:

Edit: I meant to also add that PMS may be able to play the second file (and any encoded like it) without transcoding (due to bandwidth limitations) if you up your restriction from 1.5 Mb/s to 2 Mb/s.

1 Like

This is the key. Yea!
Every file I try that has the “requiredBandwidths” attribute streams perfectly without transcoding! I tried to force an analysis on select files but they don’t seem to go deep, or at least do not add the magic attribute.

Off to do some googling…

Thank you!

Make sure this setting is enabled under Settings -> Scheduled Tasks:
image

This will cause PMS to perform deep analysis during its nightly maintenance. I’m not sure how long it takes to process a file though. It’s possible that it may not be able to get through your entire library in the time available during one maintenance period. It should make it through your entire library at some point though.

1 Like

I have it selected. I am “forcing” the scheduled tasks by temporarily changing the time to run to right now. I am letting it run as long as it needs. The bandwidth and cpu are dancing around, so I am hopeful the deep analysis will occur…

Let’s hope so.

I seem to always see Plex doing something about 12 hours outside the scheduled maintenance period - and it seems to always be Deep Analysis (if memory serves). The part of Plex Brain handling that - sniffed glue in it’s youth - 'cause it don’t know what time it is and apparently don’t care.

Okay, I can validate that deep analysis gives us the requiredBandwidths attribute needed to keep the server from transcoding when the needed bandwidth is close, but not over the available bandwidth, as identified by @pshanew:

And it does override the default “double” requirement as identified by @hokierulz.

The key here has to be the “requiredBandwidths” attribute in the individual media xml file and the “Deep Analysis” required to get that attribute. It allowed me to understand why two videos encoded by the same encoder using the same bitrate, resolution and audio would be acted on by the server so differently (one direct played one transcoded).

I hope this thread helps others and thank you to all who chimed in.

I love this hobby!!!

2 Likes

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