1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Text to speech integration in the loader

Discussion in 'Loader Requests' started by Slingerbult, Jul 31, 2015.

  1. Slingerbult

    Slingerbult Content Creator

    Sep 15, 2012
    Likes Received:
    There are many free on-line services offering text-to-speech conversion in several languages and some appear to be flash based. A surprising number of the female voices actually sound pretty hot when you make them say dirty things, though it's a bit matter-of-factly.

    My first idea was to use this to create an audio dialogue with a gazillion mp3 files, one for each line, but then it occurred to me: could this not be integrated into the loader as a feature? Just tick a box and she'll say everything in Her style text, and he'll say anything in a Him style text.

    Maybe this is hard to do or takes a huge amount of space, but I hadn't seen it mentioned before, and it would do away with the need for audio dialogues and hence save lots of trouble in the future if it could be implemented.
  2. stuntcock

    stuntcock Staff Member Moderator

    Jun 5, 2012
    Likes Received:
    The fact that the websites use a Flash-based UI to accept customized text input is not significant in itself. Flash is merely sending a URLRequest to a server-side application, which creates the MP3 file and sends it back to the client PC (which then automatically plays it). Flash isn't actually "doing" the TTS.

    Name a few. For example, this one seems free, but they'll cut you off after you've hit 5000 characters. This one is free, but it's so overloaded that it requires 20+ seconds to generate each output file (and that's just for the web form; they don't even have an API). This one is free only for web usage; API functionality is paywalled.

    It is possible for Flash to do TTS 'natively', by wrapping itself around a TTS engine written in a different language (e.g. c).

    • Upsides
      • independent; fully deployable
    • Downsides
      • flat, unsexy, robotic voice
      • might be tricky to integrate with Loader.swf (since the AS3 code is undocumented)

    Alternatively, we can use Flash purely as an I/O platform. Capture dialog text, send it as a URLRequest to a well-defined endpoint, receive MP3 file, and play it.

    • Upsides
      • many voice options
      • ability to use different voices for him, her, narration, etc
    • Downsides
      • no free option available
        • Google TTS is theoretically free, but they employ a CAPTCHA whenever their service gets heavily overloaded (and/or too many requests arrive from the same source), which would cause SDT audio dialogs to suddenly stop working
        • most of the commercial VaaS vendors provide evaluation keys, but these will stop working abruptly when the evaluation period runs out (and/or when they ban the trial account because they notice that it's being used by hundreds of people)
      • the URLRequest + MP3 approach will add lag. If your internet connection is strong enough to play online games, then the audio lag will be negligible.
      • the URLRequest + MP3 approach will add traffic. Most people can ignore this; someone using a satellite or cellular internet connection might see an increase in their bill.

    Finally, we could just let SDT run on its own in the Flash window, and then allow the user to run JAWS (or similar) alongside it. We'd then tinker with the DisplayObject.accessibilityProperties parameters in order to ensure that only one set of dialog lines (e.g. hers) are read aloud. Him lines (and narration lines) would be delivered as text only, and we'd suppress the natural 'enthusiasm' of the screen-reader software (so that it doesn't start yelling about "Hair! Skin! Iris! Nose!" as soon as you open the menu).

    • Upsides
      • reasonably portable
      • several voices available
    • Downsides
      • voices only one side of the dialog (e.g. her lines)
      • requires users to install separate accessibility software
      • involves some changes to mod code (e.g. DialogActions)
      • involves some changes to SDT code (which can probably be achieved via lProxy)

    Why does nobody ever search? :(
  3. Faceless

    Faceless Content Creator

    Jun 12, 2011
    Likes Received:
    To be fair, people do try searching. It's just that they spam the shoutbox instead.
  4. hammy

    hammy Vivacious Visitor

    Jun 30, 2014
    Likes Received:
    i think that this is a desirable project
    i second this