// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`StartSpeechSynthesisStream`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`engine(Engine)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::engine) / [`set_engine(Option<Engine>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::set_engine):<br>required: **true**<br><p>Specifies the engine for Amazon Polly to use when processing input text for speech synthesis. Currently, only the <code>generative</code> engine is supported. If you specify a voice that the selected engine doesn't support, Amazon Polly returns an error.</p><br>
    ///   - [`language_code(LanguageCode)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::language_code) / [`set_language_code(Option<LanguageCode>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::set_language_code):<br>required: **false**<br><p>An optional parameter that sets the language code for the speech synthesis request. Specify this parameter only when using a bilingual voice. If a bilingual voice is used and no language code is specified, Amazon Polly uses the default language of the bilingual voice.</p><br>
    ///   - [`lexicon_names(impl Into<String>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::lexicon_names) / [`set_lexicon_names(Option<Vec::<String>>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::set_lexicon_names):<br>required: **false**<br><p>The names of one or more pronunciation lexicons for the service to apply during synthesis. Amazon Polly applies lexicons only when the lexicon language matches the voice language.</p><br>
    ///   - [`output_format(OutputFormat)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::output_format) / [`set_output_format(Option<OutputFormat>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::set_output_format):<br>required: **true**<br><p>The audio format for the synthesized speech. Currently, Amazon Polly does not support JSON speech marks.</p><br>
    ///   - [`sample_rate(impl Into<String>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::sample_rate) / [`set_sample_rate(Option<String>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::set_sample_rate):<br>required: **false**<br><p>The audio frequency, specified in Hz.</p><br>
    ///   - [`voice_id(VoiceId)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::voice_id) / [`set_voice_id(Option<VoiceId>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::set_voice_id):<br>required: **true**<br><p>The voice to use in synthesis. To get a list of available voice IDs, use the <a href="https://docs.aws.amazon.com/polly/latest/API/API_DescribeVoices.html">DescribeVoices</a> operation.</p><br>
    ///   - [`action_stream(EventStreamSender<StartSpeechSynthesisStreamActionStream, StartSpeechSynthesisStreamActionStreamError>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::action_stream) / [`set_action_stream(EventStreamSender<StartSpeechSynthesisStreamActionStream, StartSpeechSynthesisStreamActionStreamError>)`](crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::set_action_stream):<br>required: **false**<br><p>The input event stream that contains text events and stream control events.</p><br>
    /// - On success, responds with [`StartSpeechSynthesisStreamOutput`](crate::operation::start_speech_synthesis_stream::StartSpeechSynthesisStreamOutput) with field(s):
    ///   - [`event_stream(EventReceiver<StartSpeechSynthesisStreamEventStream, StartSpeechSynthesisStreamEventStreamError>)`](crate::operation::start_speech_synthesis_stream::StartSpeechSynthesisStreamOutput::event_stream): <p>The output event stream that contains synthesized audio events and stream status events.</p>
    /// - On failure, responds with [`SdkError<StartSpeechSynthesisStreamError>`](crate::operation::start_speech_synthesis_stream::StartSpeechSynthesisStreamError)
    pub fn start_speech_synthesis_stream(
        &self,
    ) -> crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder {
        crate::operation::start_speech_synthesis_stream::builders::StartSpeechSynthesisStreamFluentBuilder::new(self.handle.clone())
    }
}
