From c944a17d7d7214ba7ca9c9072bb170f3218e240a Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Wed, 10 Feb 2016 07:14:10 +0000 Subject: [PATCH] Output any audio errors to stderr. --- src/libespeak-ng/speech.c | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/libespeak-ng/speech.c b/src/libespeak-ng/speech.c index 81c83e7b..aa00c16c 100644 --- a/src/libespeak-ng/speech.c +++ b/src/libespeak-ng/speech.c @@ -121,8 +121,9 @@ static int dispatch_audio(short *outbuf, int length, espeak_EVENT *event) #endif out_samplerate = voice_samplerate; #ifdef HAVE_PCAUDIOLIB_AUDIO_H - audio_object_open(my_audio, AUDIO_OBJECT_FORMAT_S16LE, voice_samplerate, 1); - if (!my_audio) { + int error = audio_object_open(my_audio, AUDIO_OBJECT_FORMAT_S16LE, voice_samplerate, 1); + if (error != 0) { + fprintf(stderr, "error: %s\n", audio_object_strerror(my_audio, error)); err = ENS_AUDIO_ERROR; return -1; } @@ -135,8 +136,11 @@ static int dispatch_audio(short *outbuf, int length, espeak_EVENT *event) } #ifdef HAVE_PCAUDIOLIB_AUDIO_H - if (outbuf && length && a_wave_can_be_played) - audio_object_write(my_audio, (char *)outbuf, 2*length); + if (outbuf && length && a_wave_can_be_played) { + int error = audio_object_write(my_audio, (char *)outbuf, 2*length); + if (error != 0) + fprintf(stderr, "error: %s\n", audio_object_strerror(my_audio, error)); + } #endif #ifdef USE_ASYNC @@ -500,8 +504,11 @@ espeak_ng_STATUS sync_espeak_Synth(unsigned int unique_identifier, const void *t espeak_ng_STATUS aStatus = Synthesize(unique_identifier, text, flags); #ifdef HAVE_PCAUDIOLIB_AUDIO_H - if ((my_mode & ENOUTPUT_MODE_SPEAK_AUDIO) == ENOUTPUT_MODE_SPEAK_AUDIO) - audio_object_drain(my_audio); + if ((my_mode & ENOUTPUT_MODE_SPEAK_AUDIO) == ENOUTPUT_MODE_SPEAK_AUDIO) { + int error = audio_object_drain(my_audio); + if (error != 0) + fprintf(stderr, "error: %s\n", audio_object_strerror(my_audio, error)); + } #endif return aStatus;