Was ist der Unterschied zwischen AV_SAMPLE_FMT_S16P und AV_SAMPLE_FMT_S16?
Was passiert, wenn Sie tun eine Wandlung von AV_SAMPLE_FMT_S16P zu AV_SAMPLE_FMT_S16?
Wie ist die AVFrame Struktur werde zu enthalten, die planare und nicht-planare Daten?
Du musst angemeldet sein, um einen Kommentar abzugeben.
AV_SAMPLE_FMT_S16P
ist planar signed 16 bit audio, also 2 bytes, die für jede Probe die gleiche fürAV_SAMPLE_FMT_S16
.Der einzige Unterschied ist in
AV_SAMPLE_FMT_S16
Proben von jedem Kanal verschachtelt werden, d.h. wenn Sie zwei-Kanal-audio dann die Proben-Puffer Aussehen wirdwo
c1
ist ein Beispiel für kanal1 undc2
Beispiel für kanal2.während für ein Bild von planaren audio-haben Sie so etwas wie
nun, wie ist es gelagert im AVFrame:
Daten[i] enthält die Daten von Kanal i (vorausgesetzt, Kanal 0 ist der erste Kanal).
allerdings, wenn Sie haben mehr Kanäle als 8, dann werden die Daten für den rest der Kanäle finden Sie in extended_data Attribut AVFrame.
data[0] enthält die Daten für alle Kanäle in eine verschachtelte Art und Weise.
c1 c1 c2 c2
muss sich die bytes in den Puffer, nicht die Aufnahmen. Entweder ändern Sie es zuc1 c2 c1 c2
für Proben oder aktualisieren Sie den text, um zu sagen, bytes.