Difference between revisions of "Component: Speech (Phoneme) (Audio Output)"
Line 17: | Line 17: | ||
==Component Source Code== | ==Component Source Code== | ||
− | Please click here | + | 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 38: | Line 40: | ||
==Examples== | ==Examples== | ||
+ | |||
+ | |||
Line 75: | Line 79: | ||
==Macro reference== | ==Macro reference== | ||
+ | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadPhonemeLength''' | ||
+ | |- | ||
+ | | 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="90%" | Phoneme | ||
+ | |- | ||
+ | | colspan="2" | Specifies a single Phoneme | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''EnableOutput''' | ||
+ | |- | ||
+ | | colspan="2" | Sets up the output to allow the speech data to be streamed out. | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DisableOutput''' | ||
+ | |- | ||
+ | | 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="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadByteFromPhoneme''' | ||
+ | |- | ||
+ | | colspan="2" | Reads a single byte value from the specified phoneme data array. This function will not simulate correctly as it requires C style pointers. | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
+ | | width="90%" | Phoneme | ||
+ | |- | ||
+ | | colspan="2" | Specifies a single Phoneme | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
+ | | width="90%" | Idx | ||
+ | |- | ||
+ | | colspan="2" | Specifies the position within the Phoneme | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''OutputPhoneme''' | ||
+ | |- | ||
+ | | 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="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==Property reference== | ||
+ | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties''' | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Phoneme Settings | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Phoneme Selection | ||
+ | |- | ||
+ | | colspan="2" | Selects which phonemes are included in the embedded firmware | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Phoneme Data Set | ||
+ | |- | ||
+ | | colspan="2" | Specifies if the phonemes used are based on the inbuilt phoneme wav files set or a custom file set. To create your own phonemes, copy the wav files from the components directory, then overwrite the phonemes you wish to edit. Phonemes are re-parsed on simulation start and on compile to C. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | ||
+ | | width="90%" | Pitch (Hz) | ||
+ | |- | ||
+ | | colspan="2" | The frequency at which the phoneme data is output in bytes/samples per second. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | ||
+ | | width="90%" | Phoneme Data Size | ||
+ | |- | ||
+ | | colspan="2" | The number of bytes used by the current phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | ||
+ | | width="90%" | ROM Size | ||
+ | |- | ||
+ | | colspan="2" | The maximum number of bytes available in the ROM of the selected target device. The ROM has to contain the program as well as the Phoneme data. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | ||
+ | | width="90%" | Base ROM Address | ||
+ | |- | ||
+ | | colspan="2" | The address in ROM to place the phoneme data. It is recomended to always use the suggested address as this will place the phonemes right at the end of ROM and away from the program. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | ||
+ | | width="90%" | Suggested Address | ||
+ | |- | ||
+ | | colspan="2" | The ideal address to allow all the selected phonemes to fit into the end of the ROM memory Thereby allowing the maximum space for the user program. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Output Mode | ||
+ | |- | ||
+ | | colspan="2" | Determines how the phoneme data is going to be output. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | PWM Pin | ||
+ | |- | ||
+ | | colspan="2" | PWM channel selection used to determine which PWM peripheral to stream the Phoneme data to. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | ||
+ | | width="90%" | PWM Pin | ||
+ | |- | ||
+ | | colspan="2" | The actual port pin assigned to the selected PWM channel. | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Phoneme Selection | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | Select All | ||
+ | |- | ||
+ | | colspan="2" | Selects all Phonemes | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | Select None | ||
+ | |- | ||
+ | | colspan="2" | Deselects all Phonemes | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | PA1 (10ms) | ||
+ | |- | ||
+ | | colspan="2" | 10ms Pause - Always included | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | PA2 (30ms) | ||
+ | |- | ||
+ | | colspan="2" | 30ms Pause - Always included | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | PA3 (50ms) | ||
+ | |- | ||
+ | | colspan="2" | 50ms Pause - Always included | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | PA4 (100ms) | ||
+ | |- | ||
+ | | colspan="2" | 100ms Pause - Always included | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | PA5 (200ms) | ||
+ | |- | ||
+ | | colspan="2" | 200ms Pause - Always included | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | AA - hOt | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | AE - hAt | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | AO - AUght | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | AR - alARm | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | AW - sOUnd | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | AX - Apple | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | AY - skY | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | BB1 - Brown | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | BB2 - Business | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | CH - CHurCH | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | DD1 - enD | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | DD2 - Down | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | DH1 - THey | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | DH2 - baTHe | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | EH - Extent | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | EL - angLE | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | ER1 - intERupt | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | ER2 - bIRd | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | EY - grEAt | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | FF - Food | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | GG1 - Get | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | GG2 - Green | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | GG3 - anGer | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | HH1 - Help | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | HH2 - Hope | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | IH - sIt | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | IY - trEAt | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | JH - inJure | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | KK1 - Clown | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | KK2 - tasK | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | KK3 - Crane | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | LL - Lake | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | MM - Milk | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | NG - aNGer | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | NN1 - thiN | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | NN2 - Now | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | OR - stORe | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | OW - zOne | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | OY - nOIse | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | PP - triP | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | RR1 - WRite | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | RR2 - gRease | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | SH - SHip | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | SS - teSt | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | TH - THin | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | TT1 - tesT | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | TT2 - Test | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | UH - bOOk | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | UW1 - cumpUter | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | UW2 - fOOd | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | VV - Vest | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | WH - WHite | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | WW - Work | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | XR - haiR | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | YR - clEAR | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | YY1 - compUter | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | YY2 - Yes | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | ZH - aZure | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | ZZ - phaSe | ||
+ | |- | ||
+ | | colspan="2" | Phoneme selection | ||
+ | |}==Macro reference== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |
Revision as of 15:18, 20 January 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 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
Example of Real Speak Speech (simulation only)
Speech2
Adding additional language packs to the Real Speak engine.
Macro reference
![]() |
ReadPhonemeLength |
Function to return the number of bytes used in a single phoneme array. | |
![]() |
Phoneme |
Specifies a single Phoneme | |
![]() |
Return |
![]() |
EnableOutput |
Sets up the output to allow the speech data to be streamed out. | |
![]() |
Return |
![]() |
DisableOutput |
Disables the output to prevent any buzzing etc while not speaking. | |
![]() |
Return |
![]() |
OutputPhoneme |
Streams a single Phoneme or string of comma seperated Phonemes. OutputPhoneme("OY") OutputPhoneme("OY,AY,OY") | |
![]() |
DataString |
![]() |
Return |
Property reference
==Macro reference==
![]() |
ReadPhonemeLength |
Function to return the number of bytes used in a single phoneme array. | |
![]() |
Phoneme |
Specifies a single Phoneme | |
![]() |
Return |
![]() |
EnableOutput |
Sets up the output to allow the speech data to be streamed out. | |
![]() |
Return |
![]() |
DisableOutput |
Disables the output to prevent any buzzing etc while not speaking. | |
![]() |
Return |
![]() |
OutputPhoneme |
Streams a single Phoneme or string of comma seperated Phonemes. OutputPhoneme("OY") OutputPhoneme("OY,AY,OY") | |
![]() |
DataString |
![]() |
Return |