videojs / http-streaming

HLS, DASH, and future HTTP streaming protocols library for video.js
https://videojs-http-streaming.netlify.app/
Other
2.45k stars 419 forks source link

feat: request Content Steering manifest #1419

Closed adrums86 closed 10 months ago

adrums86 commented 10 months ago

Description

This is the first step toward full content steering support in VHS. This pull request will add the ContentSteeringController class which will allow VHS to parse content steering tags from both the m3u8 and mpd parsers, request and parse a content steering manifest, and listen to events from the content-steering-controller that will notify VHS of changes in content steering data.

Specific Changes proposed

Adding a new ContentSteeringController class that will likely live in the playback-controller, parsing content steering tags as they appear in the main manifest. Also requesting the steering manifest when required, and reacting to changes in the steering manifest and playback state.

Requirements Checklist

codecov[bot] commented 10 months ago

Codecov Report

Merging #1419 (1326a15) into main (c246ca1) will increase coverage by 0.16%. The diff coverage is 99.21%.

@@            Coverage Diff             @@
##             main    #1419      +/-   ##
==========================================
+ Coverage   85.58%   85.75%   +0.16%     
==========================================
  Files          41       42       +1     
  Lines       10156    10284     +128     
  Branches     2352     2374      +22     
==========================================
+ Hits         8692     8819     +127     
- Misses       1464     1465       +1     
Files Changed Coverage Δ
src/content-steering-controller.js 99.21% <99.21%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more