Joshua's Audio Books


Due to inherent deficiency’s with SSML, I decided to make XSSML which adds the following features missing from SSML

XSSML adds the tags

  • <xssml> the top level tag.
  • <seq> for playing media sequentially.
    • Sub tags must be <media>
  • <par> for playing media in parallel.
    • Sub tags must be <media>
  • <media> denotes media to be played.
    • Sub tags must be <speak> or <audio>.
      • If the sub tag is <speak> it is treated just like SSML content
  • <head"> which contains settings for the document.
    • Valid sub tags are <alias> and <aufx> and assigns variables for the document.
  • <alias a="name"> which is converted into a aliased voice.
    • This is a sub tag of <speak> and must be pre-processed by replacing the tag with the specified content before being sent to a SSML processor.
    • In <head> there is to be a copy of every alias tag with the sub tags of <begin> and <end> which defines what to replace the start and end tags with.
  • <aufx a="name" m="simple/regex"> defines text that should be automatically replaced.
    • In <head> there is to be a copy of every replacement that is desired.
    • The m parameter defines if the code should be prosessed as a simple find & replace or if it should execute as global regex statement (only effecting <speak> tags).
    • Within <speak> tags any content that matches the a parameter should be replaced with the content defined within the head tag before being sent to the SSML processor.

Currently I am still making a implementation of XSSML, Aditionally this page is probably not done.