hong...@chromium.org, ajayra...@google.com
N/A - the specification (W3C Recommendation) is already published.
https://www.w3.org/TR/webaudio/#dom-audiocontext-outputlatency
AudioContext.outputLatency property is the estimation in seconds of audio output latency.
Technically, this is the interval between the time the UA requests the host system to play a buffer and the time at which the first sample in the buffer is actually processed by the audio output device. For devices such as speakers or headphones that produce an acoustic signal, this latter time refers to the time when a sample’s sound is produced.
Completed: Web Audio API specification is W3C Recommendation.
Completed: Web Audio API specification is W3C Recommendation.
There is a risk of the feature being used for fingerprinting. However outputLatency is the buffer size of the platform-provided audio callback, so the value is inherently platform-specific. That said, the majority of the platform audio buffer size is widely known. (MacOS = 128 frames, Windows = 10ms, Android = 96 frames, etc)
This feature does not expose more than what you can query/infer from the UA string.
Gecko: Shipped/Shipping
WebKit: No signal
Web developers: Positive (https://github.com/WebAudio/web-audio-api/issues/12)
Other signals: A WebCodecs demo application needs this feature.
No - this property represents a platform-provided output latency value of a selected audio device. It does not work properly without an actual audio device.
N/A
False
98
https://chromestatus.com/feature/5682265146261504
This intent message was generated by Chrome Platform Status.
Contact emails
hong...@chromium.org, ajayra...@google.com
Explainer
N/A - the specification (W3C Recommendation) is already published.
Specification
https://www.w3.org/TR/webaudio/#dom-audiocontext-outputlatency
Summary
AudioContext.outputLatency property is the estimation in seconds of audio output latency.
Technically, this is the interval between the time the UA requests the host system to play a buffer and the time at which the first sample in the buffer is actually processed by the audio output device. For devices such as speakers or headphones that produce an acoustic signal, this latter time refers to the time when a sample’s sound is produced.
Blink component
TAG review
Completed: Web Audio API specification is W3C Recommendation.
TAG review status
Completed: Web Audio API specification is W3C Recommendation.
Risks
There is a risk of the feature being used for fingerprinting. However outputLatency is the buffer size of the platform-provided audio callback, so the value is inherently platform-specific. That said, the majority of the platform audio buffer size is widely known. (MacOS = 128 frames, Windows = 10ms, Android = 96 frames, etc)
This feature does not expose more than what you can query/infer from the UA string.
Interoperability and Compatibility
Gecko: Shipped/Shipping
Web developers: Positive (https://github.com/WebAudio/web-audio-api/issues/12)
Other signals: A WebCodecs demo application needs this feature.
Is this feature fully tested by web-platform-tests?
No - this property represents a platform-provided output latency value of a selected audio device. It does not work properly without an actual audio device.
Flag name
N/A
Requires code in //chrome?
False
Tracking bug
Launch bug
Estimated milestones
98
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5682265146261504
This intent message was generated by Chrome Platform Status.
--
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAHB%2BDAgeEo86rN4TrL4n8DutRczgXAogTwYLTo%2BPZco84aMq%3Dg%40mail.gmail.com.
On Fri, Nov 12, 2021 at 5:33 PM 'Ajay Rahatekar' via blink-dev <blin...@chromium.org> wrote:
TAG review status
Completed: Web Audio API specification is W3C Recommendation.
Risks
There is a risk of the feature being used for fingerprinting. However outputLatency is the buffer size of the platform-provided audio callback, so the value is inherently platform-specific. That said, the majority of the platform audio buffer size is widely known. (MacOS = 128 frames, Windows = 10ms, Android = 96 frames, etc)
This feature does not expose more than what you can query/infer from the UA string.
Would that exposure map cleanly to UA-Platform, which is considered low-entropy and exposed by default? Or would it add more than that?
/cc +Mike Taylor
Looking at
https://www.w3.org/TR/webaudio/#dom-audiocontext-outputlatency, it
states that it depends on the platform _and_ the hardware output
device. If I use an app using outputLatency with speaker A, then
switch to speaker B, will the outputLatency remain the same?
On Fri, Nov 12, 2021 at 5:33 PM 'Ajay Rahatekar' via blink-dev <blin...@chromium.org> wrote:Contact emails
hong...@chromium.org, ajayra...@google.com
Explainer
N/A - the specification (W3C Recommendation) is already published.
Regardless, could you add a few sentences explaining what use cases the feature targets and how developers are expected to use it?
Specification
https://www.w3.org/TR/webaudio/#dom-audiocontext-outputlatency
Summary
AudioContext.outputLatency property is the estimation in seconds of audio output latency.
Technically, this is the interval between the time the UA requests the host system to play a buffer and the time at which the first sample in the buffer is actually processed by the audio output device. For devices such as speakers or headphones that produce an acoustic signal, this latter time refers to the time when a sample’s sound is produced.
Blink component
TAG review
Completed: Web Audio API specification is W3C Recommendation.
Link to the TAG review?
TAG review status
Completed: Web Audio API specification is W3C Recommendation.
Risks
There is a risk of the feature being used for fingerprinting. However outputLatency is the buffer size of the platform-provided audio callback, so the value is inherently platform-specific. That said, the majority of the platform audio buffer size is widely known. (MacOS = 128 frames, Windows = 10ms, Android = 96 frames, etc)
This feature does not expose more than what you can query/infer from the UA string.
Would that exposure map cleanly to UA-Platform, which is considered low-entropy and exposed by default? Or would it add more than that?/cc +Mike Taylor
Interoperability and Compatibility
Gecko: Shipped/Shipping
Link?
Web developers: Positive (https://github.com/WebAudio/web-audio-api/issues/12)
Other signals: A WebCodecs demo application needs this feature.
Is this feature fully tested by web-platform-tests?
No - this property represents a platform-provided output latency value of a selected audio device. It does not work properly without an actual audio device.
I'm guessing it is tested using browser tests or unit tests without an audio device, right?Have y'all filed bugs against WPT to enable testing it similarly?
If that's the case, then outputLatency can reveal more entropy
than just platform alone, right? It would be useful to know what
this looks like in practice, or what mitigations we might be able
to apply depending on the size of these latency differences.
Mitigation strategies include adding jitter (dithering) and quantization so that the exact skew is incorrectly reported
Note however that most audio systems aim for low latency, to synchronise the audio generated by WebAudio to other audio or video sources or to visual cues (for example in a game, or an audio recording or music making environment). Excessive latency decreases usability and may be an accessibility issue.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGJqXNv9r4hew4pknp-7iLHjP5hUY2mh1EkrHLFaeQaBzQf5VA%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/936f3e2f-2001-0449-13fd-d3a0548b673c%40chromium.org.