WICG/web-codecs 259
WebCodecs is a flexible web API for encoding and decoding audio and video.
Interface to create and manage QUIC streams
Open Screen Protocol
Extension to the RTCIceTransport interface defined in WebRTC 1.0
Tunnel data over STUN (proof of concept)
A QUIC implementation in pure go
API to manage the rendering of audio on any audio output device
issue commentwebrtc/samples
Chrome 88 video captureStream not streaming video only audio
@guest271314 that's with no settings changed, clean profile. Does not work on macOS Chrome 88, does work on macOS Chrome 91
comment created time in 12 hours
issue commentw3c/webtransport
Discarding stale incoming datagrams
sgtm
comment created time in 12 hours
issue openedw3c/webtransport
Discarding stale incoming datagrams
This is a dual of #152.
When web developers do NOT read incoming datagrams from a WebTransport, incoming datagrams are stored in the ReadableStream (i.e., wt.datagrams.readable
). This is confusing so I'm proposing to discard stale incoming datagrams at the UnderlyingSource layer. Like #152, we can expose the expiration duration and high water mark to web developers.
created time in 14 hours
pull request commentw3c/webtransport
Specify "writeDatagrams" in more detail
@jan-ivar @aboba @ricea PTAL
comment created time in 18 hours
PR opened w3c/webtransport
- Define
sendDatagrams
that can be called at any time. - Specify timestamp and expiration duration handling in
writeDatagrams
.
Related to #179. This change adds internal slots but doesn't change the public interface.
pr created time in 18 hours
push eventw3c/webtransport
commit sha dcde3bf5a7c74ac15999c1e0d293c7201be74286
Specify "writeDatagrams" in more detail
push time in 18 hours
issue commentwebrtc/samples
RTCDataChannel - broken after reconnection
Story stays the same on 3/08/2021 Can we restart it somehow? The ice events appear to be connected & completed, but the data channel is not opened, still.
comment created time in 18 hours
pull request commentw3c/webtransport
Editorial: Align with Web IDL specification
It should be [Exposed=(Window,Worker)]
.
comment created time in 21 hours
push eventw3c/webtransport
commit sha 74769162fb07ea0f64720d6aa0ba978f5f83c553
fix
push time in 21 hours
push eventw3c/webrtc-pc
commit sha 7afce60f790f8881e3aaedbc540f7c874380bbec
Update to latest ReSpec version
commit sha de74080c5950741acade239ff5467d25bcff6e66
Merge pull request #2627 from w3c/respec-26.1.1 Update to latest ReSpec version
push time in 21 hours
PR merged w3c/webrtc-pc
Automated changes by create-pull-request GitHub action
pr closed time in 21 hours
Pull request review commentw3c/webtransport
Specify WebTransport initialization in more detail
agent MUST run the following steps: initialized to the result of [=DatagramDuplexStream/creating=] a {{DatagramDuplexStream}}, its [=DatagramDuplexStream/create/readable=] set to |transport|.{{[[IncomingDatagrams]]}}, and its [=DatagramDuplexStream/create/writable=] set to |transport|.{{[[OutgoingDatagrams]]}}.-1. If the scheme of |parsedURL| is `https`, [=in parallel=],- [=initialize WebTransport over HTTP=].+1. Let |transport| have an+ <dfn attribute for="WebTransport">\[[Connection]]</dfn> internal slot initialized to null.+1. Let |promise| be the result of [=initialize WebTransport over HTTP|initializing WebTransport+ over HTTP=], with |transport|, |parsedURL| and |dedicated|.+1. [=Upon fulfillment=] of |promise|, run these steps:+ 1. If |transport|'s {{[[WebTransportState]]}} internal slot is not `"connecting"`, then abort+ these steps.+ 1. Set |transport|'s {{[[WebTransportState]]}} internal slot to `"connected"`.+ 1. Resolve |transport|'s {{[[Ready]]}} internal slot with {{undefined}}.+1. [=Upon rejection=] of |promise| with |error|, run these steps:+ 1. Set |transport|'s {{[[WebTransportState]]}} internal slot to `"failed"`.+ 1. Reject |transport|'s {{[[Ready]]}} internal slot with |error|.+ 1. Reject |transport|'s {{[[Closed]]}} internal slot with |error|. 1. Return |transport|. <div algorithm="initialize WebTransport over HTTP">-To <dfn>initialize WebTransport over HTTP</dfn> for a given |transport| and-|parsedURL|, do the following:--1. If {{WebTransportOptions/serverCertificateFingerprints}} is specified, throw- a {{NotSupportedError}} exception.-1. Establish an HTTP/3 WebTransport session to the address identified by- |parsedURL| following the procedures in [[!WEB-TRANSPORT-HTTP3]].-1. If the session establishment fails, set |transport|'s {{[[WebTransportState]]}}- internal slot to `"failed"`, reject |transport|'s {{[[Ready]]}} with a- {{TypeError}} and abort these steps.-1. Set |transport|'s {{[[WebTransportState]]}} internal slot to `"connected"`.-1. Resolve |transport|'s {{[[Ready]]}} internal slot with {{undefined}}.+To <dfn>initialize WebTransport over HTTP</dfn>, given a {{WebTransport}} object+<var>transport</var>, a [=URL record=] |url|, a and boolean |dedicated|, run these steps.++1. Let |promise| be a new promise.+1. Return |promise| and run the following steps [=in parallel=].+1. Let |request| be a [=request=] whose [=request/url=] is |url| and [=request/client=]+ is |transport|'s [=relevant settings object=].+1. Let |networkPartitionKey| be the result of+ [=determine the network partition key|determining the network partition key=] with |request|.+1. Let |connection| be the result of [=obtain a connection|obtaining a connection=] with+ |networkPartitionKey|, |url|'s [=url/origin=], false, [=obtain a connection/http3Only=] set to+ true, and [=obtain a connection/dedicated=] set to |dedicated|.
Done.
comment created time in a day
Pull request review commentw3c/webtransport
Specify WebTransport initialization in more detail
agent MUST run the following steps: initialized to the result of [=DatagramDuplexStream/creating=] a {{DatagramDuplexStream}}, its [=DatagramDuplexStream/create/readable=] set to |transport|.{{[[IncomingDatagrams]]}}, and its [=DatagramDuplexStream/create/writable=] set to |transport|.{{[[OutgoingDatagrams]]}}.-1. If the scheme of |parsedURL| is `https`, [=in parallel=],- [=initialize WebTransport over HTTP=].+1. Let |transport| have an
Done.
comment created time in a day
Pull request review commentw3c/webtransport
Specify WebTransport initialization in more detail
To <dfn>initialize WebTransport over HTTP</dfn> for a given |transport| and <pre class="idl"> dictionary WebTransportOptions {+ bool dedicated;
Done.
comment created time in a day
push eventw3c/webtransport
commit sha 6b37d6fa6bbe030bc35cd59c289a0cd6807f214d
fix
push time in a day
PR opened w3c/webrtc-pc
Automated changes by create-pull-request GitHub action
pr created time in a day
issue commentwebrtc/samples
Chrome 88 video captureStream not streaming video only audio
For what it's worth that same example is working on macOS Chrome Canary Version 91.0.4435.0 (Official Build) canary (x86_64)
Is hardware acceleration enabled?
The same result as described at https://github.com/webrtc/samples/issues/1412#issuecomment-790619837 persists at Chromium 91.0.4440.0 (Developer Build) (64-bit) Revision cd195d11510f86a8a863443a2f3b0bd3c45b71b5-refs/heads/master@{#860605}
comment created time in a day
issue closedwebrtc/samples
for the word "best", it doesn't have any indication to define "best" media experience. is it a too subjective word? may i suggest to delete it or define it ?
https://github.com/webrtc/samples/blob/59a335a23c5c5d9a55edc5dfae70f2ade8975ea8/src/content/extensions/multipleroutes/src/_locales/en/messages.json#L3
closed time in 2 days
ricksentamissue closedwebrtc/samples
https://webrtc.github.io/samples can't access
Please read first!
Please use discuss-webrtc for general technical discussions and questions.
- [ ] I have provided steps to reproduce
- [ ] I have provided browser name and version
- [ ] I have provided a link to the sample here or a modified version thereof
Note: If the checkboxes above are not checked (which you do after the issue is posted), the issue will be closed.
Browser affected
Browser name including version (e.g. Chrome 64.0.3282.119)
Description
Steps to reproduce
Expected results
Actual results
closed time in 2 days
yoghurtxuissue commentwebrtc/samples
"most likely to have the minimum RTT" is what is meant by "best"
comment created time in 2 days
issue closedwebrtc/samples
Trickle ICE cannot work on chrome 77 under window 10
When i upgraded chrome to 77.0.3865.90, pull newest code of webrtc/samples with gh-pages branches. when i run the Trickle ICE online demo, it occurs erorr:
The server stun:stun.l.google.com:19302 returned an error with code=701: STUN host lookup received error.
if i use chrome version of 76, it works well. i don't konw what webrtc changes on newest chrome version of 77 ?
closed time in 2 days
deajoshaissue commentwebrtc/samples
Trickle ICE cannot work on chrome 77 under window 10
As noted in the latest version of the samples, DNS errors can be caused by a lookup on an interface that is not connected to the internet (e.g., the Docker bridge noted above), but these errors are not fatal.
The reason this started in Chrome 77 was that previously the onicecandidateerror event was not implemented.
comment created time in 2 days
Pull request review commentw3c/webtransport
Specify WebTransport initialization in more detail
agent MUST run the following steps: initialized to the result of [=DatagramDuplexStream/creating=] a {{DatagramDuplexStream}}, its [=DatagramDuplexStream/create/readable=] set to |transport|.{{[[IncomingDatagrams]]}}, and its [=DatagramDuplexStream/create/writable=] set to |transport|.{{[[OutgoingDatagrams]]}}.-1. If the scheme of |parsedURL| is `https`, [=in parallel=],- [=initialize WebTransport over HTTP=].+1. Let |transport| have an
nit: s/an/a/
comment created time in 2 days
Pull request review commentw3c/webtransport
Specify WebTransport initialization in more detail
agent MUST run the following steps: initialized to the result of [=DatagramDuplexStream/creating=] a {{DatagramDuplexStream}}, its [=DatagramDuplexStream/create/readable=] set to |transport|.{{[[IncomingDatagrams]]}}, and its [=DatagramDuplexStream/create/writable=] set to |transport|.{{[[OutgoingDatagrams]]}}.-1. If the scheme of |parsedURL| is `https`, [=in parallel=],- [=initialize WebTransport over HTTP=].+1. Let |transport| have an+ <dfn attribute for="WebTransport">\[[Connection]]</dfn> internal slot initialized to null.+1. Let |promise| be the result of [=initialize WebTransport over HTTP|initializing WebTransport+ over HTTP=], with |transport|, |parsedURL| and |dedicated|.+1. [=Upon fulfillment=] of |promise|, run these steps:+ 1. If |transport|'s {{[[WebTransportState]]}} internal slot is not `"connecting"`, then abort+ these steps.+ 1. Set |transport|'s {{[[WebTransportState]]}} internal slot to `"connected"`.+ 1. Resolve |transport|'s {{[[Ready]]}} internal slot with {{undefined}}.+1. [=Upon rejection=] of |promise| with |error|, run these steps:+ 1. Set |transport|'s {{[[WebTransportState]]}} internal slot to `"failed"`.+ 1. Reject |transport|'s {{[[Ready]]}} internal slot with |error|.+ 1. Reject |transport|'s {{[[Closed]]}} internal slot with |error|. 1. Return |transport|. <div algorithm="initialize WebTransport over HTTP">-To <dfn>initialize WebTransport over HTTP</dfn> for a given |transport| and-|parsedURL|, do the following:--1. If {{WebTransportOptions/serverCertificateFingerprints}} is specified, throw- a {{NotSupportedError}} exception.-1. Establish an HTTP/3 WebTransport session to the address identified by- |parsedURL| following the procedures in [[!WEB-TRANSPORT-HTTP3]].-1. If the session establishment fails, set |transport|'s {{[[WebTransportState]]}}- internal slot to `"failed"`, reject |transport|'s {{[[Ready]]}} with a- {{TypeError}} and abort these steps.-1. Set |transport|'s {{[[WebTransportState]]}} internal slot to `"connected"`.-1. Resolve |transport|'s {{[[Ready]]}} internal slot with {{undefined}}.+To <dfn>initialize WebTransport over HTTP</dfn>, given a {{WebTransport}} object+<var>transport</var>, a [=URL record=] |url|, a and boolean |dedicated|, run these steps.++1. Let |promise| be a new promise.+1. Return |promise| and run the following steps [=in parallel=].+1. Let |request| be a [=request=] whose [=request/url=] is |url| and [=request/client=]+ is |transport|'s [=relevant settings object=].+1. Let |networkPartitionKey| be the result of+ [=determine the network partition key|determining the network partition key=] with |request|.+1. Let |connection| be the result of [=obtain a connection|obtaining a connection=] with+ |networkPartitionKey|, |url|'s [=url/origin=], false, [=obtain a connection/http3Only=] set to+ true, and [=obtain a connection/dedicated=] set to |dedicated|.
At some point (not sure if here is optimal) we should reject the promise if user requests to allow pooling, but serverCertificateFingerprints
is non-empty.
comment created time in 2 days
Pull request review commentw3c/webtransport
Specify WebTransport initialization in more detail
To <dfn>initialize WebTransport over HTTP</dfn> for a given |transport| and <pre class="idl"> dictionary WebTransportOptions {+ bool dedicated;
I think it's a little bit counterintuitive when a parameter is true by default and the user has to set it to false. How about allowPooling
? This also makes it clear that while the user can allow pooling, it is not guaranteed to happen.
comment created time in 2 days
pull request commentWICG/web-codecs
Establish codec registry and AVC registration.
@padenot FYI
comment created time in 3 days
pull request commentWICG/web-codecs
Establish codec registry and AVC registration.
@aboba - looks like the pr-preview link at the bottom of the description only supports a preview of the main spec (known issue). Here are some links to the generated HTML to assist in review.
https://storage.googleapis.com/videostack-external/webcodecs_pr_149/index.html https://storage.googleapis.com/videostack-external/webcodecs_pr_149/codec_registry.html https://storage.googleapis.com/videostack-external/webcodecs_pr_149/avc_codec_registration.html
For now I've just done the AVC registration. Other registrations will be follow up PRs (not urgent, not blocking anything).
comment created time in 3 days
pull request commentWICG/web-codecs
Establish codec registry and AVC registration.
@tidoust FYI - this is what I'd like to land before the FPWD transition.
comment created time in 3 days