Component: Speech (Phoneme) (Audio Output)

From Flowcode Help
Jump to navigationJump to search
Author Matrix Ltd
Version 1.2
Category Audio Output


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) FC6 Icon.png 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) FC6 Icon.png Talking Volt Meter

Macro reference

DisableOutput

Fc9-comp-macro.png DisableOutput
Disables the output to prevent any buzzing etc while not speaking. 
Fc9-void-icon.png - VOID Return


EnableOutput

Fc9-comp-macro.png EnableOutput
Sets up the output to allow the speech data to be streamed out. 
Fc9-void-icon.png - VOID Return


OutputPhoneme

Fc9-comp-macro.png OutputPhoneme
Streams a single Phoneme or string of comma seperated Phonemes. OutputPhoneme("OY") OutputPhoneme("OY,AY,OY") 
Fc9-string-icon.png - STRING DataString
 
Fc9-void-icon.png - VOID Return


ReadByteFromPhoneme

Fc9-comp-macro.png ReadByteFromPhoneme
Reads a single byte value from the specified phoneme data array. This function will not simulate correctly as it requires C style pointers. 
Fc9-string-icon.png - STRING Phoneme
Specifies a single Phoneme 
Fc9-u16-icon.png - UINT Idx
Specifies the position within the Phoneme 
Fc9-u8-icon.png - BYTE Return


ReadPhonemeLength

Fc9-comp-macro.png ReadPhonemeLength
Function to return the number of bytes used in a single phoneme array. 
Fc9-string-icon.png - STRING Phoneme
Specifies a single Phoneme 
Fc9-u16-icon.png - UINT Return


Property reference

Fc9-prop-icon.png Properties
Fc9-conn-icon.png Phoneme Settings
Fc9-type-16-icon.png Phoneme Selection
Selects which phonemes are included in the embedded firmware 
Fc9-type-16-icon.png Phoneme Data Set
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. 
Fc9-type-14-icon.png Pitch (Hz)
The frequency at which the phoneme data is output in bytes/samples per second. 
Fc9-type-14-icon.png Phoneme Data Size
The number of bytes used by the current phoneme selection 
Fc9-type-14-icon.png ROM Size
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. 
Fc9-type-14-icon.png Base ROM Address
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. 
Fc9-type-14-icon.png Suggested Address
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. 
Fc9-type-16-icon.png Output Mode
Determines how the phoneme data is going to be output. 
Fc9-type-16-icon.png PWM Pin
PWM channel selection used to determine which PWM peripheral to stream the Phoneme data to. 
Fc9-type-5-icon.png PWM Pin
The actual port pin assigned to the selected PWM channel. 
Fc9-conn-icon.png Phoneme Selection
Fc9-type-7-icon.png Select All
Selects all Phonemes 
Fc9-type-7-icon.png Select None
Deselects all Phonemes 
Fc9-type-7-icon.png PA1 (10ms)
10ms Pause - Always included 
Fc9-type-7-icon.png PA2 (30ms)
30ms Pause - Always included 
Fc9-type-7-icon.png PA3 (50ms)
50ms Pause - Always included 
Fc9-type-7-icon.png PA4 (100ms)
100ms Pause - Always included 
Fc9-type-7-icon.png PA5 (200ms)
200ms Pause - Always included 
Fc9-type-7-icon.png AA - hOt
Phoneme selection 
Fc9-type-7-icon.png AE - hAt
Phoneme selection 
Fc9-type-7-icon.png AO - AUght
Phoneme selection 
Fc9-type-7-icon.png AR - alARm
Phoneme selection 
Fc9-type-7-icon.png AW - sOUnd
Phoneme selection 
Fc9-type-7-icon.png AX - Apple
Phoneme selection 
Fc9-type-7-icon.png AY - skY
Phoneme selection 
Fc9-type-7-icon.png BB1 - Brown
Phoneme selection 
Fc9-type-7-icon.png BB2 - Business
Phoneme selection 
Fc9-type-7-icon.png CH - CHurCH
Phoneme selection 
Fc9-type-7-icon.png DD1 - enD
Phoneme selection 
Fc9-type-7-icon.png DD2 - Down
Phoneme selection 
Fc9-type-7-icon.png DH1 - THey
Phoneme selection 
Fc9-type-7-icon.png DH2 - baTHe
Phoneme selection 
Fc9-type-7-icon.png EH - Extent
Phoneme selection 
Fc9-type-7-icon.png EL - angLE
Phoneme selection 
Fc9-type-7-icon.png ER1 - intERupt
Phoneme selection 
Fc9-type-7-icon.png ER2 - bIRd
Phoneme selection 
Fc9-type-7-icon.png EY - grEAt
Phoneme selection 
Fc9-type-7-icon.png FF - Food
Phoneme selection 
Fc9-type-7-icon.png GG1 - Get
Phoneme selection 
Fc9-type-7-icon.png GG2 - Green
Phoneme selection 
Fc9-type-7-icon.png GG3 - anGer
Phoneme selection 
Fc9-type-7-icon.png HH1 - Help
Phoneme selection 
Fc9-type-7-icon.png HH2 - Hope
Phoneme selection 
Fc9-type-7-icon.png IH - sIt
Phoneme selection 
Fc9-type-7-icon.png IY - trEAt
Phoneme selection 
Fc9-type-7-icon.png JH - inJure
Phoneme selection 
Fc9-type-7-icon.png KK1 - Clown
Phoneme selection 
Fc9-type-7-icon.png KK2 - tasK
Phoneme selection 
Fc9-type-7-icon.png KK3 - Crane
Phoneme selection 
Fc9-type-7-icon.png LL - Lake
Phoneme selection 
Fc9-type-7-icon.png MM - Milk
Phoneme selection 
Fc9-type-7-icon.png NG - aNGer
Phoneme selection 
Fc9-type-7-icon.png NN1 - thiN
Phoneme selection 
Fc9-type-7-icon.png NN2 - Now
Phoneme selection 
Fc9-type-7-icon.png OR - stORe
Phoneme selection 
Fc9-type-7-icon.png OW - zOne
Phoneme selection 
Fc9-type-7-icon.png OY - nOIse
Phoneme selection 
Fc9-type-7-icon.png PP - triP
Phoneme selection 
Fc9-type-7-icon.png RR1 - WRite
Phoneme selection 
Fc9-type-7-icon.png RR2 - gRease
Phoneme selection 
Fc9-type-7-icon.png SH - SHip
Phoneme selection 
Fc9-type-7-icon.png SS - teSt
Phoneme selection 
Fc9-type-7-icon.png TH - THin
Phoneme selection 
Fc9-type-7-icon.png TT1 - tesT
Phoneme selection 
Fc9-type-7-icon.png TT2 - Test
Phoneme selection 
Fc9-type-7-icon.png UH - bOOk
Phoneme selection 
Fc9-type-7-icon.png UW1 - cumpUter
Phoneme selection 
Fc9-type-7-icon.png UW2 - fOOd
Phoneme selection 
Fc9-type-7-icon.png VV - Vest
Phoneme selection 
Fc9-type-7-icon.png WH - WHite
Phoneme selection 
Fc9-type-7-icon.png WW - Work
Phoneme selection 
Fc9-type-7-icon.png XR - haiR
Phoneme selection 
Fc9-type-7-icon.png YR - clEAR
Phoneme selection 
Fc9-type-7-icon.png YY1 - compUter
Phoneme selection 
Fc9-type-7-icon.png YY2 - Yes
Phoneme selection 
Fc9-type-7-icon.png ZH - aZure
Phoneme selection 
Fc9-type-7-icon.png ZZ - phaSe
Phoneme selection