Whisper library speech to text offline,
dart pub add whisper_dart
- OS: Ubuntu 20.4 CPU: AMD Ryzen 5500u Ram: 8gb
- OS: Windows 11 Pro 22H2 (22621.1105) CPU: AMD Ryzen 3600 Ram: 16gb
- OS: Android 11 CPU: Snapdragon 665 Ram: 3gb
- OS: Android 13 CPU: Snapdragon 730 Ram: 4gb
auto convert a given audio to a proper wav accepted by whisper, ffmpeg
must be installed
import 'package:galaxeus_lib/galaxeus_lib.dart';
import 'package:universal_io/io.dart';
import 'package:whisper_dart/whisper_dart.dart';
import 'package:ffmpeg_dart/ffmpeg_dart.dart';
void main(List<String> arguments) {
DateTime time = DateTime.now();
Whisper whisper = Whisper(
whisperLib: "whisper.cpp/whisper.so",
);
try {
var res = whisper.request(
whisperRequest: WhisperRequest.fromWavFile(
/// auto convert to wav 16
audio: WhisperAudioconvert.convert(
audioInput: File("samples/audio.ogg"),
audioOutput: File("samples/output.wav"),
),
model: File("models/ggml-model-whisper-small.bin"),
),
);
print(res.toString());
print(convertToAgo(time.millisecondsSinceEpoch));
} catch (e) {
print(e);
}
}
example convert audio to text without auto convert
import 'package:galaxeus_lib/galaxeus_lib.dart';
import 'package:universal_io/io.dart';
import 'package:whisper_dart/whisper_dart.dart';
import 'package:ffmpeg_dart/ffmpeg_dart.dart';
void main(List<String> arguments) {
DateTime time = DateTime.now();
Whisper whisper = Whisper(
whisperLib: "whisper.cpp/whisper.so",
);
try {
var res = whisper.request(
whisperRequest: WhisperRequest.fromWavFile(
audio: File("samples/output.wav"),
model: File("models/ggml-model-whisper-small.bin"),
),
);
print(res.toString());
print(convertToAgo(time.millisecondsSinceEpoch));
} catch (e) {
print(e);
}
}
result
{
"@type": "transcribe",
"text": " And so my fellow Americans, ask not what your country can do for you, ask what you can do for your country."
}
Language Support