Skip to content

Commit 9c1e4a6

Browse files
committed
updated computed value definition, and inheritance example
1 parent e52b13f commit 9c1e4a6

2 files changed

Lines changed: 134 additions & 75 deletions

File tree

css3-speech/Overview.html

Lines changed: 66 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -2150,8 +2150,9 @@ <h3 id=voice-props-voice-pitch><span class=secno>10.3. </span>The &lsquo;<a
21502150
<tr>
21512151
<td> <em>Computed value:</em>
21522152

2153-
<td>an absolute frequency or keyword value, and potentially, a
2154-
frequency, semitone, or percentage representing any non-zero offsets
2153+
<td>an absolute frequency, or a keyword value and potentially also a
2154+
frequency, semitone, and/or percentage representing any non-zero
2155+
offsets
21552156
</table>
21562157

21572158
<p>The &lsquo;<a href="#voice-pitch"><code
@@ -2176,10 +2177,10 @@ <h3 id=voice-props-voice-pitch><span class=secno>10.3. </span>The &lsquo;<a
21762177
<p> A value in <a href="#frequency-def">frequency</a> units (Hertz or
21772178
kiloHertz, e.g. "100Hz", "+2kHz"). Values are restricted to positive
21782179
numbers when the &lsquo;<code class=property>absolute</code>&rsquo;
2179-
keyword is used. Otherwise (when the &lsquo;<code
2180-
class=property>absolute</code>&rsquo; keyword is not used), a negative
2181-
value represents an decrement, and a positive value represents an
2182-
increment (relative to the inherited value). For example, "2kHz" is a
2180+
keyword is specified. Otherwise (when the &lsquo;<code
2181+
class=property>absolute</code>&rsquo; keyword is not specified), a
2182+
negative value represents a decrement, and a positive value represents
2183+
an increment, relative to the inherited value. For example, "2kHz" is a
21832184
positive offset (strictly equivalent to "+2kHz"), and "+2kHz absolute"
21842185
is an absolute frequency (strictly equivalent to "2kHz absolute").</p>
21852186

@@ -2291,8 +2292,9 @@ <h3 id=voice-props-voice-range><span class=secno>10.4. </span>The &lsquo;<a
22912292
<tr>
22922293
<td> <em>Computed value:</em>
22932294

2294-
<td>an absolute frequency or keyword value, and potentially, a
2295-
frequency, semitone, or percentage representing any non-zero offsets
2295+
<td>an absolute frequency, or a keyword value and potentially also a
2296+
frequency, semitone, and/or percentage representing any non-zero
2297+
offsets
22962298
</table>
22972299

22982300
<p> The &lsquo;<a href="#voice-range"><code
@@ -2317,10 +2319,10 @@ <h3 id=voice-props-voice-range><span class=secno>10.4. </span>The &lsquo;<a
23172319
<p> A value in <a href="#frequency-def">frequency</a> units (Hertz or
23182320
kiloHertz, e.g. "100Hz", "+2kHz"). Values are restricted to positive
23192321
numbers when the &lsquo;<code class=property>absolute</code>&rsquo;
2320-
keyword is used. Otherwise (when the &lsquo;<code
2321-
class=property>absolute</code>&rsquo; keyword is not used), a negative
2322-
value represents an decrement, and a positive value represents an
2323-
increment (relative to the inherited value). For example, "2kHz" is a
2322+
keyword is specified. Otherwise (when the &lsquo;<code
2323+
class=property>absolute</code>&rsquo; keyword is not specified), a
2324+
negative value represents a decrement, and a positive value represents
2325+
an increment, relative to the inherited value. For example, "2kHz" is a
23242326
positive offset (strictly equivalent to "+2kHz"), and "+2kHz absolute"
23252327
is an absolute frequency (strictly equivalent to "2kHz absolute").</p>
23262328

@@ -2340,8 +2342,7 @@ <h3 id=voice-props-voice-range><span class=secno>10.4. </span>The &lsquo;<a
23402342
(semitones). A semitone is half of a tone (a half step) on the standard
23412343
diatonic scale. As such, a semitone doesn't correspond to a fixed
23422344
frequency: the ratio between two consecutive frequencies separated by
2343-
exactly one semitone is the twelfth root of two (approximately 1.05946).
2344-
</p>
2345+
exactly one semitone is the twelfth root of two (approximately 1.05946).</p>
23452346

23462347
<dt> <strong>&lt;percentage&gt;</strong>
23472348

@@ -2350,17 +2351,17 @@ <h3 id=voice-props-voice-range><span class=secno>10.4. </span>The &lsquo;<a
23502351
are allowed, to represent an increment or decrement (respectively)
23512352
relative to the inherited value. Computed values are calculated by
23522353
adding (or subtracting) the specified fraction of the inherited value,
2353-
to (from) the inherited frequency value. For example, 50% (which is
2354-
equivalent to +50%) with a inherited value of 200Hz results in <code>200
2355-
+ (200*0.5)</code> = 300Hz. Conversely, -50% results in
2354+
to (from) the inherited value. For example, 50% (which is equivalent to
2355+
+50%) with a inherited value of 200Hz results in <code>200 +
2356+
(200*0.5)</code> = 300Hz. Conversely, -50% results in
23562357
<code>200-(200*0.5)</code> = 100Hz.</p>
23572358

23582359
<dt><strong>x-low</strong>, <strong>low</strong>, <strong>medium</strong>,
2359-
<strong>high</strong> and <strong>x-high</strong>
2360+
<strong>high</strong>, <strong>x-high</strong>
23602361

23612362
<dd>
2362-
<p>A sequence of monotonically non-decreasing pitch ranges that are
2363-
implementation and language-dependent.</p>
2363+
<p>A sequence of monotonically non-decreasing pitch levels that are
2364+
implementation and voice specific.</p>
23642365
</dl>
23652366

23662367
<p> Computed absolute frequency values that are negative are clamped to
@@ -2377,24 +2378,52 @@ <h3 id=voice-props-voice-range><span class=secno>10.4. </span>The &lsquo;<a
23772378

23782379
<pre>
23792380
&lt;body&gt;
2380-
&lt;parent&gt;
2381-
&lt;child&gt;
2382-
&lt;grandchild&gt;
2383-
...
2384-
&lt;/grandchild&gt;
2385-
&lt;/child&gt;
2386-
&lt;/parent&gt;
2387-
&lt;/body&gt;
2388-
2389-
body { voice-range: inherit; } /* the initial value is 'medium' */
2390-
parent { voice-range: 200Hz absolute; } /* override with an absolute frequency */
2391-
child { voice-range: 2st; } /* the computed value is [200Hz + two semitones] */
2392-
grandchild { voice-range: inherit;
2393-
voice-family: "another-voice"; } /* the computed value is the same as
2394-
for "child", but the voice is different so the
2395-
calculated (used) absolute frequency
2396-
may be completely different,
2381+
&lt;e1&gt;
2382+
&lt;e2&gt;
2383+
&lt;e3&gt;
2384+
&lt;e4&gt;
2385+
&lt;e5&gt;
2386+
...
2387+
&lt;/e5&gt;
2388+
&lt;/e4&gt;
2389+
&lt;/e3&gt;
2390+
&lt;/e2&gt;
2391+
&lt;/e1&gt;
2392+
&lt;/body&gt;
2393+
2394+
2395+
2396+
2397+
body { voice-range: inherit; } /* the initial value is 'medium'
2398+
(the actual frequency value
2399+
depends on the active voice) */
2400+
2401+
e1 { voice-range: +25%; } /* the computed value is
2402+
['medium' + 0.25 times the frequency
2403+
corresponding to 'medium'] */
2404+
2405+
e2 { voice-range: inherit; /* this could be omitted,
2406+
but we explicitly specify it for clarity purposes */
2407+
2408+
voice-family: "another-voice"; } /* the computed value is the same as
2409+
for "e1", but here the voice is different,
2410+
so once calculated, the used absolute frequency
2411+
may be completely different
23972412
due to voice-dependent discrepancies */
2413+
2414+
e3 { voice-range: 200Hz absolute; } /* override with an absolute frequency
2415+
which doesn't depend on the active voice */
2416+
2417+
e4 { voice-range: 2st; } /* the computed value is an absolute frequency,
2418+
which is the result of the
2419+
calculation: 200Hz + two semitones */
2420+
2421+
e5 { voice-range: inherit; /* this could be omitted,
2422+
but we explicitly specify it for clarity purposes */
2423+
2424+
voice-family: "yet-another-voice"; } /* the computed value is the same as
2425+
for "e4" (i.e. an absolute frequency value,
2426+
independent from the active voice) */
23982427
</pre>
23992428
</div>
24002429

css3-speech/Overview.src.html

Lines changed: 68 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1703,8 +1703,8 @@ <h3 id="voice-props-voice-pitch">The 'voice-pitch' property</h3>
17031703
<td>
17041704
<em>Computed value:</em>
17051705
</td>
1706-
<td>an absolute frequency or keyword value, and potentially, a frequency, semitone, or
1707-
percentage representing any non-zero offsets </td>
1706+
<td>an absolute frequency, or a keyword value and potentially also a frequency, semitone,
1707+
and/or percentage representing any non-zero offsets </td>
17081708
</tr>
17091709
</tbody>
17101710
</table>
@@ -1724,10 +1724,11 @@ <h3 id="voice-props-voice-pitch">The 'voice-pitch' property</h3>
17241724
<dd>
17251725
<p> A value in <a href="#frequency-def">frequency</a> units (Hertz or kiloHertz, e.g.
17261726
"100Hz", "+2kHz"). Values are restricted to positive numbers when the 'absolute' keyword
1727-
is used. Otherwise (when the 'absolute' keyword is not used), a negative value represents
1728-
an decrement, and a positive value represents an increment (relative to the inherited
1729-
value). For example, "2kHz" is a positive offset (strictly equivalent to "+2kHz"), and
1730-
"+2kHz absolute" is an absolute frequency (strictly equivalent to "2kHz absolute"). </p>
1727+
is specified. Otherwise (when the 'absolute' keyword is not specified), a negative value
1728+
represents a decrement, and a positive value represents an increment, relative to the
1729+
inherited value. For example, "2kHz" is a positive offset (strictly equivalent to
1730+
"+2kHz"), and "+2kHz absolute" is an absolute frequency (strictly equivalent to "2kHz
1731+
absolute"). </p>
17311732
</dd>
17321733
<dt>
17331734
<strong>absolute</strong>
@@ -1837,8 +1838,8 @@ <h3 id="voice-props-voice-range">The 'voice-range' property</h3>
18371838
<td>
18381839
<em>Computed value:</em>
18391840
</td>
1840-
<td>an absolute frequency or keyword value, and potentially, a frequency, semitone, or
1841-
percentage representing any non-zero offsets </td>
1841+
<td>an absolute frequency, or a keyword value and potentially also a frequency, semitone,
1842+
and/or percentage representing any non-zero offsets </td>
18421843
</tr>
18431844
</tbody>
18441845
</table>
@@ -1852,24 +1853,26 @@ <h3 id="voice-props-voice-range">The 'voice-range' property</h3>
18521853
<p class="note"> Note that the functionality provided by this property is related to the <a
18531854
href="http://www.w3.org/TR/speech-synthesis11/#edef_prosody"><code>range</code> attribute of
18541855
the <code>prosody</code> element</a> from the SSML markup language [[!SSML]]. </p>
1856+
18551857
<dl>
18561858
<dt>
18571859
<strong>&lt;frequency&gt;</strong>
18581860
</dt>
18591861
<dd>
18601862
<p> A value in <a href="#frequency-def">frequency</a> units (Hertz or kiloHertz, e.g.
18611863
"100Hz", "+2kHz"). Values are restricted to positive numbers when the 'absolute' keyword
1862-
is used. Otherwise (when the 'absolute' keyword is not used), a negative value represents
1863-
an decrement, and a positive value represents an increment (relative to the inherited
1864-
value). For example, "2kHz" is a positive offset (strictly equivalent to "+2kHz"), and
1865-
"+2kHz absolute" is an absolute frequency (strictly equivalent to "2kHz absolute"). </p>
1864+
is specified. Otherwise (when the 'absolute' keyword is not specified), a negative value
1865+
represents a decrement, and a positive value represents an increment, relative to the
1866+
inherited value. For example, "2kHz" is a positive offset (strictly equivalent to
1867+
"+2kHz"), and "+2kHz absolute" is an absolute frequency (strictly equivalent to "2kHz
1868+
absolute"). </p>
18661869
</dd>
18671870
<dt>
18681871
<strong>absolute</strong>
18691872
</dt>
18701873
<dd>
18711874
<p> If specified, this keyword indicates that the specified frequency represents an absolute
1872-
value. If a negative frequency is specified, the computed frequency will be zero.</p>
1875+
value. If a negative frequency is specified, the computed frequency will be zero. </p>
18731876
</dd>
18741877
<dt>
18751878
<strong>&lt;semitones&gt;</strong>
@@ -1880,7 +1883,7 @@ <h3 id="voice-props-voice-range">The 'voice-range' property</h3>
18801883
"st" (semitones). A semitone is half of a tone (a half step) on the standard diatonic
18811884
scale. As such, a semitone doesn't correspond to a fixed frequency: the ratio between two
18821885
consecutive frequencies separated by exactly one semitone is the twelfth root of two
1883-
(approximately 1.05946). </p>
1886+
(approximately 1.05946).</p>
18841887
</dd>
18851888
<dt>
18861889
<strong>&lt;percentage&gt;</strong>
@@ -1889,16 +1892,15 @@ <h3 id="voice-props-voice-range">The 'voice-range' property</h3>
18891892
<p> Positive and negative <a href="#percentage-def">percentage</a> values are allowed, to
18901893
represent an increment or decrement (respectively) relative to the inherited value.
18911894
Computed values are calculated by adding (or subtracting) the specified fraction of the
1892-
inherited value, to (from) the inherited frequency value. For example, 50% (which is
1893-
equivalent to +50%) with a inherited value of 200Hz results in <code>200 +
1894-
(200*0.5)</code> = 300Hz. Conversely, -50% results in <code>200-(200*0.5)</code> =
1895-
100Hz. </p>
1895+
inherited value, to (from) the inherited value. For example, 50% (which is equivalent to
1896+
+50%) with a inherited value of 200Hz results in <code>200 + (200*0.5)</code> = 300Hz.
1897+
Conversely, -50% results in <code>200-(200*0.5)</code> = 100Hz. </p>
18961898
</dd>
18971899
<dt><strong>x-low</strong>, <strong>low</strong>, <strong>medium</strong>,
1898-
<strong>high</strong> and <strong>x-high</strong></dt>
1900+
<strong>high</strong>, <strong>x-high</strong></dt>
18991901
<dd>
1900-
<p>A sequence of monotonically non-decreasing pitch ranges that are implementation and
1901-
language-dependent.</p>
1902+
<p>A sequence of monotonically non-decreasing pitch levels that are implementation and voice
1903+
specific.</p>
19021904
</dd>
19031905
</dl>
19041906

@@ -1913,24 +1915,52 @@ <h3 id="voice-props-voice-range">The 'voice-range' property</h3>
19131915
<p>Examples of inherited values:</p>
19141916
<pre>
19151917
&lt;body&gt;
1916-
&lt;parent&gt;
1917-
&lt;child&gt;
1918-
&lt;grandchild&gt;
1919-
...
1920-
&lt;/grandchild&gt;
1921-
&lt;/child&gt;
1922-
&lt;/parent&gt;
1923-
&lt;/body&gt;
1924-
1925-
body { voice-range: inherit; } /* the initial value is 'medium' */
1926-
parent { voice-range: 200Hz absolute; } /* override with an absolute frequency */
1927-
child { voice-range: 2st; } /* the computed value is [200Hz + two semitones] */
1928-
grandchild { voice-range: inherit;
1929-
voice-family: "another-voice"; } /* the computed value is the same as
1930-
for "child", but the voice is different so the
1931-
calculated (used) absolute frequency
1932-
may be completely different,
1918+
&lt;e1&gt;
1919+
&lt;e2&gt;
1920+
&lt;e3&gt;
1921+
&lt;e4&gt;
1922+
&lt;e5&gt;
1923+
...
1924+
&lt;/e5&gt;
1925+
&lt;/e4&gt;
1926+
&lt;/e3&gt;
1927+
&lt;/e2&gt;
1928+
&lt;/e1&gt;
1929+
&lt;/body&gt;
1930+
1931+
1932+
1933+
1934+
body { voice-range: inherit; } /* the initial value is 'medium'
1935+
(the actual frequency value
1936+
depends on the active voice) */
1937+
1938+
e1 { voice-range: +25%; } /* the computed value is
1939+
['medium' + 0.25 times the frequency
1940+
corresponding to 'medium'] */
1941+
1942+
e2 { voice-range: inherit; /* this could be omitted,
1943+
but we explicitly specify it for clarity purposes */
1944+
1945+
voice-family: "another-voice"; } /* the computed value is the same as
1946+
for "e1", but here the voice is different,
1947+
so once calculated, the used absolute frequency
1948+
may be completely different
19331949
due to voice-dependent discrepancies */
1950+
1951+
e3 { voice-range: 200Hz absolute; } /* override with an absolute frequency
1952+
which doesn't depend on the active voice */
1953+
1954+
e4 { voice-range: 2st; } /* the computed value is an absolute frequency,
1955+
which is the result of the
1956+
calculation: 200Hz + two semitones */
1957+
1958+
e5 { voice-range: inherit; /* this could be omitted,
1959+
but we explicitly specify it for clarity purposes */
1960+
1961+
voice-family: "yet-another-voice"; } /* the computed value is the same as
1962+
for "e4" (i.e. an absolute frequency value,
1963+
independent from the active voice) */
19341964
</pre>
19351965
</div>
19361966
<table class="propdef" summary="name: syntax">

0 commit comments

Comments
 (0)