Class StreamingRecognizeResponse (2.3.0)

public sealed class StreamingRecognizeResponse : IMessage<StreamingRecognizeResponse>, IEquatable<StreamingRecognizeResponse>, IDeepCloneable<StreamingRecognizeResponse>, IBufferMessage, IMessage

StreamingRecognizeResponse is the only message returned to the client by StreamingRecognize. A series of zero or more StreamingRecognizeResponse messages are streamed back to the client. If there is no recognizable audio, and single_utterance is set to false, then no messages are streamed back to the client.

Here's an example of a series of StreamingRecognizeResponses that might be returned while processing audio:

  1. results { alternatives { transcript: "tube" } stability: 0.01 }

  2. results { alternatives { transcript: "to be a" } stability: 0.01 }

  3. results { alternatives { transcript: "to be" } stability: 0.9 } results { alternatives { transcript: " or not to be" } stability: 0.01 }

  4. results { alternatives { transcript: "to be or not to be" confidence: 0.92 } alternatives { transcript: "to bee or not to bee" } is_final: true }

  5. results { alternatives { transcript: " that's" } stability: 0.01 }

  6. results { alternatives { transcript: " that is" } stability: 0.9 } results { alternatives { transcript: " the question" } stability: 0.01 }

  7. results { alternatives { transcript: " that is the question" confidence: 0.98 } alternatives { transcript: " that was the question" } is_final: true }

Notes:

  • Only two of the above responses #4 and #7 contain final results; they are indicated by is_final: true. Concatenating these together generates the full transcript: "to be or not to be that is the question".

  • The others contain interim results. #3 and #6 contain two interim results: the first portion has a high stability and is less likely to change; the second portion has a low stability and is very likely to change. A UI designer might choose to show only high stability results.

  • The specific stability and confidence values shown above are only for illustrative purposes. Actual values may vary.

  • In each response, only one of these fields will be set: error, speech_event_type, or one or more (repeated) results.

Inheritance

Object > StreamingRecognizeResponse

Namespace

Google.Cloud.Speech.V1

Assembly

Google.Cloud.Speech.V1.dll

Constructors

StreamingRecognizeResponse()

public StreamingRecognizeResponse()

StreamingRecognizeResponse(StreamingRecognizeResponse)

public StreamingRecognizeResponse(StreamingRecognizeResponse other)
Parameter
NameDescription
otherStreamingRecognizeResponse

Properties

Error

public Status Error { get; set; }

If set, returns a [google.rpc.Status][google.rpc.Status] message that specifies the error for the operation.

Property Value
TypeDescription
Status

Results

public RepeatedField<StreamingRecognitionResult> Results { get; }

This repeated list contains zero or more results that correspond to consecutive portions of the audio currently being processed. It contains zero or one is_final=true result (the newly settled portion), followed by zero or more is_final=false results (the interim results).

Property Value
TypeDescription
RepeatedField<StreamingRecognitionResult>

SpeechEventType

public StreamingRecognizeResponse.Types.SpeechEventType SpeechEventType { get; set; }

Indicates the type of speech event.

Property Value
TypeDescription
StreamingRecognizeResponse.Types.SpeechEventType

TotalBilledTime

public Duration TotalBilledTime { get; set; }

When available, billed audio seconds for the stream. Set only if this is the last response in the stream.

Property Value
TypeDescription
Duration