[css3-speech] voice-pitch and voice-pitch-range computed values

http://dev.w3.org/csswg/css3-speech/#voice-props-voice-pitch

Value:          <frequency> && absolute? | <semitones> | <percentage> | x-low | low | medium | high | x-high
Initial:        medium
Applies to:     all elements
Inherited:      yes
Percentages:    refer to inherited value
Media:          speech
Computed value: specified value

"Specified value" isn't going to work because if I have

   <parent>
     <child>
       <grandchild/>
     </child>
   </parent>

   parent {
     voice-pitch: low;
   }

   child {
     voice-pitch: 2st;
   }

then child and grandchild should both have "low + 2st"; grandchild
should not be 2st higher than child.

The two technical options here are:
   - compute an absolute frequency
   - maintain a keyword and an offset

The difference in behavior would be discernable when the voice changes;
the latter would maintain the frequency of the old voice, whereas the
new one would recompute using the base frequency of the new voice.

The first behavior, however, is not useful: consider a switch from male
to female voice: if voice-pitch inherits as an absolute frequency, then
the pitch would be incorrect even in the simple case of 'voice-pitch'
never being specified.

So we have to use the second, perhaps something like

Computed value: a keyword and, potentially, a frequency, semitone, and/or
                 percentage representing any non-zero offsets.

~fantasai

Received on Wednesday, 13 July 2011 18:48:06 UTC