### 10.2 Supported Sable tags ¶

There is not yet a definitive set of tags but hopefully such a list will form over the next few months. As adding support for new tags is often trivial the problem lies much more in defining what tags there should be than in actually implementing them. The following are based on version 0.2 of Sable as described in http://www.cstr.ed.ac.uk/projects/sable_spec2.html, though some aspects are not currently supported in this implementation. Further updates will be announces through the Sable mailing list.

`LANGUAGE`

  Allows the specification of the language through the `ID` attribute. Valid values in Festival are, `english`, `en1`, `spanish`, `en`, and others depending on your particular installation. For example

      <LANGUAGE id="english"> ... </LANGUAGE>

  If the language isn’t supported by the particualr installation of Festival "Some text in .." is said instead and the section is ommitted.

`SPEAKER`

  Select a voice. Accepts a parameter `NAME` which takes values `male1`, `male2`, `female1`, etc. There is currently no definition about what happens when a voice is selected which the synthesizer doesn’t support. An example is

      <SPEAKER name="male1"> ... </SPEAKER>

`AUDIO`

  This allows the specification of an external waveform that is to be included. There are attributes for specifying volume and whether the waveform is to be played in the background of the following text or not. Festival as yet only supports insertion.

      My telephone number is
      <AUDIO SRC="http://www.cstr.ed.ac.uk/~awb/sounds/touchtone.2.au"/>
      <AUDIO SRC="http://www.cstr.ed.ac.uk/~awb/sounds/touchtone.7.au"/>
      <AUDIO SRC="http://www.cstr.ed.ac.uk/~awb/sounds/touchtone.8.au"/>
      <AUDIO SRC="http://www.cstr.ed.ac.uk/~awb/sounds/touchtone.7.au"/>.

`MARKER`

  This allows Festival to mark when a particalur part of the text has been reached. At present the simply the value of the `MARK` attribute is printed. This is done some when that piece of text is analyzed. not when it is played. To use this in any real application would require changes to this tags implementation.

      Move the <MARKER MARK="mouse" /> mouse to the top.

`BREAK`

  Specifies a boundary at some `LEVEL`. Strength may be values `Large`, `Medium`, `Small` or a number. Note that this this tag is an empty tag and must include the closing part within itsefl specification.

      <BREAK LEVEL="LARGE"/>

`DIV`

  This signals an division. In Festival this causes an utterance break. A `TYPE` attribute may be specified but it is ignored by Festival.

`PRON`

  Allows pronunciation of enclosed text to be explcitily given. It supports the attributes `IPA` for an IPA specification (not currently supported by Festival); `SUB` text to be substituted which can be in some form of phonetic spelling, and `ORIGIN` where the linguistic origin of the enclosed text may be identified to assist in etymologically sensitive letter to sound rules.

      <PRON SUB="toe maa toe">tomato</PRON>

`SAYAS`

  Allows indeitnfication of the enclose tokens/text. The attribute `MODE` cand take any of the following a values: `literal`, `date`, `time`, `phone`, `net`, `postal`, `currency`, `math`, `fraction`, `measure`, `ordinal`, `cardinal`, or `name`. Further specification of type for dates (MDY, DMY etc) may be speficied through the `MODETYPE` attribute.

      As a test of marked-up numbers. Here we have
      a year <SAYAS MODE="date">1998</SAYAS>,
      an ordinal <SAYAS MODE="ordinal">1998</SAYAS>,
      a cardinal <SAYAS MODE="cardinal">1998</SAYAS>,
      a literal <SAYAS MODE="literal">1998</SAYAS>,
      and phone number <SAYAS MODE="phone">1998</SAYAS>.

`EMPH`

  To specify enclose text should be emphasized, a `LEVEL` attribute may be specified but its value is currently ignored by Festival (besides the emphasis Festival generates isn’t very good anyway).

      The leaders of <EMPH>Denmark</EMPH> and <EMPH>India</EMPH> meet on
      Friday.

`PITCH`

  Allows the specification of pitch range, mid and base points.

      Without his penguin, <PITCH BASE="-20%"> which he left at home, </PITCH>
      he could not enter the restaurant.

`RATE`

  Allows the specification of speaking rate

      The address is <RATE SPEED="-40%"> 10 Main Street </RATE>.

`VOLUME`

  Allows the specification of volume. Note in festival this causes an utterance break before and after this tag.

      Please speak more <VOLUME LEVEL="loud">loudly</VOLUME>, except
      when I ask you to speak <VOLUME LEVEL="quiet">in a quiet voice</VOLUME>.

`ENGINE`

  This allows specification of engine specific commands

      An example is <ENGINE ID="festival" DATA="our own festival speech
      synthesizer"> the festival speech synthesizer</ENGINE> or
      the Bell Labs speech synthesizer.

These tags may change in name but they cover the aspects of speech mark up that we wish to express. Later additions and changes to these are expected.

See the files `festival/examples/example.sable` and `festival/examples/example2.sable` for working examples.

Note the definition of Sable is on going and there are likely to be later more complete implementations of sable for Festival as independent releases consult `url://www.cstr.ed.ac.uk/projects/sable.html` for the most recent updates.