Difference between revisions of "Component: Speech (Phoneme) (Audio Output)"
(10 intermediate revisions by 2 users not shown) | |||
Line 17: | Line 17: | ||
==Component Source Code== | ==Component Source Code== | ||
− | Please click here | + | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_speech.fcfx FC_Comp_Source_speech.fcfx] |
+ | |||
+ | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_speech.fcfx FC_Comp_Source_speech.fcfx] | ||
==Detailed description== | ==Detailed description== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
Line 36: | Line 48: | ||
==Examples== | ==Examples== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
Line 63: | Line 85: | ||
Another example of Phoneme Speech, taking a reading from an analogue channel and speaking the Voltage. (download and simulation) | Another example of Phoneme Speech, taking a reading from an analogue channel and speaking the Voltage. (download and simulation) | ||
− | {{Fcfile|Voice | + | {{Fcfile|Voice Meter.fcfx|Talking Volt Meter}} |
− | |||
− | |||
− | |||
− | + | ==Macro reference== | |
− | |||
− | == | ||
+ | ===DisableOutput=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
− | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DisableOutput''' |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Disables the output to prevent any buzzing etc while not speaking. |
|- | |- | ||
|- | |- | ||
− | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |
− | |||
− | |||
− | |||
− | |||
− | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
+ | ===EnableOutput=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
Line 103: | Line 117: | ||
+ | ===OutputPhoneme=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
− | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''OutputPhoneme''' |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Streams a single Phoneme or string of comma seperated Phonemes. OutputPhoneme("OY") OutputPhoneme("OY,AY,OY") |
|- | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
+ | | width="90%" | DataString | ||
+ | |- | ||
+ | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
Line 116: | Line 136: | ||
+ | ===ReadByteFromPhoneme=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
Line 139: | Line 160: | ||
+ | ===ReadPhonemeLength=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
− | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadPhonemeLength''' |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Function to return the number of bytes used in a single phoneme array. |
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
− | | width="90%" | | + | | width="90%" | Phoneme |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Specifies a single Phoneme |
|- | |- | ||
− | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT |
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
− | |||
− | |||
Latest revision as of 10:11, 5 April 2023
Author | Matrix Ltd |
Version | 1.2 |
Category | Audio Output |
Contents
Speech (Phoneme) component
Speech component allowing Phoneme based speech for use on an embedded platform. The simulation also has an advanced speech engine allowing realistic text to speech in multiple languages using the RealSpeak voice engine.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_speech.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_speech.fcfx
Detailed description
No detailed description exists yet for this component
Examples
Example of Phoneme Speech (download and simulation)
Speech
The Phoneme based speech can be output on Microcontroller hardware using a number of methods.
PWM - Outputs using a single PWM pin, a simple external RC low pass filter can be used to remove the high frequency PWM to create an audio signal.
Parallel - Outputs using a 8-bit port, a simple 8-bit R2R DAC circuit can be used to combine the bits into an audio signal.
Other - A third option is to use the ReadByteFromPhoneme macro to pull out the phoneme values a byte at a time which can be used to pass on to an external DAC etc.
Another example of Phoneme Speech, taking a reading from an analogue channel and speaking the Voltage. (download and simulation)
Talking Volt Meter
Macro reference
DisableOutput
![]() |
DisableOutput |
Disables the output to prevent any buzzing etc while not speaking. | |
![]() |
Return |
EnableOutput
![]() |
EnableOutput |
Sets up the output to allow the speech data to be streamed out. | |
![]() |
Return |
OutputPhoneme
![]() |
OutputPhoneme |
Streams a single Phoneme or string of comma seperated Phonemes. OutputPhoneme("OY") OutputPhoneme("OY,AY,OY") | |
![]() |
DataString |
![]() |
Return |
ReadByteFromPhoneme
ReadPhonemeLength
![]() |
ReadPhonemeLength |
Function to return the number of bytes used in a single phoneme array. | |
![]() |
Phoneme |
Specifies a single Phoneme | |
![]() |
Return |