Next: , Up: Emacspeak Commands And Options   [Contents][Index]


12.1 acss-structure

The CSS Speech Style Sheet specification defines a number of abstract device independent voice properties. A setting conforming to the CSS speech specification can be represented in elisp as a structure.

We will refer to this structure as a "speech style". This structure needs to be mapped to device dependent codes to produce the desired effect. This module forms a bridge between emacs packages that wish to implement audio formatting and Emacspeak’s TTS module. Emacspeak produces voice change effects by examining the value of text-property ’personality.

Think of a buffer of formatted text along with the text-property ’personality appropriately set as a "aural display list". Applications like EWW that produce such formatted buffers call function acss-personality-from-speech-style with a "speech-style" –a structure as defined in this module and get back a symbol that they then assign to the value of property ’personality. Emacspeak’s rendering engine then does the needful at the time speech is produced. Function acss-personality-from-speech-style does the following: Takes as input a "speech style" (1) Computes a symbol that will be used henceforth to refer to this specific speech style. (2) Examines emacspeak’s internal voice table to see if this speech style has a voice already defined. If so it returns immediately. Otherwise, it does the additional work of defining a dectalk-voice for future use. See module dectalk-voices.el to see how voices are defined.