Reece H. Dunn 12 years ago
parent
commit
d695786e54
4 changed files with 40 additions and 31 deletions
  1. 1
    1
      dictsource/hi_list
  2. 1
    1
      dictsource/hi_rules
  3. 6
    5
      docs/phonemes.html
  4. 32
    24
      docs/speak_lib.h

+ 1
- 1
dictsource/hi_list View File

@@ -162,7 +162,7 @@ _dpt _d@s@ml'o:_ // ?? what is Hi for "." ?
श S@
ष s.@ // retroflex [S]
स s@
ह H@-
ह H@
क़ q@
ख़ x@
ग़ Q@

+ 1
- 1
dictsource/hi_rules View File

@@ -346,7 +346,7 @@
स (B s

.group ह
ह H
ह HV
ह (B H



+ 6
- 5
docs/phonemes.html View File

@@ -24,8 +24,8 @@ Phoneme mnemonics can be used directly in the text input to <strong>espeak</stro
<table>
<tbody valign=top>
<tr>
<td width=25><code>[p]</code><td width=80>
<td width=25><code>[b]</code><td width=80>
<td width=25><code>[p]</code><td width=150>
<td width=25><code>[b]</code><td width=150>
<tr>
<td><code>[t]</code><td>
<td><code>[d]</code><td>
@@ -92,7 +92,7 @@ In rhotic accents, such as General American, the phonemes <code>[3:], [A@], [e@]
<table>
<tbody valign=top>
<tr><td width=25><code>[@]</code>
<td width=60>alph<b>a</b><td width=80>schwa
<td width=60>alph<b>a</b><td width=400>schwa

<tr><td><code>[3]</code>
<td>bett<b>er</b><td>rhotic schwa. In British English this is the same as <code>[@]</code>, but it includes 'r' colouring in American and other rhotic accents. In these cases a separate <code>[r]</code> should not be included unless it is followed immediately by another vowel.
@@ -105,7 +105,7 @@ In rhotic accents, such as General American, the phonemes <code>[3:], [A@], [e@]

<tr><td><code>[a]</code><td>tr<b>a</b>p
<tr><td><code>[aa]</code><td>b<b>a</b>th<td>This is <code>[a]</code> in some accents, <code>[A:]</code> in others.
<tr><td><code>[a2]</code><td><b>a</b>bout<td>This may be <code>[@]</code> or may be a more open schwa.
<tr><td><code>[a#]</code><td><b>a</b>bout<td>This may be <code>[@]</code> or may be a more open schwa.
<tr><td><code>[A:]</code><td>p<b>al</b>m
<tr><td><code>[A@]</code><td>st<b>ar</b>t
<tr><td><p>
@@ -161,7 +161,8 @@ Other languages will have their own vowel definitions, eg:

</tbody>
</table>

<p>
<code> [:] </code> can be used to lengthen a vowel, eg <code> [e:]</code>

</body>
</html>

+ 32
- 24
docs/speak_lib.h View File

@@ -28,6 +28,12 @@
#include <stdio.h>
#include <stddef.h>

#ifdef __WIN32__
#define ESPEAK_API __declspec(dllexport)
#else
#define ESPEAK_API
#endif

#define ESPEAK_API_REVISION 6
/*
Revision 2
@@ -157,11 +163,13 @@ typedef enum {
EE_NOT_FOUND=2
} espeak_ERROR;

#define espeakINITIALIZE_PHONEME_EVENTS 0x0001
#define espeakINITIALIZE_DONT_EXIT 0x8000

#ifdef __cplusplus
extern "C"
#endif
int espeak_Initialize(espeak_AUDIO_OUTPUT output, int buflength, const char *path, int options);
ESPEAK_API int espeak_Initialize(espeak_AUDIO_OUTPUT output, int buflength, const char *path, int options);
/* Must be called before any synthesis functions are called.
output: the audio data can either be played by eSpeak or passed back by the SynthCallback function.

@@ -169,8 +177,8 @@ int espeak_Initialize(espeak_AUDIO_OUTPUT output, int buflength, const char *pat

path: The directory which contains the espeak-data directory, or NULL for the default location.

options: bit 0: 1=allow espeakEVENT_PHONEME events.
options: bit 0: 1=allow espeakEVENT_PHONEME events.
bit 15: 1=don't exit if espeak_data is not found (used for --help)

Returns: sample rate in Hz, or -1 (EE_INTERNAL_ERROR).
*/
@@ -180,7 +188,7 @@ typedef int (t_espeak_callback)(short*, int, espeak_EVENT*);
#ifdef __cplusplus
extern "C"
#endif
void espeak_SetSynthCallback(t_espeak_callback* SynthCallback);
ESPEAK_API void espeak_SetSynthCallback(t_espeak_callback* SynthCallback);
/* Must be called before any synthesis functions are called.
This specifies a function in the calling program which is called when a buffer of
speech sound data has been produced.
@@ -208,7 +216,7 @@ int SynthCallback(short *wav, int numsamples, espeak_EVENT *events);
#ifdef __cplusplus
extern "C"
#endif
void espeak_SetUriCallback(int (*UriCallback)(int, const char*, const char*));
ESPEAK_API void espeak_SetUriCallback(int (*UriCallback)(int, const char*, const char*));
/* This function may be called before synthesis functions are used, in order to deal with
<audio> tags. It specifies a callback function which is called when an <audio> element is
encountered and allows the calling program to indicate whether the sound file which
@@ -249,7 +257,7 @@ int UriCallback(int type, const char *uri, const char *base);
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_Synth(const void *text,
ESPEAK_API espeak_ERROR espeak_Synth(const void *text,
size_t size,
unsigned int position,
espeak_POSITION_TYPE position_type,
@@ -305,7 +313,7 @@ espeak_ERROR espeak_Synth(const void *text,
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_Synth_Mark(const void *text,
ESPEAK_API espeak_ERROR espeak_Synth_Mark(const void *text,
size_t size,
const char *index_mark,
unsigned int end_position,
@@ -329,7 +337,7 @@ espeak_ERROR espeak_Synth_Mark(const void *text,
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_Key(const char *key_name);
ESPEAK_API espeak_ERROR espeak_Key(const char *key_name);
/* Speak the name of a keyboard key.
If key_name is a single character, it speaks the name of the character.
Otherwise, it speaks key_name as a text string.
@@ -343,7 +351,7 @@ espeak_ERROR espeak_Key(const char *key_name);
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_Char(wchar_t character);
ESPEAK_API espeak_ERROR espeak_Char(wchar_t character);
/* Speak the name of the given character

Return: EE_OK: operation achieved
@@ -388,7 +396,7 @@ typedef enum {
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_SetParameter(espeak_PARAMETER parameter, int value, int relative);
ESPEAK_API espeak_ERROR espeak_SetParameter(espeak_PARAMETER parameter, int value, int relative);
/* Sets the value of the specified parameter.
relative=0 Sets the absolute value of the parameter.
relative=1 Sets a relative value of the parameter.
@@ -425,7 +433,7 @@ espeak_ERROR espeak_SetParameter(espeak_PARAMETER parameter, int value, int rela
#ifdef __cplusplus
extern "C"
#endif
int espeak_GetParameter(espeak_PARAMETER parameter, int current);
ESPEAK_API int espeak_GetParameter(espeak_PARAMETER parameter, int current);
/* current=0 Returns the default value of the specified parameter.
current=1 Returns the current value of the specified parameter, as set by SetParameter()
*/
@@ -433,7 +441,7 @@ int espeak_GetParameter(espeak_PARAMETER parameter, int current);
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_SetPunctuationList(const wchar_t *punctlist);
ESPEAK_API espeak_ERROR espeak_SetPunctuationList(const wchar_t *punctlist);
/* Specified a list of punctuation characters whose names are to be spoken when the
value of the Punctuation parameter is set to "some".

@@ -448,7 +456,7 @@ espeak_ERROR espeak_SetPunctuationList(const wchar_t *punctlist);
#ifdef __cplusplus
extern "C"
#endif
void espeak_SetPhonemeTrace(int value, FILE *stream);
ESPEAK_API void espeak_SetPhonemeTrace(int value, FILE *stream);
/* Controls the output of phoneme symbols for the text
value=0 No phoneme output (default)
value=1 Output the translated phoneme symbols for the text
@@ -461,7 +469,7 @@ void espeak_SetPhonemeTrace(int value, FILE *stream);
#ifdef __cplusplus
extern "C"
#endif
void espeak_CompileDictionary(const char *path, FILE *log, int flags);
ESPEAK_API void espeak_CompileDictionary(const char *path, FILE *log, int flags);
/* Compile pronunciation dictionary for a language which corresponds to the currently
selected voice. The required voice should be selected before calling this function.

@@ -514,7 +522,7 @@ typedef struct {
#ifdef __cplusplus
extern "C"
#endif
const espeak_VOICE **espeak_ListVoices(espeak_VOICE *voice_spec);
ESPEAK_API const espeak_VOICE **espeak_ListVoices(espeak_VOICE *voice_spec);
/* Reads the voice files from espeak-data/voices and creates an array of espeak_VOICE pointers.
The list is terminated by a NULL pointer

@@ -526,7 +534,7 @@ const espeak_VOICE **espeak_ListVoices(espeak_VOICE *voice_spec);
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_SetVoiceByName(const char *name);
ESPEAK_API espeak_ERROR espeak_SetVoiceByName(const char *name);
/* Searches for a voice with a matching "name" field. Language is not considered.
"name" is a UTF8 string.

@@ -539,7 +547,7 @@ espeak_ERROR espeak_SetVoiceByName(const char *name);
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_SetVoiceByProperties(espeak_VOICE *voice_spec);
ESPEAK_API espeak_ERROR espeak_SetVoiceByProperties(espeak_VOICE *voice_spec);
/* An espeak_VOICE structure is used to pass criteria to select a voice. Any of the following
fields may be set:

@@ -559,7 +567,7 @@ espeak_ERROR espeak_SetVoiceByProperties(espeak_VOICE *voice_spec);
#ifdef __cplusplus
extern "C"
#endif
espeak_VOICE *espeak_GetCurrentVoice(void);
ESPEAK_API espeak_VOICE *espeak_GetCurrentVoice(void);
/* Returns the espeak_VOICE data for the currently selected voice.
This is not affected by temporary voice changes caused by SSML elements such as <voice> and <s>
*/
@@ -567,7 +575,7 @@ espeak_VOICE *espeak_GetCurrentVoice(void);
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_Cancel(void);
ESPEAK_API espeak_ERROR espeak_Cancel(void);
/* Stop immediately synthesis and audio output of the current text. When this
function returns, the audio output is fully stopped and the synthesizer is ready to
synthesize a new message.
@@ -580,14 +588,14 @@ espeak_ERROR espeak_Cancel(void);
#ifdef __cplusplus
extern "C"
#endif
int espeak_IsPlaying(void);
ESPEAK_API int espeak_IsPlaying(void);
/* Returns 1 if audio is played, 0 otherwise.
*/

#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_Synchronize(void);
ESPEAK_API espeak_ERROR espeak_Synchronize(void);
/* This function returns when all data have been spoken.
Return: EE_OK: operation achieved
EE_INTERNAL_ERROR.
@@ -596,7 +604,7 @@ espeak_ERROR espeak_Synchronize(void);
#ifdef __cplusplus
extern "C"
#endif
espeak_ERROR espeak_Terminate(void);
ESPEAK_API espeak_ERROR espeak_Terminate(void);
/* last function to be called.
Return: EE_OK: operation achieved
EE_INTERNAL_ERROR.
@@ -606,8 +614,8 @@ espeak_ERROR espeak_Terminate(void);
#ifdef __cplusplus
extern "C"
#endif
const char *espeak_Info(void* ptr);
ESPEAK_API const char *espeak_Info(const char **path_data);
/* Returns the version number string.
The parameter is for future use, and should be set to NULL
path_data returns the path to espeak_data
*/
#endif

Loading…
Cancel
Save