我使用 MediaConverter 制作了一个.MDP,它具有以下视频流
<AdaptationSet mimeType="video/mp4" frameRate="30/1" segmentAlignment="true" subsegmentAlignment="true" startWithSAP="1" subsegmentStartsWithSAP="1" bitstreamSwitching="false">
<Representation id="1" width="3840" height="1920" bandwidth="67300000" codecs="avc1.4d4033">
<BaseURL>index3.3840.1920.cmfv</BaseURL>
<SegmentBase indexRange="764-1091">
<Initialization range="0-763"/>
</SegmentBase>
</Representation>
<Representation id="2" width="3840" height="1920" bandwidth="67300000" codecs="avc1.4d4033">
<BaseURL>index5.3840.1920.cmfv</BaseURL>
<SegmentBase indexRange="764-1091">
<Initialization range="0-763"/>
</SegmentBase>
</Representation>
<Representation id="3" width="3840" height="1920" bandwidth="67300000" codecs="avc1.4d4033">
<BaseURL>index7.3840.1920.cmfv</BaseURL>
<SegmentBase indexRange="764-1091">
<Initialization range="0-763"/>
</SegmentBase>
</Representation>
<Representation id="4" width="3840" height="1920" bandwidth="67300000" codecs="avc1.4d4033">
<BaseURL>index9.3840.1920.cmfv</BaseURL>
<SegmentBase indexRange="764-1091">
<Initialization range="0-763"/>
</SegmentBase>
</Representation>
</AdaptationSet>
<AdaptationSet mimeType="audio/mp4" lang="und" segmentAlignment="0">
<Representation id="5" bandwidth="96000" audioSamplingRate="48000" codecs="mp4a.40.2">
<BaseURL>indexaudio.cmfa</BaseURL>
<SegmentBase indexRange="658-985">
<Initialization range="0-657"/>
</SegmentBase>
</Representation>
</AdaptationSet>
这是使用具有以下设置的文件生成的
new VideoCodecSettings()
.withCodec(VideoCodec.H_264)
.withH264Settings(
new H264Settings()
.withCodecLevel(H264CodecLevel.LEVEL_4_2)
.withMaxBitrate(maxBitRate)
.withRateControlMode("QVBR")
.withQvbrSettings(new H264QvbrSettings()
.withQvbrQualityLevel(quality)
).withSceneChangeDetect("TRANSITION_DETECTION")
)
)
当我播放它时 Shaka Player - 它只检测到一个可用的变体,并且只会播放初始流。
Shaka 播放器具有默认配置,但启用了 ABR。
这是因为所有带宽都相同吗?
我已经配置了 QVBR 这不是最好的方法吗?