Revision 2e526a15 server/include/ROS/UtteranceCallbackWrapperROS.h
server/include/ROS/UtteranceCallbackWrapperROS.h | ||
---|---|---|
51 | 51 |
//everything is ok, will be cleared on failures |
52 | 52 |
feedback.result = 1; |
53 | 53 |
|
54 |
Utterance utterance;
|
|
54 |
boost::shared_ptr<Utterance> utterance(new Utterance());
|
|
55 | 55 |
|
56 | 56 |
//copy values: |
57 |
utterance.set_text(request->text); |
|
58 |
AudioData audio_data; |
|
59 |
if (!extract_audio(request->audio, &audio_data)){ |
|
57 |
utterance->set_text(request->text); |
|
58 |
|
|
59 |
boost::shared_ptr<AudioData> audio_data(new AudioData()); |
|
60 |
if (!extract_audio(request->audio, audio_data)){ |
|
60 | 61 |
feedback.result = 0; |
61 | 62 |
} |
62 | 63 |
|
63 |
utterance.set_audio_data(audio_data);
|
|
64 |
utterance.set_phoneme_vector(extract_phoneme_vector(request->phonemes));
|
|
64 |
utterance->set_audio_data(audio_data);
|
|
65 |
utterance->set_phoneme_vector(extract_phoneme_vector(request->phonemes));
|
|
65 | 66 |
|
66 | 67 |
//send to application; |
67 | 68 |
mw->utterance_callback(utterance); |
... | ... | |
77 | 78 |
|
78 | 79 |
|
79 | 80 |
//convert ros message audio data to our own implementation |
80 |
bool extract_audio(hlrc_server::soundchunk sound_chunk, AudioData *audio_data){
|
|
81 |
bool extract_audio(hlrc_server::soundchunk sound_chunk, boost::shared_ptr<AudioData> audio_data){
|
|
81 | 82 |
//extract data: |
82 | 83 |
unsigned int audio_len = sound_chunk.data.size(); |
83 | 84 |
char *audio_data_char = (char *)sound_chunk.data.data(); |
Also available in: Unified diff