3
public AudioRecord (int audioSource, int sampleRateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes)

これはのパブリックコンストラクタでありAudioRecord、と呼ばれる最後のパラメータを見つけることができます。これは、 bufferSizeInBytes「録音中にオーディオデータが書き込まれるバッファの合計サイズ(バイト単位)」を意味します。アンドロイドドキュメントで。

これは、オーディオハードウェアからサンプリングされたすべてのデータを保存するためのバッファーだと思いました。質問があります :

オーディオを介してサンプリングされるデータの数が「bufferSizeInBytes」を超える場合、サンプリングを停止するなど、どうなりますか?

いくつかのテストを行ったところ、サンプルデータの数を超えても何も起こらなかった(記録を続けた)ことがわかりました。なぜ?

So  can anyone tell me what's the meaning about  "bufferSizeInBytes"
4

1 に答える 1

3

録音中にバッファリングされるオーディオデータの量です。オブジェクトの存続期間中に記録できる合計量ではなく、AudioRecordを介してオブジェクトをプルする必要がある頻度を決定します。read()Audiorecord

オブジェクトから読み出さないとAudioRecord、記録されたデータは失われます。記録を続けますが、バッファ レベルを超えるオーディオ フレームはドロップされます。

オブジェクトからオーディオ データを読み取ると、バッファの塗りつぶしレベルが減少します。

于 2012-08-17T08:19:36.940 に答える