2016-05-29 40 views
0

Ich habe die Audiodaten aus .m4a-Datei mit mp4v2 Bibliothek extrahiert (Beispiel für Beispiel). Hat diese Bibliothek eine Funktion, die die Daten dekodiert? Jemand mit Erfahrung mit dieser Bibliothek und kann Ihnen helfen?mp4v2 Extrahieren und Decodieren von Daten aus. M4A-Datei

The documentation sagt:

MP4ReadSample Funktion die angegebene Probe aus der angegebenen Spur liest. Typischerweise wird dieses Sample dann in einer Codec-abhängigen Weise decodiert und in geeigneter Weise wiedergegeben.

Ich interessiere mich für die Decodierung des Ausgangs.

Vielen Dank im Voraus.

+0

Sie sollten lieber Ihren Code hinzufügen und was Sie bisher versucht haben, es für bestimmte Aufgabe arbeiten zu lassen. Allgemeine Bibliotheksdiskussionen sind zu breit und meinungsorientiert, daher nicht hier. –

+0

Danke Roman. Ich habe das Thema aktualisiert und weitere Erläuterungen hinzugefügt. – mbaros

Antwort

0

Ich habe alles erforscht und die Antwort ist NEIN. Es gibt keinen Decoder in mp4/mp4v2-Bibliotheken. Man muss dafür eine andere Bibliothek benutzen.

1

Sie haben MP4 (Videodaten) und M4A (Audiodaten) getaggt. Da Sie von M4A extrahieren, kann ich nur vorstellen, dass Sie entweder AAC oder MP3 Audio Daten haben.

Jede extrahierte Probe (Bytes) ist Audio-Frame.

So erstellen Sie eine spielbare MP3-Datei: Verbinden Sie einfach alle Bytes der MP3-Frames zusammen. Speichern Sie als .mp3, um später zu spielen.

So erstellen Sie eine abspielbare AAC-Datei: Erstellen Sie für jeden AAC-Rahmen zunächst einen (7 Byte) gefolgt von den Daten dieses Rahmens. Sie können Ihre Header-Bytes testen here (Website zeigt, was Ihre Byte-Werte bedeuten). Wenn alle Ihre AAC-Frames jeweils mit einem ADTS-Header beginnen, speichern Sie einfach unter .aac, um später mit einem Audio-Payer-Code abzuspielen.