Struct google_api_proto::google::cloud::dialogflow::v2beta1::BargeInConfig
source · pub struct BargeInConfig {
pub no_barge_in_duration: Option<Duration>,
pub total_duration: Option<Duration>,
}
Expand description
Configuration of the barge-in behavior. Barge-in instructs the API to return a detected utterance at a proper time while the client is playing back the response audio from a previous request. When the client sees the utterance, it should stop the playback and immediately get ready for receiving the responses for the current request.
The barge-in handling requires the client to start streaming audio input as soon as it starts playing back the audio from the previous response. The playback is modeled into two phases:
-
No barge-in phase: which goes first and during which speech detection should not be carried out.
-
Barge-in phase: which follows the no barge-in phase and during which the API starts speech detection and may inform the client that an utterance has been detected. Note that no-speech event is not expected in this phase.
The client provides this configuration in terms of the durations of those two phases. The durations are measured in terms of the audio length from the start of the input audio.
The flow goes like below:
--> Time
without speech detection | utterance only | utterance or no-speech event
| |
+-------------+ | +------------+ | +---------------+
----------+ no barge-in +-|-+ barge-in +-|-+ normal period +-----------
+-------------+ | +------------+ | +---------------+
No-speech event is a response with END_OF_UTTERANCE without any transcript following up.
Fields§
§no_barge_in_duration: Option<Duration>
Duration that is not eligible for barge-in at the beginning of the input audio.
total_duration: Option<Duration>
Total duration for the playback at the beginning of the input audio.
Trait Implementations§
source§impl Clone for BargeInConfig
impl Clone for BargeInConfig
source§fn clone(&self) -> BargeInConfig
fn clone(&self) -> BargeInConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for BargeInConfig
impl Debug for BargeInConfig
source§impl Default for BargeInConfig
impl Default for BargeInConfig
source§impl Message for BargeInConfig
impl Message for BargeInConfig
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for BargeInConfig
impl PartialEq for BargeInConfig
source§fn eq(&self, other: &BargeInConfig) -> bool
fn eq(&self, other: &BargeInConfig) -> bool
self
and other
values to be equal, and is used
by ==
.impl Copy for BargeInConfig
impl StructuralPartialEq for BargeInConfig
Auto Trait Implementations§
impl Freeze for BargeInConfig
impl RefUnwindSafe for BargeInConfig
impl Send for BargeInConfig
impl Sync for BargeInConfig
impl Unpin for BargeInConfig
impl UnwindSafe for BargeInConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request