1

8 ビット (モノおよびステレオ) の.wavファイルがあるとします。このファイルを処理するとき、サンプルの配列へのポインターを宣言する必要があります。

サンプルの配列を作成するとします。次にmono、 を使用して各サンプルを読み取りますfor(i = 0; i < n; i++ )

Q: 左右のチャンネルを別々に (ステレオで) アクセスするにはどうすればよいですか?

PS

「モノ、ステレオ、* .wave」についてはよく読みましたが、各チャンネルへのアクセスを個別に実現する方法がわかりません...

4

1 に答える 1

2

まだサンプルの配列があります。問題は、個々の値にどのように対処するかです。これはあなたがそれを行う方法です:

const UCHAR* pnSamples = ...
if(bMono)
{
  for(INT nIndex = 0; ...)
  {
    const UCHAR nSample = pnSamples[nIndex];
    // ...
  }
} else
if(bStereo)
{
  for(INT nIndex = 0; ...)
  {
    const UCHAR nLeftSample = pnSamples[2 * nIndex + 0];
    const UCHAR nRightSample = pnSamples[2 * nIndex + 1];
    // ...
  }
}
于 2013-05-15T16:13:42.267 に答える