#531: WebRTC Insertable Streams

Visit on Github.

Opened Jun 29, 2020

Hello TAG!

I'm requesting a TAG review of WebRTC Insertable Streams.

WebRTC Insertable Streams is a proposed API that allows the insertion of user-defined processing steps in the pipeline that handles media in a WebRTC context. It defines a number of extensions to objects defined in WEBRTC-PC, and it draws upon some definitions originally proposed for WEB-CODECS.

Further details:

  • I have reviewed the TAG's API Design Principles
  • The group where the work on this specification is currently being done: W3C WebRTC Working Group
  • The group where standardization of this work is intended to be done (if current group is a community group or other incubation venue): W3C WebRTC Working Group
  • Major unresolved issues with or opposition to this specification: None for the API itself, but more work needed for future modules (e.g., end-to-end encryption module, support for raw media frames) to better support use cases.
  • This work is being funded by: Google

We'd prefer the TAG provide feedback as (please delete all but the desired option): 💬 leave review feedback as a comment in this issue and @-notify @guidou and @alvestrand

Discussions

Discussed Jul 1, 2020 (See Github)

Dan: [reviewing explainer]

Yves: they are using transform streams.. seems good.

Sangwhan: the pattern stuff is fine, the use cases are fine... does it interact with anything other than WebRTC? The answer would seem to be no.

Yves: possibility to hide computation-intensive processing here... bitcoin mining.

Sangwhan: why do we not have video/media worklets? Audio has audio worklets. WebRTC has their own thing. If you want to do video preprocessing in a worker or service worker there's no nice way to do it except at bitstream level...

Dan: Where could it be?

Sangwhan: HTML media...

Yves: transform streams...

Sangwhan: latency requirement was a real problem. you don't get the latency guarantee.

[bumped

Discussed Jul 1, 2020 (See Github)

[punt to plenary

Comment by @guidou Jul 8, 2020 (See Github)

cc @alvestrand @dontcallmedom

Discussed Aug 1, 2020 (See Github)

Yves: We were waiting for Sangwhan's feedback, Tess added herself to the list of reviewers.

Sangwhan: I remember looking at this briefly... seemed ok to me.

Yves: Some question about why audio worklet over streams... mostly historical... not sure if they would choose streams now. Might make sense to use streams now instead?

Sangwhan: I don't have strong objections. Unless Tess or Yves have strong objections..

Yves: I'm ok to propose close and ask Tess at the plenary if she agrees.

Comment by @ylafon Aug 19, 2020 (See Github)

Hi, The TAG reviewed this specification this week and is happy with the way it is progressing. Thank you for asking the TAG for review.

Comment by @jan-ivar Jul 22, 2024 (See Github)

Would the TAG like to re-review this in light of https://github.com/w3ctag/design-principles/pull/404?

There are competing implementations over this.