2

これは、すべての ALSA 関係者向けです。ここで健全性チェックが必要です。alsa-lib api を使用してサウンドを再生しています。データをドライバーに書き込むために使用している関数は次のとおりです。

snd_pcm_sframes_t snd_pcm_writei (snd_pcm_t* pcm,
                                  const void* buffer,
                                  snd_pcm_uframes_t size);

3 番目のパラメーターは、フレーム カウントまたはバッファーのサイズ (バイト単位) である必要がありますか? バイト単位のサイズが渡される例を数多く見てきたため、質問しています。1つの例がドキュメントに含まれています。

4

1 に答える 1

4

ドキュメントによると、それはバイトではなくフレームの量です。

リンクした例では、8 ビットのサンプルと 1 つのチャネルを使用しているため、値がたまたま同じであり、1 つのチャネルの 8 ビット データの 1 つのフレームが 1 バイトであるためです。

于 2010-09-24T20:54:46.130 に答える