2

Android プラットフォーム用の音楽分析アプリを構築しようとしています。

アプリはMediaRecorder.AudioSource.MIC MIC から音楽を録音するために使用し、11025 周波数で PCM 16BIT にエンコードしますが、録音されたオーディオ サンプルの品質は非常に低く、ノイズを減らして改善する方法はありますか?

mRecordInstance = new AudioRecord(MediaRecorder.AudioSource.MIC,FREQUENCY, CHANNEL,ENCODING, minBufferSize);

mRecordInstance.startRecording();

do 

{

samplesIn += mRecordInstance.read(audioData, samplesIn, bufferSize - samplesIn);

if(mRecordInstance.getRecordingState() == AudioRecord.RECORDSTATE_STOPPED)

break;

} 

while (samplesIn < bufferSize);

前もって感謝します

4

3 に答える 3

4

上記の解決策は私にはうまくいきませんでした。

ということで、いろいろ検索してこちらの記事を見つけました。

簡単に言うと、 AudioSource.MICの代わりにMediaRecorder.AudioSource.VOICE_RECOGNITIONを使用しました。これにより、非常に良い結果が得られ、バックグラウンドのノイズが大幅に減少しました。

このソリューションの優れた点は、AudioRecord クラスと MediaRecorder クラスの両方で使用できることです。

于 2015-06-19T06:14:08.557 に答える