Common Media Library

Common media library:

Overview:

  • The CML is a JS/TS library. Some RUST work.
  • Purpose: consolidate standards-based features into one library. One source of truth.
  • Modularity: Every single class / utility function is independent. You can import the functions you need.
  • License: Apache 2

Current functions:

  • CMCD
  • CMSD
  • 608 captions
  • id3 data tags

Players:

  • hls.js
  • dash.js

Next:

  • Integrate on Shaka (solve NPM). Joey is willing to do that!
  • 708 captions
  • Captions rendering (consistent rendering on players, browsers, TVs?)
  • CMAF HAM

Discussion:

  • Will Law: Are other players integrating this? (theo, bitmovin, video.js, etc.)
  • Luke Curley: Are you thinking about porting to non-web players?
  • Subtitles and captions rendering challenges
  • Discussions around WASM vs JS
  • Test cases: becomes a valuable part of the library
  • Alex Z: Do you see CML intended for MSE based players or extended to native players?
  • Will L.: Why do we have so many open-source players? Is there a future of a shared player that has a common interface? Is there a push in that direction. Some players perform better than others on different platforms.
  • Production vs. Reference players
  • Heff: There’s no one-size fits all

Common Error codes:

Overview:

  • A lot of players out there
  • Motivation came from QoE? group
  • When you are looking at error codes on the backend, it’s difficult to realize what it is if you don’t know which player it came from.
  • Standardized error codes, 5 or 6 digits
  • Is the WG focused on identifying the error cases?
    • QoE? people working on the back-end identifying what’s being received
    • Player group working on what the player is spitting out

Discussion:

  • Joey: Having significant digits on the left representing the error category and on the right for specific error cores. Having a common set would be great
  • Will: would commercial players be willing to implement this?
  • Chromium: tried something similar, but it’s a huge fingerprinting.They have a few 1000s different error codes. They are limited to what they can say to js.
  • Will: There are 60+ ways to report a media-report error.

Aspects:

  • figuring out categories
  • players vs. lower platforms

Action Items: