-
Notifications
You must be signed in to change notification settings - Fork 75
Replacing non-streaming audio with live audio #1661
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
I must've missed that part, what's inaccurate with "non-streaming"? |
This: #1446 (comment) |
_rules/audio-is-live-213x3x.md
Outdated
- playing; or, | ||
- has a "play button" that is [visible][] and [included in the accessibility tree][]. | ||
|
||
**Note:** A play button is an interactive element that when activated, plays the audio. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're trying to cut down on notes these days. Should that be moved to a definition?
Maybe "play button" = "instrument to play a media"?
_rules/audio-is-live-213x3x.md
Outdated
|
||
## Expectation | ||
|
||
The target element's [media resource](https://html.spec.whatwg.org/multipage/media.html#media-resource) is being broadcasted in real time without being first recorded and stored on the origin server. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"real time" is maybe a bit too strong since many "lives" are actually delayed by a few seconds to give editor an emergency hatch in case of accidents (broadcast delay).
Which does open a can of worms of what "live" actually means. WCAG's definition does mention the broadcast delay, so we should definitely accept it. But then how long of a broadcast delay is enough to be considered "pre recorded" and require captions… ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changing the expectation.
|
||
## Background | ||
|
||
- [Understanding SC 1.2.1:Audio-only and Video-only (Prerecorded)](https://www.w3.org/WAI/WCAG21/Understanding/audio-only-and-video-only-prerecorded) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are many SC about pre recorded media. We should list all or none (or maybe you plan to add the rest when the atomic rule is added to the other composites)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I'll address this one after sorting out this rule.
_rules/audio-is-live-213x3x.md
Outdated
This rule applies to every `audio` element that is: | ||
|
||
- playing; or, | ||
- has a "play button" that is [visible][] and [included in the accessibility tree][]. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This may be an artefact of the composite we currently work on. I am not sure about this condition. The rule could be very generic on any playing media.
Of course, not clear whether it's easier to first work on the specific version for this composite and then extend, or try to come up with the generic version immediately…
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It sounds reasonable to have an atomic for all media, but I'll also address this after sorting this rule first.
_rules/audio-is-live-213x3x.md
Outdated
|
||
#### Passed Example 1 | ||
|
||
This `audio` element plays a live media resource. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree that it is hard to find an institutional live media (audio or video)…
My best shot would be some "tourist" webcam that might be set up by cities or states (i.e. not private companies) and thus we could arguably endorse…
Something like https://www.skylinewebcams.com/en/live-cams-category/city-cams.html but we need to make sure of who is sharing the content 🤔
_rules/audio-is-live-213x3x.md
Outdated
|
||
## Expectation | ||
|
||
The target element's [media resource](https://html.spec.whatwg.org/multipage/media.html#media-resource) is being broadcasted in real time without being first recorded and stored on the origin server. | ||
For each test target one of the following is true: | ||
- it is not possible to [seek][] the end of the target element's [media resource][]; or |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like that 👍
OTOH, I'm not sure it's possible to "not be possible to seek". The algorithm seems to always return (possibly after doing nothing). Would that rather be part of the second bullet (and so the first can be removed)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe you are correct. I've updated the expectation accordingly.
Updated rule, now with a working example. |
_rules/audio-is-live-213x3x.md
Outdated
|
||
This `audio` element plays a live media resource by streaming the audio from the device's microphone. | ||
|
||
This example requires a browser supporting the experimental MediaStreamTrack API. The browser must be authorized to access a microphone. You can successfully test this example on Google Chrome with the flag --enable-blink-features=WebCodecs,MediaStreamInsertableStreams |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should (also) put that text inside the HTML page of the example itself.
That way, (manual) testers that navigate to the example's page (without necessarily going through the ACT rules page) would be able to see that text and act accordingly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This now seems related to #1679 since "give access to your mic" sounds a bit like a test instruction 🤔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Moved the note to the example so that manual testers are aware of the instructions
- Added a test instructions section after the description of the example
_rules/audio-is-live-213x3x.md
Outdated
|
||
#### Passed Example 1 | ||
|
||
This `audio` element plays a live media resource by streaming the audio from the device's microphone. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, have you tested that by "seeking" the end, to make sure this matches the expectation?
Wondering if the "seek" bit should be used also in examples descriptions 🤔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just found that MediaStream is not seekable! https://w3c.github.io/mediacapture-main/#mediastreams-in-media-elements
I will add this to the expectation and the example's description.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And I suppose this lands us again exactly where we were before... needing to find a live stream that we can use in the example 😞
d797a31
to
cee32c0
Compare
</script> | ||
</html> | ||
``` | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am assuming we are expanding these passed examples with real streaming audios/videos of broadcasting orgs, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That was the main idea.
As was also mentioned in TPAC, we might want to explore the possibility of W3C hosting a streaming server where we could serve the examples (we would just loop one of the videos we already use).
Updating '
audio
element content has text alternative' (#e7aa44) so that it no longer uses the non-streaming definition which was found to be inaccurateI'm looking for comments on:
After getting this change approved I'll open a new PR changing the other rules that also use the non-streaming definition
Need for Final Call:
This will require a 2 weeks Final Call
How to Review And Approve