generate method

String generate(
  1. String audioBase64,
  2. String mediaType, [
  3. String? optsJson
])

Transcribe audio to text.

audioBase64 — base64-encoded audio data. mediaType — media type of the audio (e.g. "audio/wav"). optsJson — optional serialized TranscriptionCallOptions. Returns the JSON-serialized TranscriptionResult, or throws AimuxException.

Implementation

String generate(String audioBase64, String mediaType, [String? optsJson]) {
  _checkOpen();
  return withAimuxCError((err) {
    return withUtf8(audioBase64, (audioPtr) {
      return withUtf8(mediaType, (mediaPtr) {
        final optsPtr = optsJson != null ? optsJson.toNativeUtf8() : nullptr;
        try {
          final resultPtr = _ffi.transcriptionGenerate(
              _handle, audioPtr, mediaPtr, optsPtr, err);
          return takeString(resultPtr, err);
        } finally {
          if (optsPtr != nullptr) calloc.free(optsPtr);
        }
      });
    });
  });
}