WebRTC?

Topics:

  • More detailed information from congestion control & network stack
  • Chrome dev tool network throttling only works for HTTP (& not webRTC)
  • FF: Trying to figure out how to make webRTC better as fast as possible
  • Standardized ways to start a WebRTC? session
  • How to get to SDP (the medium, websockets, http etc.)
  • Maybe just best practices or advisement
  • Browser consistency, and efforts to maintain consistency
  • The future of WebRTC? in other spaces - will the spec be expanded to meet new use cases?
  • Safari support/issues
  • Edge support/issues (data channel)
  • Live captioning
  • Intersection of WebRTC? and MSE

Current Usecases:

  • Playback
  • Integrated into players
  • Use datachannels to distribute (as opposed to HTTP)
  • Use MSE to play
  • ABR

Desires:

  • Low latency streaming
  • Better than current implementations (youtube: 30s is called low latency)
  • Conversation/conferencing
  • Broadcasting/Video Delivery
  • Expanded use as a delivery mechanism
  • Captions
  • Bugfixes
  • Multicasting through the browser
  • Should browsers support this usecase?

Challenges:

  • Tooling/Debug info
  • Congestion control not exposed
  • Current window size not exposed
  • A lot of information is burned within the stack
  • Existing bugs, esp. difficult ones
  • Main thread instability when sending small chunksx
  • Lowering overall latency - WebRTC? is just a part of it
  • Datachannels not synced to a/v channels
  • Fitting RTMP into WebRTC?
  • Possible, but not straightforward
  • Does not scale with traditional CDNs?; focused on P2P?
  • Roundtrip time calculated through ICE only & not messages
  • Interopability - lack of consistency across browsers
  • Audio/video/data channels
  • Safari only supports new promise-based implementation
  • Differences between implementations of tcp/udp
  • Fast bootstrap without ICE
  • Does the spec meet the real-world usecases of broadcasting?
  • Lack of process around changing the WebRTC? stack
  • Currently happens in the standards body (is this an issue?)
  • Lack of maturity around the implementation
  • Synchronization
  • Can't match events with time of video
  • A/v sync
  • Prioritization of a/v
  • Performance
  • Multi-conferencing
  • APIs? changing too often/without signaling
  • Browsers: what do we prioritize?
  • Engineers: spec can be vague
  • Standardization of signaling
  • But does it need a standard? (Silvia: no)

Action Items:

  • Maybe: clarify spec on usage of data channel w/r/t video streaming (hls, etc.)
  • Is a transport format standardization necessary?
  • Submit web platform tests
  • Improves interop
  • Browsers can work off the same list
  • Helps prioritize
  • The world runs on tests
  • Submit spec bugs against vagueness
  • Submit bugs when you find them
  • WebRTC? working group should look at MSE/live streaming usecases
  • Join & propose ideas to working group