Inhoud
De aurale weergave van een document, tegenwoordig algemeen gebruikt door de blinden en print-beperkte gemeenschappen, combineert spraak synthese en "auditory icons." Dergelijke aurale presentatie komt dikwijls voor bij omzetting van het document in plain tekst en bij doorsturen naar een screen reader -- software of hardware die eenvoudigweg alle karakters op het scherm leest. Dit resulteert in minder effectieve presentatie dan het geval zou zijn als de document structuur behouden werd. Stylesheet eigenschappen voor aurale presentatie kunnen samen gebruikt worden met visuele eigenschappen (gemengde media) of als een auraal alternatief voor visuele presentatie.
Naast de vanzelfsprekende toegankelijkheidsvoordelen, zijn er andere grote markten voor luisteren naar informatie, inclusief in-de-auto gebruik, industriële en medische documentatiesystemen (intranetten), home entertainment en om gebruikers te helpen leren of voor iemand die moeilijkheden heeft om te lezen.
Wanneer aurale eigenschappen gebruikt worden, bestaat de canvas uit een drie-dimensionale fysieke ruimte (geluidsomgeving) en een tijdelijke ruimte (men kan geluiden specificeren voor, tijdens en na andere geluiden). De CSS eigenschappen laten auteurs ook toe om de kwaliteit van gesyntheseerder spraak te variëren (stemtype, frequentie, inflectie, etc.).
H1, H2, H3, H4, H5, H6 { voice-family: paul; stress: 20; richness: 90; cue-before: url("ping.au") } P.heidi { azimuth: center-left } P.peter { azimuth: right } P.goat { volume: x-soft }
Dit zal de spraaksynthesizer instructie geven om koppen in een stem (een soort "audio font") genoemd "paul", uit te spreken op een vlakke toon, maar in een zeer rijke stem. Voor de koppen uitgesproken worden zal een geluidssample gespeeld worden waarvan de URL gegeven is. Alinea's met class "heidi" zullen overkomen alsof ze van linksvooraan komen (als het geluidssysteem in staat is om geluiden ruimtelijk weer te geven) en alinea's met class "peter" lijken van rechts te komen. Alinea's met class "goat" zullen zeer zacht zijn.
Waarde: | <number> | <percentage> | silent | x-soft | soft | medium | loud | x-loud | inherit |
Startwaarde: | medium |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | verwijst naar geëfde waarde |
Media: | aural |
Volume verwijst naar het gemiddelde volume van de golfvorm. In andere woorden, een hoge stem op een volume van 50 kan gerust hierboven uitkomen. De waarden zijn waarschijnlijk aan te passen door de mens voor comfort, bijvoorbeeld met een fysieke volume regelaar (welke zowel de 0 als 100 waarden proportioneel zou verhogen); wat deze eigenschap doet is het aanpassen van het dynamische bereik.
Waarden hebben de volgende betekenissen:
User agents zouden moeten toelaten dat de waarden overeenkomend met '0' en '100' ingesteld worden door de luisteraar. Geen enkele instelling is universeel toepasbaar; geschikte waarden hangen af van de uitrusting die gebruikt wordt (speakers, headphones), de omgeving (in de auto, home theater, bibliotheek) en persoonlijke voorkeur. Enkele voorbeelden:
Hetzelfde auteur-stylesheet zou kunnen gebruikt worden in alle gevallen, door de '0' en '100' punten eenvoudig geschikt te mappen aan de client side.
Deze eigenschap specificeert of tekst auraal weergegeven wordt en als dit het geval is, op welke manier (ongeveer analoog aan de 'display' eigenschap). De mogelijke waarden zijn:
Merk het verschil op tussen een element waarvan de 'volume' eigenschap de waarde 'silent' heeft en een element waarvan de 'speak' eigenschep de waarde 'none' heeft. Het eerste neemt even veel tijd in beslag alsof het uitgeproken werd, inclusief elke pause voor en achter het element, maar er wordt geen geluid gegenereerd. Het tweede vereist geen tijd en wordt niet weergegeven (hoewel de nakomelingen ervan wel weergegeven kunnen worden).
Waarde: | <time> | <percentage> | inherit |
Startwaarde: | hangt af van user agent |
Van toepassing op: | alle elementen |
Geërfd: | nee |
Percentages: | zie tekst |
Media: | aural |
Waarde: | <time> | <percentage> | inherit |
Startwaarde: | hangt af van user agent |
Van toepassing op: | alle elementen |
Geërfd: | nee |
Percentages: | zie tekst |
Media: | aural |
Deze eigenscheppen specificeren een pause die waargenomen kan worden voor (of na) het uitspreken van de inhoud van een element. Waarden hebben de volgende betekenissen:
De pause wordt ingevoegd tussen de inhoud van het element en elke 'cue-before' of 'cue-after' inhoud.
Auteurs zouden relatieve eenheden moeten gebruiken om meer robuste stylesheets te maken met het vooruitzicht van grote wijzigingen in speech-rate.
Waarde: | [ [<time> | <percentage>]{1,2} ] | inherit |
Startwaarde: | hangt af van user agent |
Van toepassing op: | alle elementen |
Geërfd: | nee |
Percentages: | zie omschrijving van 'pause-before' en 'pause-after' |
Media: | aural |
De 'pause' eigenschap is een afkorting voor het instellen van 'pause-before' en 'pause-after'. Als twee waarden gegeven worden, is de eerste waarde 'pause-before' en de tweede is 'pause-after'. Als enkel één waarde gegeven is, geldt het voor beide eigenschappen.
H1 { pause: 20ms } /* pause-before: 20ms; pause-after: 20ms */ H2 { pause: 30ms 40ms } /* pause-before: 30ms; pause-after: 40ms */ H3 { pause-after: 10ms } /* pause-before: ?; pause-after: 10ms */
Waarde: | <uri> | none | inherit |
Startwaarde: | none |
Van toepassing op: | alle elementen |
Geërfd: | nee |
Percentages: | N/A |
Media: | aural |
Waarde: | <uri> | none | inherit |
Startwaarde: | none |
Van toepassing op: | alle elementen |
Geërfd: | nee |
Percentages: | N/A |
Media: | aural |
Hoorbare iconen zijn een andere manier om semantische elementen te onderscheiden. Geluiden kunnen afgespeeld worden voor en/of na het element om het af te bakenen. Waarden hebben de volgende betekenissen:
A {cue-before: url("bell.aiff"); cue-after: url("dong.wav") } H1 {cue-before: url("pop.au"); cue-after: url("pop.au") }
Waarde: | [ <'cue-before'> || <'cue-after'> ] | inherit |
Startwaarde: | niet gedefinieerd voor verkorte eigenschappen |
Van toepassing op: | alle elementen |
Geërfd: | nee |
Percentages: | N/A |
Media: | aural |
De 'cue' eigenschap is een verkorting voor het instellen van 'cue-before' en 'cue-after'. Als twee waarden gegeven zijn, is de eerste waarde 'cue-before' en de tweede 'cue-after'. Als enkel één waarden gegeven is, geldt het voor beide eigenschappen.
De volgende twee regels zijn equivalent:
H1 {cue-before: url("pop.au"); cue-after: url("pop.au") } H1 {cue: url("pop.au") }
Als een user agent een hoorbaar icon niet kan weergeven (bijvoorbeeld wanneer de gebruikersomgeving het niet toelaat), raden we aan om een alternatieve cue te produceren (bijvoorbeeld het tonen van een waarschuwing, een waarschuwingsgeluid, enz.)
Raadpleeg de delen over de :before en :after pseudo-elementen voor informatie over andere inhoudsgeneratietechnieken.
Waarde: | <uri> mix? repeat? | auto | none | inherit |
Startwaarde: | auto |
Van toepassing op: | alle elementen |
Geërfd: | nee |
Percentages: | N/A |
Media: | aural |
Vergelijkbaar met de 'cue-before' en 'cue-after' eigenschappen, specificeert deze eigenschap een geluid dat afgespeeld moet worden als een achtergrond terwijl de inhoud van een element element uitgesproken wordt. Waarden hebben de volgende betekenissen:
BLOCKQUOTE.sad { play-during: url("violins.aiff") } BLOCKQUOTE Q { play-during: url("harp.wav") mix } SPAN.quiet { play-during: none }
Ruimtelijk geluid is een belangrijke stylistische eigenschap voor aurale weergave. Het biedt een natuurlijke manier om verschillende stemmen van elkaar te onderscheiden, zoals in real life (mensen staan zelden allemaal op dezelfde plaats in een kamer). Stereo luidsprekers produceren een lateraal geluidsniveau. Binaurale hoofdtelefoons of de populairder wordende 5-luidspreker home theater opstellingen kunnen volledig surround sound genereren en multi-luidspreker opstellingen kunnen een waarheidsgetrouw 3D geluidsniveau weergeven. VRML 2.0 biedt ook ruimtelijk geluid, wat impliceert dat in afzienbare tijd consument-geprijsde ruimtelijke audio hardware meer beschikbaar zal worden.
Waarden hebben de volgende betekenissen:
Deze eigenschap wordt meestal geïmplementeerd door mixen van hetzelfde signaal in verschillende kanalen op verschillende volumes. Het mag eventueel ook faseverschuiving, digitale delay en andere vergelijkbare technieken gebruiken om de illusie van een geluidsbron na te bootsen. De exacte methode die gebruikt wordt om dit effect te bekomen en het aantal luidsprekers dat dat gebruikt wordt zijn afhankelijk van de user agent; deze eigenschap identificeert enkel het gewenste eindresultaat.
H1 { azimuth: 30deg } TD.a { azimuth: far-right } /* 60 graden */ #12 { azimuth: behind far-right } /* 120 graden */ P.comment { azimuth: behind } /* 180 graden */
Als ruimtelijke-azimuth gespecificeerd wordt en het uitvoerapparaat kan de geluiden achter de luisterpositie niet genereren, zouden user agenten de waarden in het achterwaardse luistergebied moeten converteren naar waarden voor het voorwaartse luistergebied. Een methode is als volgt:
Waarde: | <angle> | below | level | above | higher | lower | inherit |
Startwaarde: | level |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | N/A |
Media: | aural |
Waarden voor deze eigenschap hebben de volgende betekenissen:
De precieze manier die gebruikt wordt om dit effect te bekomen en het aantal luidsprekers gebruikt om dit te doen zijn ongedefinieerd. Deze eigenschap identificeert enkel het gewenste resultaat.
H1 { elevation: above } TR.a { elevation: 60deg } TR.b { elevation: 30deg } TR.c { elevation: level }
Waarde: | <number> | x-slow | slow | medium | fast | x-fast | faster | slower | inherit |
Startwaarde: | medium |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | N/A |
Media: | aural |
Deze eigenschap specificeert het spraaksnelheid. Merk opdat zowel absolute als relatieve sleutelwoordwaarden toegestaan zijn (vergelijk met 'font-size'). Waarden hebben de volgende betekenissen:
Waarde: | [[<specific-voice> | <generic-voice> ],]* [<specific-voice> | <generic-voice> ] | inherit |
Startwaarde: | hangt af van de user agent |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | N/A |
Media: | aural |
De waarde is een door komma's gescheiden, geprioritiseerde lijst van stemfamilienamen (vergelijk met 'font-family'). Waarden hebben de volgende betekenissen:
H1 { voice-family: announcer, male } P.part.romeo { voice-family: romeo, male } P.part.juliet { voice-family: juliet, female }
Namen van specifiek stemmen mogen tussen aanhalingstekens staan en moeten tussen aanhalingstekens staan als één van de woorden die de naam vormen niet voldoet aan de syntaxregels voor identificatoren. Het wordt ook aangeraden om specifieke stemmen met een naam die bestaat uit meer dan een woord tussen aanhalingstekens te zetten. Als aanhalingstekens weggelaten worden worden alle witruimtetekens voor en na de stemnaam genegeerd en elke reeks van witruimtetekens binnen de stemnaam wordt geconverteerd naar één witruimte spatie.
Waarde: | <frequency> | x-low | low | medium | high | x-high | inherit |
Startwaarde: | medium |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | N/A |
Media: | aural |
Specificeert de gemiddelde pitch (een frequentie) van de stem. De gemiddelde pitch van een stem hangt af van de stemfamilie. De gemiddelde pitch voor bijvoorbeeld een standaard mannenstem is rond 120Hz, maar voor een vrouwenstem is het rond 210Hz.
Waarden hebben de volgende betekenissen:
Waarde: | <number> | inherit |
Startwaarde: | 50 |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | N/A |
Media: | aural |
Specificeert variatie in gemiddelde pitch. De waargenomen pitch van een menselijke stem wordt bepaald door de fundamentele frequentie en heeft gewoonlijk aan waarde van 120Hz voor een mannenstem en 210Hz voor een vrouwenstem. Mensentalen worden uitgesproken met wisselende inflectie en pitch; deze variaties dragen aanvullende betekenis en nadruk. Een sterk geanimeerde stem, zoals een stem die sterk geïnflecteerd is, geeft een hoog pitch bereik. Deze eigenschap specificeer het bereik waarover deze variaties voorkomen, zoals hoeveel de basisfrequentie kan afwijken van de gemiddelde pitch.
Waarden hebben de volgende betekenissen:
Specificeert de hoogte van "plaatselijke pieken (local peaks)" in de intonatievorm van een stem. Engels is bijvoorbeeld een benadrukte taal en verschillende delen van een zin worden aangeduid als primair, secondair of tertiar benadrukt. De waarde van 'stress' bepaalt de grootte van inflectie die resulteert van deze nadrukmarkeerpunten. Deze eigenschap is gekoppeld aan de 'pitch-range' eigenschap en wordt voorzien om ontwikkelaars toe te laten om higher-end auditieve weergaven uit te baten.
Waarden hebben de volgende betekenissen:
Waarde: | <number> | inherit |
Startwaarde: | 50 |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | N/A |
Media: | aural |
Specificeert de rijkheid, of helderheid, van de stem. Een rijke stem zal "gedragen" worden in een grote kamer, een zachte stem niet. (De term "zacht" verwijst naar hoe de golfvorm uitziet wanneer deze getekend wordt.)
Waarden hebben de volgende betekenissen:
Een aanvullende speech eigenschap, speak-header wordt in het hoofdstuk over tabellen besproken.
Waarde: | code | none | inherit |
Startwaarde: | none |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | N/A |
Media: | aural |
Deze eigenschap specificeert hoe punctuatie uitgesproken wordt. Waarden hebben de volgende betekenissen:
Waarde: | digits | continuous | inherit |
Startwaarde: | continuous |
Van toepassing op: | alle elementen |
Geërfd: | ja |
Percentages: | N/A |
Media: | aural |
Deze eigenschap bepaalt hoe getallen uitgesproken worden. Waarden hebben de volgende betekenissen: