Prioritize codec in a multi codecs m3u8 manifest or lowest bandwidth at equal resolution

Hi guys,

I would like to know if there is a way to prioritize a codec (H265) in a multi codecs (H264 and H265) manifest? or lowest BANDWIDTH at the same RESOLUTION

Today, it's easy to write multiple variants with different BANDWIDTH, CODEC and RESOLUTION values.

But H264 Bandwidths are by construction higher than the H265 ones.

Imagine you have multiple variants, that I write here sorted by bandwidth ascending

#EXT-X-STREAM-INF:BANDWIDTH=280000,CODECS="mp4a.40.2,hvc1.2.4.L90.90",RESOLUTION=864x467 #EXT-X-STREAM-INF:BANDWIDTH=450000,CODECS="mp4a.40.2,avc1.4D401E",RESOLUTION=512x276 #EXT-X-STREAM-INF:BANDWIDTH=809000,CODECS="mp4a.40.2,hvc1.2.4.L93.90",RESOLUTION=1280x691 #EXT-X-STREAM-INF:BANDWIDTH=874000,CODECS="mp4a.40.2,avc1.4D401E",RESOLUTION=640x345 #EXT-X-STREAM-INF:BANDWIDTH=1263000,CODECS="mp4a.40.2,hvc1.2.4.L93.90",RESOLUTION=1280x691 #EXT-X-STREAM-INF:BANDWIDTH=1404000,CODECS="mp4a.40.2,avc1.4D401F",RESOLUTION=864x467 #EXT-X-STREAM-INF:BANDWIDTH=2607000,CODECS="mp4a.40.2,hvc1.2.4.L120.90",RESOLUTION=1920x1037 #EXT-X-STREAM-INF:BANDWIDTH=2782000,CODECS="mp4a.40.2,avc1.4D401F",RESOLUTION=1024x553 #EXT-X-STREAM-INF:BANDWIDTH=4902000,CODECS="mp4a.40.2,avc1.4D401F",RESOLUTION=1280x691 #EXT-X-STREAM-INF:BANDWIDTH=5962000,CODECS="mp4a.40.2,avc1.640028",RESOLUTION=1920x1037

Current situation : We see that some players start from the lowest bandwidth and then switch until reaching the highest bandwidth they can. Some use the highest BANDWIDTH=5962000. Note that for the same resolution, you have one variant in H265 with BANDWIDTH=2607000

Expected behaviour : If the device/player supports H265, use H265 with the highest priority or At equal resolutions, use the lowest BANDWIDTH (which will be H265 here)

Do you have any suggestions to reach the expected behaviour?

Thanks Edouard

Prioritize codec in a multi codecs m3u8 manifest or lowest bandwidth at equal resolution
 
 
Q