-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Milestones
dsilhavy edited this page Mar 11, 2020
·
8 revisions
Note: Some of the features mentioned below will be work items for multiple milestones as they have a high complexity and a wide scope.
- Issue/Pull request tracking: https://github.com/Dash-Industry-Forum/dash.js/milestone/35
- Robust Multiperiod Support [Feature/Bugfix]
- Collect a wide set of testvectors
- Create a spreadsheet to collect test results for all vectors
- Test the vectors against the latest dash.js version to isolate problematic vectors
- Apply fixes based on specific test vectors
- Robust Live Segment Timeline playback
- Offline Playback [Code Review]
- Review implementation made by Orange
- General bugfixing/improvements
- Restructure Wiki
- Review Pull requests
- Work on open issues
- Review/Test RC 3.0.2
Note: Some of the features mentioned below will be work items for multiple milestones as they have a high complexity and a wide scope.
- Issue/Pull request tracking: https://github.com/Dash-Industry-Forum/dash.js/milestone/34
- Robust Multiperiod Support [Feature/Bugfix]
- Collect a wide set of testvectors
- Create a spreadsheet to collect test results for all vectors
- Test the vectors against the latest dash.js version to isolate problematic vectors
- Apply fixes based on specific test vectors
- Offline Playback [Code Review]
- Review implementation made by Orange
- General bugfixing/improvements
- Restructure Wiki
- Review Pull requests
- Work on open issues
- Review/Test RC 3.0.2
- Implement Common-Media-Client-Data specification
See also: Link
- BaseURL
- Box Parser
- Multiple Adaptation Support API
- Multiple Audio Track
- Multiple Lang Support
- TrickPlay
- Multiperiod DRM/EME Protection
- xlink onrequest
- Safari Support
Label Info:
- Backlog labels have been applied to "nice to have items" but are not obligated to make 1.4 release.
- Bug, Enhancement, and Documentation labels will have a Priority Label as well to rank them.
Please make sure you assign yourself to the issue if you are working on it!
-
Milestone 1.4 Planning:
- Performance
- Optimize Starting bit rate selection
- Startup and Post seek buffer profiles, fast start vs stable. settable properties.
- Live edge detection
- Scheduling Simplifications. (If possible and mutually agreeable)
- EME-DRM
- Bug Fixes
- Design and implementation that extends on what we currently support.
- Multiperiod
- Design and implementation that extends on what we currently support.
- See if video.js wants to work on custom UI for multiperiod?
- API & Documentation
- MediaPlayer and Child Object Public API (ie video model etc.)
- Events
- Metrics API
- Value Object Properties.
- Header License Consistency and Wiki Docs.
- Project Structure
- Node compliance (package.json at root.)
- Distribution Solution for Min file and JSDocs.
- General Bug Fixes.
- Performance
-
Allow for the following components to be easily substituted:
-
Manifest parsing
-
Segment parsing (to allow MBFF, TS and other segmenrt types to be support
-
Switching rules and adaption logic
-
Buffering logic
-
Request sequencing logic
-
Retry and error handling
- Load and parse the conformance manifests listed in the Reference Samples page. These are pulled from the DASH264 v0.9 test cases.
- Understand and be able to interpret the following segment addressing schemes:
2. SegmentTemplate 2. SegmentTimeline 2. SegmentList 2. SegementBase - Sequence and request the appropriate video and audio segments
- Append the media data correctly via the MediaSource API.
- Implement adaption logic to switch between video and audio representations as throughput fluctuates.
- Implement pause/resume/seek functionality.
- Detect and manage end-of-stream.
- Output statistic matching ISO23009-1
- Video display area.
- Native play/pause/seek/vol controls are acceptable.
- Ability to select from a pulldown that includes at least the test sample content. New selections should make the test url visible so that it can be copied for reference.
- Ability to add a custom mpd url that is not in the pulldown.
- Debug trace, with enable/disable as well as filter.
- Detect if MSE is not supported in the browser and if it isn't, notify the user in a clear manner and do not load (or disable) any input or display components.
- Basic On-Demand
- Multi-resolution Video
- Multiple Audio Representations
- Addition of Timed Text
- Multiple Periods
- Encryption and key rotation
- Dynamic Segment Offering
- Dynamic Offering with MPD Update
- Trick Mode