Streaming bandwidth

How does plex determine how much bandwidth to use/reserve?

I only ask because plex streams all my media at double the rate of the overall bitrate. Today i noticed a ‘2674 kbps’ (overall bitrate) movie streaming at 35mbps. Video codec was fine but it was playing DTS audio which ive now converted to aac stereo, removed any subtitles involved yet plex still wants to reserve 35mbps. I always feel like ive figured this stuff out but then something like this completely throws me off. Is plex perhaps showing an inaccurate figure? Does anyone know of any external tools i can use that can give me a real-time view of the bandwidth?

Thankyou!

it’s via the deep scan, when you make media changes, analyze the library again, or perform the plex dance for that media if it doesn’t work, so that it can re-read the new information. If it’s reserving 35Mbps, that tells me it hasn’t deep scanned that file, or there was an error when it deepscanned it causing the issue. Also, that media could have a huge burst of bitrate somewhere in it and Plex is reserving based on the peak bitrate not the average/overall bitrate.

Am I the only one that thinks we should be able to trigger one of those?
and
Does anybody really know when that happens?
and
What is Plex doing for hours about halfway between scheduled maintenance periods?

2 of those questions are rhetorical - I’ll let you decide which…lol

Pretty sure that’s what “Analyze” is, no?

No, I don’t think so… standard analyse is different from deep.
Standard, I would guess, finds audio and sub tracks (VPT calculations) for instant playback.
Deep - does a cavity search.

…as I understand it.

I assumed it scans the audio, video, and subtitles to figure out the best way to playback a file based on the types, containers, codecs and bitrates, but I could have assumed wrong. If that’s not what it does, then it’s a useless function, and needs to be written so that Analyze, triggers a deepscan :smiley:

Yea, but we’re users trying to incorporate (user) logic into the proceedings… our first mistake…lol

I don’t know if it’s important for us to know - need to know and all that - but I am made more curious by the fact there are two sets of logs - Diet Analyse and Full Flavored.

What goes on and when is a mystery.

Does it come with skinny Latte?

1 Like

Skinny indeed. That happens as it’s rebooting…

1 Like

how do i know if theres a ‘bitrate burst’ and how does one fix this problem? You can’t deep scan according to plex as its not a feature anymore. Why would they remove a feature that fixed a problem? is it now a paid feature? With Plex pass do you get access to a help line?

You don’t really - you just know it’s gonna happen.

Plex only works with 80% of the upload bandwidth, then it factors in ‘Peaks’, then it extrapolates a ‘suitable’ bit rate window. If your file falls outside that determination - transcode.

The only real ‘fix’ is to encode with a set bit rate - then guestimate that rate so it fits WELL into the upload/download windows.

Nope

Yep - ur using it, just like everybody else here on the forum.
Plex Pass doesn’t grant you special support.
Never did.
Never will.

1 Like

I take it the ‘overall bitrate’ doesn’t define the actual streamed bitrate because it doesnt factor in spikes. There was me using the over all bitrate as the 1 defining factor. Is there any setting within an encoding software like ‘handbrake’ that would allow me to set a max bitrate so i can contain the peaks around 10mbps?

go via VBR mode, and then there’s a CLI line you can put into the advanced settings. I don’t know it off the top of my head, but you can look at their CLI stuff on their page. Coincidentally, if you want to switch from Handbrake to Staxrip, you can freely set in staxrip without doing commandline stuff, however, Staxrip has so many more options it may seem more complicated than handbrake does…

Edit: Scratch the command line for handbrake, I guess they removed it, or I am thinking about ffmpeg again.

1 Like

Deep analysis is alive and healthy. But it’s only done via scheduled tasks, because it requires the whole file to be read from start to finish.
The rest didn’t change much since I wrote this up: What is Media Analysis & Do I Need It

1 Like

Ahhh thanks, helping understand this abit more, i’ll look more into VBR/CBR i think im on the right track cheers.

that looks like a good read thanks m8. the term ‘deep analysis’ isnt something i can see within scheduled tasks. Would this option be appropriate for this?
“Perform extensive media analysis during maintenance”

That’s the one.

Once this analysis has been performed, you should be able to see the results in the Plex XML info.
Look out for the requiredBandwidths=" properties.

1 Like
<Media id="17607" duration="9752863" bitrate="2674" width="1280" height="544" aspectRatio="2.35" audioChannels="6" audioCodec="dca" videoCodec="h264" videoResolution="720" container="mkv" videoFrameRate="24p" audioProfile="dts" videoProfile="high">
<Part accessible="1" exists="1" id="18134" key="/library/parts/18134/1582240590/file.mkv" duration="9752863" file="E:\Bollywood_E\Taare Zameen Par 2007 Hindi 720P BRRip x264 E-SuB xRG\Taare Zameen Par 720P BRRip xRG.mkv" size="3259764127" audioProfile="dts" container="mkv" deepAnalysisVersion="4" requiredBandwidths="33393,30421,23274,13705,5338,5144,5144,5144" videoProfile="high">
<Stream id="36473" streamType="1" codec="h264" index="0" bitrate="1906" language="English" languageCode="eng" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="544" codedWidth="1280" frameRate="23.976" hasScalingMatrix="0" height="544" level="41" profile="high" refFrames="4" requiredBandwidths="32595,29624,22476,12907,4540,4371,4371,4371" scanType="progressive" title="TZP 720P BRRip xRG" width="1280" displayTitle="720p (H.264)"/>
<Stream id="36474" streamType="2" codec="dca" index="1" channels="6" bitrate="768" language="हिन्दी, हिंदी" languageCode="hin" audioChannelLayout="5.1(side)" bitDepth="16" profile="dts" requiredBandwidths="755,755,755,755,755,755,755,755" samplingRate="48000" title="TZP 720P BRRip xRG" displayTitle="हिन्दी, हिंदी (DTS 5.1)"/>
<Stream id="36975" streamType="2" selected="1" default="1" codec="aac" index="2" channels="2" audioChannelLayout="stereo" profile="he-aac" requiredBandwidths="43,43,43,43,43,43,43,43" samplingRate="48000" displayTitle="Unknown (HE-AAC Stereo)"/>
<Stream id="36403" key="/library/streams/36403" streamType="3" codec="srt" format="srt" displayTitle="Unknown (SRT External)"/>
</Part>
</Media>

So i’ve checked the xml info and it does seem like its performed a deep analysis and according to bitrate viewer (great software btw) it concurs bitrate viewer

I guess the movies need to be encoded for constant bitrate as opposed to constant quality, especially for remote streaming.

But you can also see that if your player device had a network buffer of 75 MB size, this peak at the begining of the movie won’t matter that much anymore.

Those various numbers in requiredBandwidths are the required bitrates for 5/10/25/50/75/100/250/500MB network buffer sizes.

i’ll be honest, im not sure what you mean by network buffer size? when i do play the movie it stuttered around those peaks, the player device (firestick) i’ve just tested and its receiving 30-40mbps dl as an average