Cause: In the __wait_synthesis() function, if the synth_control is changed from DOING
to DONE and there's no next speak_data, the synthesis is terminated. At this time, it
is normal operation, even if there's no speak data.
Solution: Change error to no error, when speak data is empty.
Reference log:
01-27 05:01:43.733+0900 I/ttsd (P 798, T 798): ttsd_server.c: __wait_synthesis(100) > [Server] synth_control(1)
01-27 05:01:43.733+0900 D/ttsd (P 798, T 798): ttsd_server.c: __synthesis(116) > @@@ SYNTHESIS START
01-27 05:01:43.733+0900 W/ttsd (P 798, T 798): ttsd_data.cpp: ttsd_data_get_speak_data(563) > [DATA WARNING] There is no speak data
01-27 05:01:43.733+0900 D/ttsd (P 798, T 798): ttsd_server.c: __synthesis(121) > @@@ Fail to get speak data. ret(-
49348604)
01-27 05:01:43.733+0900 D/ttsd (P 798, T 798): ttsd_server.c: __synthesis(122) > @@@ SYNTHESIS END
Change-Id: I8ce4823ee9791b1b2854c1f1ed7c01469151807e
speak_data_s* speak_data = NULL;
int ret = ttsd_data_get_speak_data(uid, &speak_data);
if (TTSD_ERROR_NONE != ret || NULL == speak_data) {
- SLOG(LOG_DEBUG, tts_tag(), "@@@ Fail to get speak data. ret(%d)", ret);
- SLOG(LOG_DEBUG, tts_tag(), "@@@ SYNTHESIS END");
+ SLOG(LOG_DEBUG, tts_tag(), "@@@ No speak data. ret(%d)", ret);
+ SLOG(LOG_INFO, tts_tag(), "@@@ SYNTHESIS END");
return;
}