-1

オーディオチャネル2で5秒間の.wavサウンドファイルがあり、合計ビットレートは1411200です。ターミナルのコマンドを使用してこのファイルを.caf形式に変換しています。ファイル変換後、次の情報が表示されます。オーディオの継続時間は同じ(5秒)ですが、オーディオチャネルは1で、合計ビットレートは705600です。

これで、この.cafファイルはNSBundle内に保持されます。同じ長さのオーディオファイルを録音して、事前に録音したファイルと比較する必要があります。しかし、NSDataの長さの両方(録音済みと事前録音済み)のサウンドをNSlogすると、大きなバイト差(約2倍)が発生します。

両方の音が同じ持続時間の.cafファイルであっても、なぜこれが発生するのかわかりません。私を助けてください。事前に感謝します。

ありがとうSudesh

4

1 に答える 1

0

Core Audio Format Specificationの以下の要因に依存します。

 struct CAFAudioFormat {

 Float64 mSampleRate;

 UInt32  mFormatID;

 UInt32  mFormatFlags;

 UInt32  mBytesPerPacket;

 UInt32  mFramesPerPacket;

 UInt32  mChannelsPerFrame;

 UInt32  mBitsPerChannel;

 };

また、上記の要因cafファイルの長さの変更に応じて記載されているこれも確認してください

于 2012-07-07T12:40:06.510 に答える