Feature #2436

Add TextToSpeech to the sandbox

Added by S.ör. Klett over 8 years ago. Updated over 8 years ago.

Status:ResolvedStart date:11/18/2015
Priority:NormalDue date:
Assignee:J. Wienke% Done:

100%

Category:Type Proposal
Target version:Robotics Service Bus - rsb-0.13

0001-new-sandbox-proto-file-for-communicating-with-text-t.patch Magnifier (3.95 KB) S.ör. Klett, 11/18/2015 10:59 AM

0001-New-messages-for-communicating-with-text-to-speech-s.patch Magnifier (5.77 KB) J. Wienke, 11/27/2015 11:08 AM

0001-Created-TextToSpeechInstruction.proto.patch Magnifier (4.43 KB) S.ör. Klett, 11/30/2015 04:11 PM

Associated revisions

Revision 925ffd89
Added by S.ör. Klett over 8 years ago

New types TextToSpeechInstruction and Prosody

fixes #2436

Signed-off-by: Johannes Wienke <>

Revision 68093c3d
Added by S.ör. Klett about 8 years ago

New types TextToSpeechInstruction and Prosody

fixes #2436

Signed-off-by: Johannes Wienke <>
(cherry picked from commit 925ffd89f62fae28318c6915eb99065dd9fa7189)

History

#1 Updated by J. Wienke over 8 years ago

  • Status changed from New to In Progress
  • Assignee set to J. Wienke
  • Target version set to rsb-0.13

#2 Updated by J. Wienke over 8 years ago

Thanks for the patch. There are a few things we should discuss or clarify before this can be merged.

  • How does this relate to rst.audition.Utterance?
  • I am not happy with the top-level documentation of the type, because I cannot understand the intended use case for this type from the documentation. Should this be an instruction to a TTS engine to produce a certain text? Or what is meant by this?
  • The name should reflect the aforementioned issue
  • How can everything be optional in this type? If the type represents a text to be vocalized, how can this work without supplying the text?
  • PlackbackOption lacks a comment
  • What is the meaning of the provided PlaybackOption? The comment currently explains that this is an action, but not why it is necessary and what the effect of each action shall be.

#3 Updated by S.ör. Klett over 8 years ago

J. Wienke wrote:

Thanks for the patch. There are a few things we should discuss or clarify before this can be merged.

  • How does this relate to rst.audition.Utterance?

Utterance is only 18 days old? this is unfortunate, but I think one could replace

/**
  * Words which should be vocalized.
*/
optional string text = 1;

by

/**
  * Utterance which should be vocalized.
*/
optional Utterance utterance = 1;

-- also import "rst/..." at the start

  • I am not happy with the top-level documentation of the type, because I cannot understand the intended use case for this type from the documentation. Should this be an instruction to a TTS engine to produce a certain text? Or what is meant by this?

This should be a message to a TTS-module which executes the commands represented in this message. How it maps this proto to it's actual TTS-api is a free choice of the developer.

  • The name should reflect the aforementioned issue

TextToSpeechInstructions ?

  • How can everything be optional in this type? If the type represents a text to be vocalized, how can this work without supplying the text?

Text is optional, because PlaybackOption "STOP" is a valid instruction and does not need text and vice versa.

  • PlackbackOption lacks a comment

if it needs one: * PlaybackOption which should be executed by the TTS

  • What is the meaning of the provided PlaybackOption? The comment currently explains that this is an action, but not why it is necessary and what the effect of each action shall be.

every possible enum has a comment. in the context of a Instruction for a TextToSpeech-engine, this should be a 1 to 1 mapping without any possible misinterpretation.

#4 Updated by J. Wienke over 8 years ago

Would it be possible to talk in person about this type? We have some ideas how to improve the representation.

#5 Updated by J. Wienke over 8 years ago

Attached is a reworked patch after our discussions today. Please address the remaining TODOs in the patch and upload an improved version here.

#6 Updated by S.ör. Klett over 8 years ago

Attached new version of proto-file.

#7 Updated by S.ör. Klett over 8 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 0 to 100

Also available in: Atom PDF