Aus öffentlichen Paketdaten erstellte Orientierung.
Ein Flutter-Paket, das Audioaufnahmen mit Echtzeit-Waveform-Visualisierung ermöglicht und für Anwendungen entwickelt wurde, die Sprachnachrichten oder Audioeingabefunktionen erfordern. Es unterstützt mehrere Plattformen wie Android, iOS, Web, macOS, Windows und Linux und bietet eine reibungslose Benutzererfahrung mit visueller Rückmeldung während der Aufnahme. Das Paket lässt sich nahtlos in Chat- oder Kommunikations-Apps integrieren, sodass Benutzer ihre Sprachwellen sehen können, während sie sprechen. Auf Leistung und konsistente Funktionalität über Plattformen hinweg ausgelegt, vereinfacht es die Implementierung von Audioaufnahmefunktionen mit minimalem Setup.
Anwendungsfälle
Sprachnachrichten in Chat-Apps
Audio-Notizenaufnahme
Echtzeit-Audio-Rückmeldung
Podcast-Aufnahmeeinheiten
interaktive, sprachbasierte Spiele
Live-Audio-Streaming-Vorschauen
Hauptmerkmale
Echtzeit-Wellenformvisualisierung
Plattformübergreifende Unterstützung
Einfache API zum Aufnehmen
Visuelle Rückmeldung während der Aufnahme
niedrige Latenz-Audioprozessierung
Eingebaute Wiedergabesteuerung
Geeignet für
Entwickler, die Chat-Anwendungen erstellen
Ersteller von sprachbasierten Tools
Lern-Apps mit Audioeingabe
Audioaufnahme-Prototypen
Apps, die eine intuitive Audio-Oberfläche erfordern
Hinweise
Mikrofonberechtigungen auf allen Plattformen erforderlich
Die Webunterstützung kann browserbezogene Einschränkungen aufweisen
Große Aufnahmen können die Speichernutzung beeinflussen
Die Leistung variiert bei Geräten mit geringer Leistung
Beschränkte Anpassung der Wellenformdarstellung
Abhängig von den zugrundeliegenden Plattform-Audio-APIs
Original-README
Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.
The waveform_recorder package
provides a widget to show a waveform as an audio stream is being recorded in the
style of recent AI chat packages.
The main entry point for this package is the WaveformRecorder widget, which
requires an instance of the WaveformRecorderController to start/stop
recording. Here's an example of using the recorder to record audio and then
allowing the user to play it back:
For all platforms except the web, the output of a record operation is a file on
your hard drive; it's your app's responsibility to remove this temp file when
it's done with it. When executing on the web, the file (an instance of the XFile
type from the cross_file package) of the
recorded audio will contain a path to a blob URL but otherwise, it will be a
file in the file system. You can get the path to that file from
WaveformRecorderController.file.path, e.g.
Future<void> _deleteRecording() async {
final file = _waveController.file;
if (file == null) return;
if (!kIsWeb) awaitFile(file.path).delete();
}