Ich entwickle eine Android App basierend auf Ton- und Videoaufzeichnungen. Ich möchte eine Echtzeit-Wiedergabe des Mikrofon-Audios in den Kopfhörern erhalten, während ich Video und Ton in der Vorschau sehe und festhalte.Android: Rohaudio aufnehmen und Video gleichzeitig aufnehmen
Was ich jetzt, arbeitete gut allein:
1) verwendet Bibliothek mit Superkräften, um Audio und es zurück in Echtzeit (während der Vorschau und Aufzeichnung zu spielen). Hinter der Szene tut es direkt mit C++ die Arbeit von AudioRecord, indem es den Puffer zum Ausgang (Kopfhörer) schiebt. Ziel ist es, Audioeffekte in Echtzeit auf den Rohton anzuwenden.
2) erfassen das Video mit mediaRecorder
Wenn die Audiowiedergabe läuft, ich versuche, die Videoaufzeichnung zu starten, stürzt Start:
E/MediaRecorder: start failed: -2147483648
Ich stelle mir vor, dass ich nicht zwei Aufnahme starten können gleichzeitig verarbeiten. Ich denke, die Verwendung der AudioRecord- oder Superpowered-Lib ist eine gute Möglichkeit, das Rohaudio zu verarbeiten, aber ich kann nicht herausfinden, wie man Video aufnimmt, ohne mit der aktuellen Audioaufnahme in Konflikt zu geraten.
Also gibt es eine Möglichkeit, meine Funktion zu erreichen?
(minSdk 16)
Ich kann beide gleichzeitig mit dem MediaRecorder ohne audioSource für Video aufnehmen (und die Komplexität von MediaCodec ohne MediaMuxer als api16 vermeiden) und meine Superpowered lib für das Audio. Danach füge ich meine zwei Dateien mit ffmpeg zusammen. – ddp