Improve default live quality increase settings to work with live streams playing at ~3 segments live offset.
See original GitHub issueI’m reproducing an issue with all versions of ExoPlayer from 2.13.0 to 2.16.1 where ExoPlayer does not switch to a higher resolution on a Live DASH stream with AVC video tracks.
ExoPlayer starts playing the 896x504 track then never chooses 1280x720 or 1920x1080 even if there is enough network bandwidth.
Here is the list of available video tracks:
MediaCodecVideoRenderer [
Group:0, adaptive_supported=YES [
[X] Track:0, id=1209, mimeType=video/avc, bitrate=400000, codecs=avc1.64000d, drm=[widevine,cenc], res=384x216, fps=25.0, supported=YES
[X] Track:1, id=1211, mimeType=video/avc, bitrate=800000, codecs=avc1.64001e, drm=[widevine,cenc], res=640x360, fps=25.0, supported=YES
[X] Track:2, id=1212, mimeType=video/avc, bitrate=1600000, codecs=avc1.64001f, drm=[widevine,cenc], res=896x504, fps=25.0, supported=YES
[X] Track:3, id=1213, mimeType=video/avc, bitrate=3000000, codecs=avc1.64001f, drm=[widevine,cenc], res=1280x720, fps=25.0, supported=YES
[X] Track:4, id=1214, mimeType=video/avc, bitrate=4800000, codecs=avc1.640028, drm=[widevine,cenc], res=1920x1080, fps=25.0, supported=YES
]
]
As stream URL and DRM info are sensitive, I’ll provide you by email a sample code hosted on a private GitHub repository to help you reproduce the issue. Please let me know if you need anything else.
Issue Analytics
- State:
- Created 2 years ago
- Comments:8 (4 by maintainers)
Top Results From Across the Web
How to Improve Live Streaming Quality in 8 Steps (2022 Update)
Professional broadcasting requires top-notch live streaming quality. Here are 8 the best tips on how to improve your live streaming quality.
Read more >BEST Stream Quality Settings 2022 - YouTube
Learn to understand how to get the best quality you can out of OBS to stream to various platforms! Learn all about Bitrate,...
Read more >Manage live stream settings - YouTube Help
Manage live stream settings. Choosing the correct stream settings can help you reach the right audience and get the best quality stream. Note:...
Read more >draft-pantos-hls-rfc8216bis-12 - IETF Datatracker
1. Low-Latency Server Configuration Profile Playing at a reduced delay from live requires certain stream and transport features to support the timely delivery ......
Read more >RFC 8216: HTTP Live Streaming
RFC 8216 HTTP Live Streaming August 2017 3. Media Segments A Media Playlist contains a series of Media Segments that make up the...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
I see, thanks for pointing this out! This edge case only applies if
availableDurationUs > configured configured minDurationForQualityIncreaseUs
, but theadjusted minDurationForQualityIncreaseUs < configured minDurationForQualityIncreaseUs
. Will update the condition to always choose the minimum of adjusted and configuredminDurationForQualityIncreaseUs
.Hi @tonihei with the above insight provided against this issue still being present for 4 Second segments with a 4 second update period can I ask would you be able to reopen this ticket to handle this permutation also?
Can I also ask in the interim of this issue not being merged and the above 4sec segment issue observed what would recommend for segment update and segment length to not encounter this issue? Do you see an issue with 2Sec segments with a 4second update for example.