Android, как инициализировать Audio Recorder? - PullRequest
2 голосов
/ 28 января 2012

Я создал класс AudioMeter, и я написал следующие коды в его подрядчике:

public AudioMeter(){
        channel_config = AudioFormat.CHANNEL_CONFIGURATION_STEREO;//And also Mono
        format = AudioFormat.ENCODING_PCM_16BIT;
        sampleRate = AudioTrack.getNativeOutputSampleRate(AudioManager.STREAM_SYSTEM); //8000
        bufferSize = AudioRecord.getMinBufferSize(sampleRate, channel_config, format);

        recorder = new AudioRecord(MediaRecorder.AudioSource.MIC, sampleRate, channel_config, format, bufferSize);

        audioBuffer = new short[bufferSize];

        Log.i("AudioMeter", "Created successfully.");
    } 

Но когда я запускаю эмулятор, он говорит 01-29 03:47:07.418: E/AudioRecord(432): Unsupported configuration: sampleRate 44100, format 1, channelCount 2" Я добавил "Audio Recording Support" и "Audio Playback Support" в эмулятор.

Любая помощь будет принята с благодарностью, так как я некоторое время просматривал этот код!

1 Ответ

4 голосов
/ 26 июля 2012

Эмулятор не поддерживает CHANNEL_CONFIGURATION_STEREO & sampleRate = (11025, 16000, 22050 и 44100), если вы хотите выполнить это успешно, используйте CHANNEL_CONFIGURATION_MONO & SampleRate = 8000 (поддерживается только 8000 выборок в секунду).

...