Wie kann ich die Sprachaufnahme in Android anhalten?

7

Mein Ziel ist es, die Aufnahmedatei anzuhalten. Ich sehe auf der Android-Entwickler-Website, aber Media Recorder haben keine Pause-Option.

Java unterstützt die automatische Zusammenführung zweier Audiodateien, aber bei Android funktioniert das nicht.

Zwei WAV-Dateien aus Java zusammenfügen?

Und ich habe auch Standard-Gerät Audio-Recorder-Apps verwendet, die in allen Geräten zur Verfügung steht, aber in Samsung haben wenige Geräte Aufnahmepfad nicht wiederhergestellt.

%Vor%

Jede Hilfe zur Sprachaufnahme mit Pausenfunktion.

    
patel 08.05.2013, 08:28
quelle

4 Antworten

9

Ссылка

MediaRecorder verfügt nicht über Methoden zum Anhalten und Fortsetzen. Sie müssen stattdessen die Methoden stop und start verwenden.

    
Raghunandan 08.05.2013, 08:32
quelle
6

Sie können meine Antwort hier wenn dieses Problem weiterhin besteht. Für API-Ebene & gt; = 24 Methoden zum Anhalten / Fortsetzen sind in der Android MediaRecorder-Klasse verfügbar.

Für API-Ebene & lt; 24

Fügen Sie die Abhängigkeit in Ihrer Gradle-Datei hinzu:

%Vor%

Die Lösung besteht darin, den Rekorder anzuhalten, wenn der Benutzer pausiert und erneut startet, wie bereits in vielen anderen Antworten in stackoverflow erwähnt. Speichern Sie alle Audio- / Videodateien, die in einem Array generiert wurden, und verwenden Sie die folgende Methode, um alle Mediendateien zusammenzuführen. Das Beispiel stammt aus der mp4parser-Bibliothek und wurde nach meinem Bedarf modifiziert.

%Vor%

Verwenden Sie das Flag isAudio als wahr für Audiodateien und als falsch für Videodateien.

    
Nitin Mathur 13.09.2016 11:08
quelle
5

Ich hatte eine solche Anforderung in einem meiner Projekte. Was wir getan haben, war wie eine rohe Datei zum Speichern der aufgezeichneten Daten beim Start der Aufzeichnung mit AudioRecord zu erstellen, die für jeden Lebenslauf die Daten an die gleiche Datei anhängen

wie

%Vor%

Hier ist der Dateiname der Name der Rohdatei und hängt die neuen Aufzeichnungsdaten an ihn an.

Und wenn der Benutzer die Aufnahme stoppt, konvertieren wir die gesamte Rohdatei in .wav (oder andere) Formate. Es tut mir leid, dass ich den gesamten Code nicht posten kann. Hoffe, das wird dir eine Richtung zur Arbeit geben.

    
Arun C 08.05.2013 08:37
quelle
1

Sie können dies nicht mit der Android-API tun, aber Sie können viele mp4-Dateien speichern und mit mp4parser : leistungsfähige Bibliothek in Java geschrieben. Siehe auch meine einfache Aufnahme mit einer "Pause": Ссылка .

    
Mikalai Daronin 17.09.2013 16:33
quelle