Skip to content

Latest commit

 

History

History
231 lines (196 loc) · 7.06 KB

roadmap.md

File metadata and controls

231 lines (196 loc) · 7.06 KB

Shaka Player Roadmap

This doc shows all past and planned future milestones for Shaka Player, with brief details about the goals and rough dates of each milestone. This is not a comprehensive list of features or fixes for each release. For that, see CHANGELOG.md.

The goals of future milestones are fluid until we begin that development cycle, so the exact milestone for future features is not pre-determined.

Candidate features for future release cycles:

  • Background fetch for offline storage #879
  • A method to stitch together clips #764
  • Predict next segment in DASH SegmentTimeline #898
  • Smaller, more modular binary

v5.0

  • Conversion to Typescript

v4.12 - 2024 Q4

  • Performance improvements
  • HLS - Make dummy streams for tags representing muxed audio #5836
  • Enable AirPlay in MSE #5022
  • DASH compatibility with FairPlay

=====

v4.11 - 2024 Q3

  • HLS: EXT-X-START support
  • HLS: EXT-X-I-FRAME-STREAM-INF support
  • Basic support of VAST and VMAP without IMA (playback without tracking)
  • DASH: DVB Fonts
  • TTML: IMSC1 (CMAF) image subtitle
  • Render native cues using text displayer #2585

v4.10 - 2024 Q3

  • HLS support for EXT-X-DATERANGE #3523
  • HLS interstitials #3364

v4.9 - 2024 Q2

  • DASH patch manifests #2228
  • DASH: MPD chaining #3926
  • Support CS on devices that don't support multiple media elements #2792

v4.8 - 2024 Q2

  • Preload API #880
  • AES-256 and AES-256-CTR (HLS) #6001
  • Detect maximum HW resolution automatically on some platforms
  • UI support for VR content

v4.7 - 2023 Q4

  • Common Media Server Data (CMSD) #5890
  • DASH: Handle mixed-codec variants #5961
  • Allow Media Source Recoveries
  • UI: Add double tap to forward/rewind in the video #3357
  • Improve npm package size #2172

v4.6 - 2023 Q4

  • Content Steering #5704
  • New DASH protocol for Low Latency.
  • ManagedMediaSource #5271
  • Add thumbnails support in src=
  • Remove state engine

v4.5 - 2023 Q4

  • Built-in transmuxer support for muxed content streams (audio+video)
  • Built-in transmuxer support for H265 streams
  • Remove optional mux.js dependency
  • Codec switching #1528
  • AES-128 in DASH. #5622
  • AWS Elemental MediaTailor

v4.4 - 2023 Q3

  • Built-in transmuxer for common cases, no mux.js required:
    • Raw AAC, AC3, or EC3 to MP4 container
    • AAC, AC3, EC3, MP3, or H264 in TS to MP4 container
    • MP3-in-TS to raw MP3
  • Ads API improvements
  • CEA parser for TS
  • HLS support for non-sequence mode (as we had in v3)
  • Partial support for large timestamps
  • UI support for thumbnails on seek
  • Microsoft SmoothStreaming support
  • Segment prefetch
  • Low latency improvements

v4.3 - 2022 Q4

  • Support ID3 tags in mp4 #3351
  • Lazy-load HLS playlists on adaptation #1936
  • HLS key rotation #741

v4.2 - 2022 Q3

  • Automatic ABR quality restrictions based on size #2333
  • HLS support for AES-128 encryption #850

v4.1 - 2022 Q2

  • HLS support for EXT-X-GAP #1308
  • Temporarily disable the active variant after HTTP_ERROR #1542

v4.0 - 2022 Q2

  • MSE support for FairPlay #3346
  • Support containerless formats #2337

v3.3 - 2022 Q1

  • Common Media Client Data (CMCD) logging support #3619
  • Non-linear IMA CS ads #3639

v3.2 - 2021 Q3

  • MediaCapabilities to make performance-based decisions #1391
  • Configurable key-system priority #3002
  • Codec order preferences #2179

v3.1 - 2021 Q2

  • Low-latency live (LL-HLS, LL-DASH) #1525
  • Own CEA parser, use mux.js only for TS #2648
  • Thumbnail tracks DASH: #559 HLS: #2429

v3.0 - 2020 Q2

  • Code health improvements
  • Conversion to ES6
  • Isolate DASH periods to the DASH parser
  • HLS discontinuity support
  • IMA ad SDK integration
  • Ad controls in the UI
  • Concurrent Storage operations

v2.5 - 2019 Q2

  • Video controls UI API
  • FairPlay & iOS support
  • CEA captions in HLS/CMAF and DASH w/ mux.js
  • Single-file playback
  • DASH drift tolerance

v2.4 - 2018 Q2

  • TTML and VTT regions
  • CEA captions in HLS/TS
  • Attach/detach API

v2.3 - 2017 Q4

  • HLS live
  • Transmux TS w/ mux.js
  • NetworkInformation API to improve bandwidth estimates
  • ES6 transition begins

v2.2 - 2017 Q3

  • HLS event-type playlists
  • TextDisplayer interface
  • DASH xlink support

v2.1 - 2017 Q2

  • HLS VOD, clear & Widevine only, no CEA
  • DASH trick mode tracks
  • Async network filters

v2.0 - 2016 Q3

  • Multi-period DASH
  • Chromecast API
  • TTML, VTT-in-MP4, and TTML-in-MP4
  • Safari, Firefox, & Opera support
  • Plugin system (manifest parsers, network filters, text parsers)
  • DASH emsg box support
  • DASH IPR support

v1.6 - 2015 Q4

  • IE11, Edge, & PlayReady support
  • Chromecast added to demo app

v1.5 - 2015 Q3

  • Unified configuration system
  • Multiple DASH BaseURL elements for failover
  • Side-loaded text streams

v1.4 - 2015 Q3

  • Code health release
  • DASH Location element support
  • Buffering config API
  • License preprocessing API

v1.3 - 2015 Q2

  • DASH live
  • Offline playback

v1.2 - 2015 Q1

  • DASH Role element support

v1.1 - 2015 Q1

  • EME API updates

v1.0 - 2014 Q4

  • DASH VOD (MP4 & WebM)
  • VTT subtitles, rendered by the browser
  • Widevine support