2

これは、ffmpeg の libav* を使用してオーディオ ストリームをデコードするプロセスです。

[videofile]--> (オーディオ パケットの読み取り) --> [pkts キュー] --> (デコーダー) --> スピーカーのサンプル バッファー

何らかの理由で、デコーダーの後にバッファーを挿入する必要があります

[videofile]--> (オーディオ パケットの読み取り) --> [pkts キュー] --> (デコーダー) --> [サンプル バッファー] --> スピーカーのサンプル バッファー

のオーディオ サンプルsamples bufferは LPCM 16 ビットです。オーディオのポイントを保存するにはsample buffer、最初のサンプルのポイントを保存します。そうすれば、バッファ内の任意のサンプルのポイントを計算できます。

問題は、オーディオ ストリームに連続したオーディオ サンプルが含まれている場合にのみ計算が正しいことです。ffmpeg のデコードされたオーディオ フレームには常に連続したサンプルが含まれていますか?

4

2 に答える 2

1

そして、なぜそうではないのでしょうか?デコーダーは、上位レイヤーに提示される順序でデータを提供します。

于 2012-11-28T07:38:40.890 に答える