2017-02-13 4 views
0

Ich arbeite mit RTMP. Ich habe RTMP Packets in Wireshark aufgenommen. Ich weiß, wie man Videodaten zusammenstellt und spielt, aber nicht weiß, wie man Audio spielt. Wireshark sagt mir, dass Daten in .aac sind. Aber ich verstehe nicht, wie ich es spielen kann? Muss ich es in einen Behälter wickeln? wireshark captureWie wird Audio vom RTMP-Stream wiedergegeben?

Antwort

1

AAC kann ohne einen Container abgespielt werden. Aber jeder Frame muss einen ADTS-Header haben (Google kann Ihnen diesen Teil erklären), um von RAW-Frames in ADTS zu konvertieren. Sie müssen den Sequenz-Header vom Anfang des Streams abrufen und in ADTS konvertieren.

+0

Nochmals vielen Dank für Ihre Antwort. – rooltex

+0

Aber ich denke, da ist noch etwas anderes. Vom Anfang des Streams erhalte ich einen kleinen Teil der Audiodaten (0x00 0x14 0x08). Und jeder Block nach diesen Daten beginnt mit Bytes 0x01 0x01. Vielleicht gibt es eine andere Möglichkeit, Daten zu spielen, oder ich liege falsch? – rooltex

+0

Ich denke, dass 0x00 - ist Typ, und 0x1408 ist AAC-Konfiguration. Dann 0x1408 -> 0001 0100 0000 1000. 00010 - 5 Bits für den Objekttyp (AAC geringe Komplexität) 1000 -. 4 Bits für Abtastrate 0001 - 4 Bit für Kanäle 0 - Bit für die Rahmenlänge Flag 0 - Bit für hängt von Core Coder 0 - Bit für hängt von Core Coder – rooltex

Verwandte Themen