EDCD / EDDI

Companion application for Elite Dangerous
Other
441 stars 81 forks source link

VoiceAttack 'say' function doesn't parse International Phonetic Alphabet #155

Closed Nerezza closed 6 years ago

Nerezza commented 6 years ago

Steps to reproduce

  1. Set up a ship in EDDI with a spoken, IPA-based name.
  2. Use VoiceAttack's default profile for 'pre flight system checks'
  3. The first line in the response, and the last line in the response, will either omit the ship's spoken name entirely or spell out any English characters used by the name (ie, 'ɑːrktɪkɑː' becomes 'r k t k')

Expected

Phonetic reading of a ship name

Observed

TTS picked out the English letters in the spoken name and spelled those out instead.

Investigation

I swapped out the '$='s in the VA lines with {TXT:Ship name (spoken)} and received the same 'r k t k' response anyway. I also tried pasting the IPA-based ship name into the VA lines, and received the same response. My hunch is that either the say function can't parse those IPA characters, or VA can't pass them.

Hoodathunk commented 6 years ago

When you enter the IPA based name in the 'Ship Monitor' tab, is the IPA name spoken when you press the 'Hear it' button?

Nerezza commented 6 years ago

Yes, it works everywhere else perfectly fine.

Tkael commented 6 years ago

We could revise this to use the 'speech' plugin function and add the requisite text to a Cottle script?

Tkael commented 6 years ago

I've confirmed that VoiceAttack's say function cannot (at least at present) respond correctly to IPA and I've posted a request on VoiceAttack's forums for this issue.

Tkael commented 6 years ago

This is essentially a VoiceAttack issue, and not something that we are in a position to offer as a default since any solution is going to require customization from the end user. It'd require that SSML code to be customized in VoiceAttack to match the user's selected voice (with bad customization causing VoiceAttack to crash), and that the user explicitly enables SSML for the script in question. Even then, VoiceAttack does not seem to fully be able to support IPA at this time. Since we're unable to offer a solution that will be able to work "off the shelf", I'm going to close this as an unsupported use case.

@Nerezza. please see the VoiceAttack forum link if you are interested in guidance on creating a custom VoiceAttack action that can make use of an IPA input.