草庐IT

Audiorecord

全部标签

Android多媒体功能开发(11)——使用AudioRecord类录制音频

AudioRecord类优点是能录制到缓冲区,能够实现边录边播(AudioRecord+AudioTrack)以及对音频的实时处理(如QQ电话)。缺点是输出是PCM格式的原始采集数据,如果直接保存成音频文件,不能够被播放器播放,所以必须用代码实现数据编码以及压缩。使用AudioRecord录音的基本步骤是:确定录音参数、申请缓冲区、创建AudioRecord对象、开始录制、循环读取数据到缓冲区并处理数据、停止录制、释放资源。需要确定的录音参数包括:采样率、声道、格式。申请缓冲区时需要根据录音参数计算最小缓冲区大小。有了缓冲区以后才能创建AudioRecord对象。录制过程中,需要不停地读取采样

android - AudioFlinger 无法创建记录轨道,状态 : -1 , 需要 ifx 帮助

publicclassAudioRecorderActivityextendsActivity{privatestaticfinalintRECORDER_SAMPLERATE=8000;privatestaticfinalintRECORDER_CHANNELS=AudioFormat.CHANNEL_IN_MONO;privatestaticfinalintRECORDER_AUDIO_ENCODING=AudioFormat.ENCODING_PCM_16BIT;privateAudioRecordrecorder=null;privatestaticfinalStringTAG

android - AudioFlinger 无法创建记录轨道,状态 : -1 , 需要 ifx 帮助

publicclassAudioRecorderActivityextendsActivity{privatestaticfinalintRECORDER_SAMPLERATE=8000;privatestaticfinalintRECORDER_CHANNELS=AudioFormat.CHANNEL_IN_MONO;privatestaticfinalintRECORDER_AUDIO_ENCODING=AudioFormat.ENCODING_PCM_16BIT;privateAudioRecordrecorder=null;privatestaticfinalStringTAG

Android AudioRecord 示例

关闭。这个问题需要更多focused.它目前不接受答案。想要改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我正在设计一个Android应用,我需要实现一个AudioRecord类来录制用户的声音。经过一些研究(没有提供足够的信息)和几次失败的尝试,我想知道是否有人可以通过发布一个关于如何使用AudioRecord捕获高质量声音的示例(代码)来帮助我。我真的很感激。谢谢 最佳答案 在这里,我向您发布了一些使用AudioRecordAPI录制优质声音的代码示

Android AudioRecord 示例

关闭。这个问题需要更多focused.它目前不接受答案。想要改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我正在设计一个Android应用,我需要实现一个AudioRecord类来录制用户的声音。经过一些研究(没有提供足够的信息)和几次失败的尝试,我想知道是否有人可以通过发布一个关于如何使用AudioRecord捕获高质量声音的示例(代码)来帮助我。我真的很感激。谢谢 最佳答案 在这里,我向您发布了一些使用AudioRecordAPI录制优质声音的代码示

java - 将 PCM 录制的数据写入 .wav 文件(java android)

我正在使用AudioRecord在android中录制16位PCM数据。记录数据并将其保存到文件后,我将其读回以将其保存为.wav文件。问题是媒体播放器可以识别WAV文件,但播放的只是纯噪音。目前我最好的猜测是我的wav文件头不正确,但我一直无法看到究竟是什么问题。(我认为这是因为我可以播放我在Audacity中录制的原始PCM数据)这是我读取原始PCM文件并将其保存为.wav的代码:privatevoidproperWAV(FilefileToConvert,floatnewRecordingID){try{longmySubChunk1Size=16;intmyBitsPerSam

java - 将 PCM 录制的数据写入 .wav 文件(java android)

我正在使用AudioRecord在android中录制16位PCM数据。记录数据并将其保存到文件后,我将其读回以将其保存为.wav文件。问题是媒体播放器可以识别WAV文件,但播放的只是纯噪音。目前我最好的猜测是我的wav文件头不正确,但我一直无法看到究竟是什么问题。(我认为这是因为我可以播放我在Audacity中录制的原始PCM数据)这是我读取原始PCM文件并将其保存为.wav的代码:privatevoidproperWAV(FilefileToConvert,floatnewRecordingID){try{longmySubChunk1Size=16;intmyBitsPerSam

java - Android音频FFT使用audiorecord检索特定频率幅度

我目前正在尝试使用Android实现一些代码,以检测何时通过手机的麦克风播放了一些特定的音频范围。我已经使用AudioRecord类设置了该类:intchannel_config=AudioFormat.CHANNEL_CONFIGURATION_MONO;intformat=AudioFormat.ENCODING_PCM_16BIT;intsampleSize=8000;intbufferSize=AudioRecord.getMinBufferSize(sampleSize,channel_config,format);AudioRecordaudioInput=newAudio

java - Android音频FFT使用audiorecord检索特定频率幅度

我目前正在尝试使用Android实现一些代码,以检测何时通过手机的麦克风播放了一些特定的音频范围。我已经使用AudioRecord类设置了该类:intchannel_config=AudioFormat.CHANNEL_CONFIGURATION_MONO;intformat=AudioFormat.ENCODING_PCM_16BIT;intsampleSize=8000;intbufferSize=AudioRecord.getMinBufferSize(sampleSize,channel_config,format);AudioRecordaudioInput=newAudio

java - android audioRecord-应用变化增益

我想将增益应用于我的录音(PCM16位)。为此,我有以下代码:for(inti=0;i如果像这样应用(将每个样本乘以分数),我会在播放时中断(听起来像老式对讲机)。是否有一些公式可以改变每个样本的增益因子?我假设样本范围有一些maxValue和minValue(我猜是[-32768,+32767]),并在某些公式中使用这些值,我可以获得一个变化的增益因子以应用于当前样本。//编辑:添加if(curSample>32767){curSample=32767;}if(curSample完整方法aRecorder.read(buffer,0,buffer.length);for(inti=0