Closed adrums86 closed 6 months ago
All modified and coverable lines are covered by tests :white_check_mark:
Comparison is base (
88a5671
) 86.02% compared to head (4eeafc5
) 86.12%. Report is 1 commits behind head on main.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Description
After doing some further testing with HLS and playlist exclusion by keyId, it became apparent some more fixes were needed to properly request and filter all possible variants.
I also added a fallback mechanism and additional logging. I was testing another asset with no matching keys and it seemed necessary to at least TRY and play the non-HD playlists if we have previously excluded them due to non-usable or non-matching keyIds.
Specific Changes proposed
Listening to
loadedplaylist
and callingexcludeNonUsablePlaylistsByKeyId_
andfastQualityChange
when a new playlist is loaded. This allows theplaylist-controller
to check the keyId in the loaded or refreshed playlist for an HLS variant, or a refreshed DASH manifest.Also, add a conditional after the playlist exclusion loop that checks if we excluded all of the playlists due to non-usable status or non-matching keys and re-includes all the SD playlists and logs a warning. This provides VHS with a bit more resilience against unexpected manifests or license data.
Requirements Checklist