diff --git a/src/libespeak-ng/speech.c b/src/libespeak-ng/speech.c index 143cf8f1..eb6fa379 100644 --- a/src/libespeak-ng/speech.c +++ b/src/libespeak-ng/speech.c @@ -161,7 +161,7 @@ static int dispatch_audio(short *outbuf, int length, espeak_EVENT *event) return a_wave_can_be_played == 0; // 1 = stop synthesis, -1 = error } -static int create_events(short *outbuf, int length, espeak_EVENT *event_list, uint32_t the_write_pos) +static int create_events(short *outbuf, int length, espeak_EVENT *event_list) { int finished; int i = 0; @@ -176,10 +176,8 @@ static int create_events(short *outbuf, int length, espeak_EVENT *event_list, ui espeak_EVENT *event; if (event_list_ix == 0) event = NULL; - else { + else event = event_list + i; - event->sample += the_write_pos; - } finished = dispatch_audio((short *)outbuf, length, event); length = 0; // the wave data are played once. i++; @@ -366,7 +364,6 @@ static espeak_ng_STATUS Synthesize(unsigned int unique_identifier, const void *t int length; int finished = 0; int count_buffers = 0; - uint32_t a_write_pos = 0; if ((outbuf == NULL) || (event_list == NULL)) return ENS_NOT_INITIALIZED; @@ -378,9 +375,6 @@ static espeak_ng_STATUS Synthesize(unsigned int unique_identifier, const void *t count_samples = 0; - if ((my_mode & ENOUTPUT_MODE_SPEAK_AUDIO) == ENOUTPUT_MODE_SPEAK_AUDIO) - a_write_pos = wave_get_write_position(my_audio); - if (translator == NULL) espeak_SetVoiceByName("default"); @@ -400,7 +394,7 @@ static espeak_ng_STATUS Synthesize(unsigned int unique_identifier, const void *t count_buffers++; if ((my_mode & ENOUTPUT_MODE_SPEAK_AUDIO) == ENOUTPUT_MODE_SPEAK_AUDIO) { - finished = create_events((short *)outbuf, length, event_list, a_write_pos); + finished = create_events((short *)outbuf, length, event_list); if (finished < 0) return ENS_AUDIO_ERROR; } else if (synth_callback) diff --git a/src/libespeak-ng/wave.c b/src/libespeak-ng/wave.c index 6c97c66c..acf07101 100644 --- a/src/libespeak-ng/wave.c +++ b/src/libespeak-ng/wave.c @@ -62,7 +62,6 @@ size_t wave_port_write(void *theHandler, char *theMono16BitsWaveBuffer, size_t t int wave_port_close(void *theHandler); int wave_port_is_busy(void *theHandler); void wave_port_terminate(); -uint32_t wave_port_get_write_position(void *theHandler); void wave_port_flush(void *theHandler); void wave_port_set_callback_is_output_enabled(t_wave_callback *cb); void *wave_port_test_get_write_buffer(); @@ -74,7 +73,6 @@ size_t wave_pulse_write(void *theHandler, char *theMono16BitsWaveBuffer, size_t int wave_pulse_close(void *theHandler); int wave_pulse_is_busy(void *theHandler); void wave_pulse_terminate(); -uint32_t wave_pulse_get_write_position(void *theHandler); void wave_pulse_flush(void *theHandler); void wave_pulse_set_callback_is_output_enabled(t_wave_callback *cb); void *wave_pulse_test_get_write_buffer(); @@ -121,14 +119,6 @@ void wave_terminate() wave_port_terminate(); } -uint32_t wave_get_write_position(void *theHandler) -{ - if (pulse_running) - return wave_pulse_get_write_position(theHandler); - else - return wave_port_get_write_position(theHandler); -} - void wave_flush(void *theHandler) { if (pulse_running) @@ -151,7 +141,6 @@ void wave_set_callback_is_output_enabled(t_wave_callback *cb) #define wave_close wave_port_close #define wave_is_busy wave_port_is_busy #define wave_terminate wave_port_terminate -#define wave_get_write_position wave_port_get_write_position #define wave_flush wave_port_flush #define wave_set_callback_is_output_enabled wave_port_set_callback_is_output_enabled @@ -750,13 +739,6 @@ void wave_terminate() Pa_Terminate(); } -uint32_t wave_get_write_position(void *theHandler) -{ - (void)theHandler; // unused - - return myWritePosition; -} - #else void *wave_open(int srate, const char *device) @@ -793,13 +775,6 @@ void wave_terminate() { } -uint32_t wave_get_write_position(void *theHandler) -{ - (void)theHandler; // unused - - return 0; -} - void wave_flush(void *theHandler) { (void)theHandler; // unused diff --git a/src/libespeak-ng/wave.h b/src/libespeak-ng/wave.h index ffaab24b..48b2ce47 100644 --- a/src/libespeak-ng/wave.h +++ b/src/libespeak-ng/wave.h @@ -33,7 +33,6 @@ extern int wave_close(void *theHandler); extern void wave_flush(void *theHandler); extern int wave_is_busy(void *theHandler); extern void wave_terminate(); -extern uint32_t wave_get_write_position(void *theHandler); // set the callback which informs if the output is still enabled. // Helpful if a new sample is waiting for free space whereas sound must be stopped. diff --git a/src/libespeak-ng/wave_pulse.c b/src/libespeak-ng/wave_pulse.c index 67701aa3..037fa6ab 100644 --- a/src/libespeak-ng/wave_pulse.c +++ b/src/libespeak-ng/wave_pulse.c @@ -70,7 +70,6 @@ static t_wave_callback *my_callback_is_output_enabled = NULL; #define wave_close wave_pulse_close #define wave_is_busy wave_pulse_is_busy #define wave_terminate wave_pulse_terminate -#define wave_get_write_position wave_pulse_get_write_position #define wave_flush wave_pulse_flush #define wave_set_callback_is_output_enabled wave_pulse_set_callback_is_output_enabled @@ -609,13 +608,4 @@ void wave_terminate() pthread_mutex_destroy(a_mutex); } -uint32_t wave_get_write_position(void *theHandler) -{ - (void)theHandler; // unused - - pa_timing_info a_timing_info = {0}; - pulse_playing(&a_timing_info); - return a_timing_info.write_index; -} - #endif diff --git a/src/libespeak-ng/wave_sada.c b/src/libespeak-ng/wave_sada.c index 67e4452c..dcf28221 100644 --- a/src/libespeak-ng/wave_sada.c +++ b/src/libespeak-ng/wave_sada.c @@ -298,39 +298,6 @@ void wave_set_callback_is_output_enabled(t_wave_callback *cb) my_callback_is_output_enabled = cb; } -// wave_get_write_position -// -// DESCRIPTION: -// -// Returns an identifier for a new sample, where 'sample' is a small -// buffer of synthesized wave data, identified so that the user -// callback could be called when the 'sample' is really played. This -// implementation views the audio as one long continuous stream of -// 16-bit samples. -// -// PARAMETERS: -// -// theHandler: the audio device file descriptor -// -// GLOBALS USED/MODIFIED: -// -// total_samples_sent: used as the return value -// -// RETURNS: -// -// total_samples_sent, which is the index for the end of this long -// continuous stream. [[[WDW: with a unit32_t managing 16-bit -// samples at 22050Hz, we have about 54 hours of play time before -// the index wraps back to 0. We don't handle that wrapping, so -// the behavior after 54 hours of play time is undefined.]]] -// -uint32_t wave_get_write_position(void *theHandler) -{ - (void)theHandler; // unused - - return total_samples_sent; -} - // wave_get_remaining_time // // DESCRIPTION: