This call was used to update the written sample count used by wave_get_remaining_time. As that function has been removed, this code is no longer needed.master
 Reece H. Dunn
					
					9 years ago
						Reece H. Dunn
					
					9 years ago
				| @@ -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) | |||
| @@ -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 | |||
| @@ -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. | |||
| @@ -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 | |||
| @@ -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: | |||