speechToTextApi method
- File content
Converts speech to text using an API.
Sends a POST request to the speech-to-text API with the provided content
audio file.
Returns a String containing the transcribed text if successful, or 'Failed' if an error occurs.
The function uses multipart/form-data to send the audio file.
Implementation
Future<String> speechToTextApi(File content) async {
// final uri = Uri.parse("http://10.0.2.2:8440/speech-to-text");
final uri= Uri.parse('$baseUrl/speech-to-text');
final request = http.MultipartRequest('POST', uri);
request.headers['Content-Type'] = 'multipart/form-data';
request.files.add(await http.MultipartFile.fromPath('audio', content.path));
request.fields['model'] = 'deepgram_stt';
request.fields['deepgram_model'] = 'aura-helios-en';
try {
final response = await request.send();
print(response.statusCode);
if (response.statusCode == 200 || response.statusCode == 307) {
print("API Call Successful");
final responseBody = await response.stream.bytesToString();
return responseBody;
} else {
print("Failed to call API: ${response.statusCode}");
return 'Failed';
}
} catch (e) {
print('Error: $e');
return 'Failed';
}
}