startStreamTranscription method

Starts a HTTP/2 stream where audio is streamed to Amazon Transcribe and the TranscriptEvents are streamed to your application.

Implementation

Future<
    (
      StartStreamTranscriptionResponse,
      StreamSink<Uint8List>,
      Stream<TranscriptEvent>,
    )> startStreamTranscription(
  StartStreamTranscriptionRequest request,
) async {
  final (response, audioStreamSink, eventStreamMessages) =
      await send(request);

  return (
    StartStreamTranscriptionResponse.fromHeaders(response.headers),
    audioStreamSink,
    eventStreamMessages.transform(StreamTransformer.fromHandlers(
      handleData:
          (EventStreamMessage event, EventSink<TranscriptEvent> sink) {
        sink.add(TranscriptEvent.fromJson(utf8.decode(event.payload)));
      },
    )),
  );
}