Deep Analysis requiredbandwidths incorrect

Server Version#:1.42.2.10122 on windows
Player Version#: latest - N/A

A remote client tried streaming a media that lists as 1800kbps - the server decided to transcode unnecessarily. Upon checking into the media I noticed the requiredbandwidths seemed quite wrong - requiredBandwidths=“40781,20191,15469,15469,15469,15469,15469,15469”

How is this calculated? I tried running a manual command line deep analysis on the file and nothing changed. What influences these numbers? The client should have just direct played this (compatible codecs and low bitrates) but instead it complained there wasn’t enough bandwidth to play it!?

Thanks for any help.

this might help:

<Part accessible="1" exists="1" id="148039" key="/library/parts/1439/1515190/file.mkv" duration="3255419" file="blah.mkv" size="738759122" audioProfile="he-aac" container="mkv" deepAnalysisVersion="6" requiredBandwidths="40983,20393,15530,15530,15530,15530,15530,15530" videoProfile="main 10">
<Stream id="349664" streamType="1" default="1" codec="hevc" index="0" bitrate="1815" bitDepth="10" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="1080" codedWidth="1920" colorPrimaries="bt709" colorRange="tv" colorSpace="bt709" colorTrc="bt709" frameRate="23.976" height="1080" level="120" profile="main 10" refFrames="1" requiredBandwidths="40781,20191,15469,15469,15469,15469,15469,15469" width="1920" displayTitle="1080p" extendedDisplayTitle="1080p (HEVC Main 10)"> </Stream>
<Stream id="349665" streamType="2" selected="1" default="1" codec="aac" index="1" channels="6" bitrate="204" language="English" languageTag="en" languageCode="eng" audioChannelLayout="5.1" profile="he-aac" requiredBandwidths="204,204,204,204,204,204,204,204" samplingRate="48000" displayTitle="English (HE-AAC 5.1)" extendedDisplayTitle="English (HE-AAC 5.1)"> </Stream>
<Stream id="349666" streamType="3" canAutoSync="0" default="1" codec="srt" index="2" bitrate="0" language="English" languageTag="en" languageCode="eng" requiredBandwidths="1,1,1,1,1,1,1,1" displayTitle="English" extendedDisplayTitle="English (SRT)"> </Stream>
<Stream id="349667" streamType="3" canAutoSync="0" codec="srt" index="3" bitrate="0" language="English" languageTag="en" languageCode="eng" hearingImpaired="1" original="1" requiredBandwidths="1,1,1,1,1,1,1,1" title="SDH" displayTitle="English SDH" extendedDisplayTitle="SDH (English SRT)"> </Stream>
</Part>

Keep in mind that the bitrate in the file is the average. Depending on how the file is encoded, there can be peaks that are many times higher. The required bitrate varies takes these peaks into account. It also depends on the buffer size of the client. The list goes from small to large so the smaller the buffer, the more bandwidth you need.

1 Like

See Help with bitrate and the linked post therein.

2 Likes

Very helpful, thanks for the explanation! FFBitrateViewer told the whole story for me.