Open jake-abma opened 3 years ago
A mechanism provided by the platform is a 'turn off audio' functionality (all devices have one) and so IF sound plays on a web application, you have the opportunity to turn it off, basically escaping this SC all along? (I can stop the sound)
maybe splitting hairs, but "pause or stop the audio" (on the particular page) is different from "pause or stop all audio" (for everything on the device/system) [ED: i originally had written "pause and stop all audio". unintentional, didn't mean to change to "or" to "and", as my point was not that, but the difference between "the" and "all"]. The intention is clearly the first one, reinforced by the "independently from the overall system volume level" part of the normative wording of the SC later on when talking of volume levels.
now, many browsers on desktop do offer things like audio controls for individual tabs, and some operating systems do give you access (though not very easily) to individual volume controls on a per application basis, but i don't think those are quite pervasive enough yet (and certainly not on mobile/tablet OSs)
If a browser supports a mute tab feature then use of that browser likely would meet the criteria although we still tend to flag these issues as most situation users have varied browsers on mobile and PC platforms.
@patrickhlauke
maybe splitting hairs, but "pause or stop the audio" (on the particular page) is different from "pause and stop all audio" (for everything on the device/system). The intention is clearly the first one, reinforced by the "independently from the overall system volume level" part
But this is exactly where the question comes from, the intent was clear for me all along, not for people I have in training. 'stop the audio on the particular page' is just not what it says, and the 'reinforced' is not really 'reinforcing' as there is an 'OR'.
Your comment lacks the word 'OR' which plays a big part here, separating that part from the first.
Your comment lacks the word 'OR' which plays a big part here, separating that part from the first.
not quite sure what you mean. unless you're pointing out my slip-up putting "pause and stop all audio" when i should have written "pause or stop all audio". my point was the emphasis/difference between "the audio" and "all audio", and i slipped up in my haste to write this. corrected now.
No @patrickhlauke I meant the "or" in the SC text after the comma:
If any audio on a Web page plays automatically for more than 3 seconds, either a mechanism is available to pause or stop the audio, OR a mechanism is available to control audio volume independently from the overall system volume level.
(did not even see your 'or' ... :-) )
ah, gotcha. well, this smells like another long-standing miswording. i'm fairly sure the intent originally was not to say "it's ok, users just turn their sound off altogether, that counts as a mechanism, so all web content will pass anyway".
wonder if this needs a normative wording tweak then rather than an understanding patch...
If any audio on a Web page plays automatically for more than 3 seconds, either a mechanism is available to pause or stop the audio, or a mechanism is available to control audio volume for the web page's audio, independently from the overall system audio / volume level.
or more explicitly
If any audio on a Web page plays automatically for more than 3 seconds, either a mechanism is available to pause or stop the audio, or a mechanism is available to control audio volume for the web page's audio. This mechanism must be independent from the overall system audio/volume level.
+1 for a normative wording tweak, since time has proved that the current phrasing is not clear enough. But if we revisit this, I think it should be formatted as list. Here's a version that tracks closely to how 1.4.7 is structured:
For any audio on a Web page that (1) plays automatically, and (2) last for more than 3 seconds, at least one of the following is true:
Can this be Surveyed?
For any audio on a Web page that (1) plays automatically, and (2) last for more than 3 seconds, at least one of the following is true:
Pause or Stop: The Web page provides a mechanism to pause or stop the audio. Volume Control: The Web page provides a mechanism to control audio volume independently from the overall system volume level.
https://github.com/w3c/wcag/pull/1824 [edit: actually, preference now from me on this https://github.com/w3c/wcag/pull/1825]
actually, having mulled this over some more, here's an alternative https://github.com/w3c/wcag/pull/1825 - i believe it is kosher to say that the mechanism itself can also be provided by the UA/platform. what was missing, which is the crux of @jake-abma's conundrum, was that the pause/stop didn't specify that this must be possible to do independently from any other audio output on the system (thus, just going by the wording, it could be interpreted as "if they mute the whole audio of the device, they pass". my preference is now strongly for this second PR I made.
@patrickhlauke I think that works, but I think you could also easily put this rewording into a list form, as suggested by @bruce-usab
I'm supportive of either
@bruce-usab's rewording goes further than my suggestion in https://github.com/w3c/wcag/pull/1825 as it puts the emphasis back on the mechanism being provided by the "Web page", which is in direct contrast to what we're saying (that things like user agent controls to mute a tab are acceptable solutions if they're available consistently on all supported platforms). If we're keen on bullet points, the following may work:
If any audio on a Web page plays automatically for more than 3 seconds, at least one of the following is true:
Yeah, I think that is working fairly well. I do find a bit of friction in the second bullet when I think of this from an 'audio as part of video' scenario. What exactly do we mean by "any other audio output" when we're thinking of the video player itself? Does a mute button on the video player fully address this?
Also, how does this requirement align with https://www.w3.org/WAI/WCAG21/Understanding/low-or-no-background-audio ?
I realize that the preamble condition is different (plays automatically vs contains background music, essentially), but when I combine them, it's a little hard to understand how to apply it if the background music begins automatically some time before the dialog. Would using the mute button, which turns off both the background music and the not yet begun dialogue fail "independently from any other audio output" fail?
I do find a bit of friction in the second bullet when I think of this from an 'audio as part of video' scenario. What exactly do we mean by "any other audio output" when we're thinking of the video player itself? Does a mute button on the video player fully address this?
do you mean a standalone video player application acting as the user agent? or video inside a web page inside a browser? for standalone video player, unless it can play multiple videos/audio sources simultaneously, a single mute button should be sufficient. if, for some bizarre reason, the video player itself made sounds (like some sound effect or bloop or whatever when you press a button in its interface), then this would mean that you can turn off/lower volume of the video+audio, but keep the bloop effects of the player itself...
Would using the mute button, which turns off both the background music and the not yet begun dialogue fail "independently from any other audio output" fail?
the audio here is a single stream/source, no? so a single mute/volume control is all that's needed. if it's some kind of special synchronised media player that calls in different streams of content to play simultaneously (and this fact is clear to the user, not just something that happens silently behind the scenes), then yes the user should have a mechanism to control the volume of each source/stream independently...some kind of audio mixing setup. but i think those would be outliers...
Updated https://github.com/w3c/wcag/pull/1825 to use the proposed bullet list format from https://github.com/w3c/wcag/issues/1533#issuecomment-1103114670
Closed the original https://github.com/w3c/wcag/pull/1824 to avoid confusion
the audio here is a single stream/source, no? so a single mute/volume control is all that's needed.
Not for how Low or No background can be met, no. Second bullet
Turn Off The background sounds can be turned off.
well then the developer has to run the background and "foreground" audio as separate streams, and yeah in that case just having a single mute/volume control for all audio in the tab won't be sufficient. not surprising that a AAA SC requires more/stricter work than an A SC (as in, relying on a single mute/volume control would pass 1.4.2, but fail 1.4.7). but that should then be explained in the understanding for 1.4.7 Low or No Background Audio and not here.
it's possibly a distinction here in how multiple audio streams in the same web page are perceived by/exposed to the user. if behind the scenes audio is split into "one stream for background audio, one for foreground audio, but we run them simultaneously", then to the end user that's just a single "audio" event, and having a single pause or mute or volume control would, from a user's perspective, fulfill the requirement of the SC i'd say. (though for a user who needs the audio contrast of 1.4.7, that won't be enough).
From today we didn't get agreement on updating the SC text: https://www.w3.org/2022/08/16-ag-minutes.html#t10
However, I've updated #2621 with an understanding update to cover the same points.
I can't work out what the status of this is, as there have been several apparent attempts on dealing with it. I think the issue is "does a browser's 'mute tab' functionality count as a mechanism to pause or stop the audio", and I think the answer is "no".
Adding it to the backlog project for discussion by the group.
Intent is clear, also what is needed, BUT:
According to the wording/text and the definition of "mechanism" can I conclude that:
A mechanism provided by the platform is a 'turn off audio' functionality (all devices have one) and so IF sound plays on a web application, you have the opportunity to turn it off, basically escaping this SC all along? (I can stop the sound)
ps. should this 'platform provision / ability' be ruled out and made clear in the Understanding doc?