pollingLongRunningRecognize method
Future<LongRunningRequestResult>
pollingLongRunningRecognize(
- RecognitionConfigV2 config,
- String audioGcsUri, {
- Duration pollInterval = const Duration(seconds: 1),
- String location = 'global',
Sends a LongRunningRecognizeRequest request to the Google Speech Api. Requires a RecognitionConfigV2 and an RecognitionAudio.
To use asynchronous speech recognition to transcribe audio longer than 60 seconds, you must have your data saved in a Google Cloud Storage bucket.
Polls the Operation and returns a LongRunningRequestResult
as soon as
the Operation is finished.
Implementation
Future<LongRunningRequestResult> pollingLongRunningRecognize(
RecognitionConfigV2 config, String audioGcsUri,
{Duration pollInterval = const Duration(seconds: 1), String location = 'global'}) async {
final client = SpeechClient(_channel, options: _options);
// transform audio to RecognitionAudio
final recognitionAudio = BatchRecognizeFileMetadata()..uri = audioGcsUri;
// Create the request, which transmits the necessary
// data to the Google Api.
final request = BatchRecognizeRequest(
recognizer: 'projects/$projectId/locations/$location/recognizers/_',
files: [recognitionAudio],
config: config.toConfig(),
recognitionOutputConfig:
RecognitionOutputConfig(inlineResponseConfig: InlineOutputConfig()),
);
final operation = await client.batchRecognize(request);
return _pollOperation(operation, pollInterval);
}