草庐IT

Audiorecord

全部标签

android - AudioRecord类中read方法的问题

publicintread(byte[]audioData,intoffsetInBytes,intsizeInBytes).此方法从音频硬件读取音频数据以记录到缓冲区中。它的参数是:audioData写入录制音频数据的数组。audioData中的offsetInBytes索引,数据从中写入,以字节表示。sizeInBytes请求的字节数。它返回读取的字节数或ERROR_INVALID_OPERATION如果对象未正确初始化,或者ERROR_BAD_VALUE如果参数未解析为有效数据和索引。字节数不会超过sizeInBytes。我在我的代码中这样写了这个方法:整数;字节[]buf=新字

android - 尝试初始化 AudioRecord 时出现 "Could not get audio input for record source 1"

我在尝试初始化AudioRecord对象时不断收到此错误,试图使用Eclipse使用模拟器录制声音。我尝试过各种位采样率,8000是唯一有效的,但错误继续出现。我试过各种版本的sdk,1.5、1.6、2、2.2和2.3.1。(以及与AVD的组合)。代码如下:Log.v(TAG,"Abouttoinitializerecording");//int[]samplingRates={44100,22050,16000,11025,8000};int[]samplingRates={8000};for(inti=0;i错误发生在实例化,AudioRecordrecord=new等有没有人见过

android - AudioRecord:缓冲区溢出?

我在使用我的应用程序RECORDING时出现缓冲区溢出。录制在Service中执行。我不明白为什么我会从AudioFlinger收到这条消息。下面我实例化了AudioRecord对象并设置了它的回调。bufferSize=AudioRecord.getMinBufferSize(sampleRate,channelConfig,audioFormat);aRecorder=newAudioRecord(audioSource,sampleRate,channelConfig,audioFormat,bufferSize);aRecorder.setRecordPositionUpdat

java - AudioRecord 对象未在项目中初始化

当我尝试使用以下代码通过Nexus5录制音频时record=newAudioRecord(MediaRecorder.AudioSource.MIC,sampleRate,AudioFormat.CHANNEL_IN_MONO,AudioFormat.ENCODING_PCM_8BIT,BYTE_OF_SAMPLE*bufferSampleSize);record.startRecording();然后我在logcat中得到以下异常:E/AudioRecord:AudioFlingercouldnotcreaterecordtrack,status:-1E/AudioRecord-JN

java - Android AudioRecord 不会初始化

我正在尝试实现一个应用程序来监听麦克风输入(特别是呼吸),并根据它呈现数据。我正在使用Android类AudioRecord,在尝试实例化AudioRecord时出现三个错误。AudioRecord:AudioFlingercouldnotcreaterecordtrack,status:-1AudioRecord-JNI:ErrorcreatingAudioRecordinstance:initializationcheckfailedwithstatus-1.android.media.AudioRecord:Errorcode-20wheninitializingnativeAu

android - 由 : java. lang.IllegalStateException: startRecording() called on an uninitialized AudioRecord 引起

我在android2.3.4版本移动设备(LG)中收到类似startrecording()调用未初始化音频记录的错误,它在android2.2中工作正常但在android2.3中抛出错误。 最佳答案 此外,请确保您在AndroidManifest.xml中设置了此权限: 关于android-由:java.lang.IllegalStateException:startRecording()calledonanuninitializedAudioRecord引起,我们在StackOverf

Android AudioRecord 和 MediaRecorder

我正在开发一个音频处理应用程序,我需要在其中录制音频,然后对其进行处理以获得该录音的功能。但是,我想要可播放格式的音频,以便在使用MediaPlayer后播放。我发现要录制音频以对其进行处理,最好使用AudioRecord,因为我可以从那里获取原始音频。但是我无法将数据写入可播放格式的文件(android中是否有任何库可以执行此操作?)。我用这种方法记录原始数据,然后写入文件:http://andrewbrobinson.com/2011/11/27/capturing-raw-audio-data-in-android/但是当我尝试在设备上播放这个文件时,它无法播放。然后,如果我使用

java - Android:当 SAMPLERATE 设置为 44100 时,startRecording() 在未初始化的 AudioRecord 上调用

当我将AudioRecord对象的采样率设置为44100时出现错误。当它是22050时,它工作正常。02-1610:45:45.09924021-24021/com.vlad.jackcommsE/AudioRecord:frameCount102402-1610:45:45.09924021-24021/com.vlad.jackcommsE/AudioRecord-JNI:创建AudioRecord实例时出错:初始化检查失败。02-1610:45:45.09924021-24021/com.vlad.jackcommsE/android.media.AudioRecord:初始化原

android - 在 Android 上访问实时麦克风数据的最低级别

我刚刚编写了一些使用音频单元以硬件采样率从麦克风获取单声道浮点流的iOS代码。它最终变成了很多代码!首先,我必须设置一个AudioSession,指定所需的48kHz采样率。然后我必须开始session并检查实际返回的采样率。这将是实际的硬件采样率。然后我必须设置一个音频单元,实现渲染回调。但我至少可以使用硬件采样率(因此我可以确定没有通过软件重新采样丢失任何信息)。而且我还能够设置尽可能小的缓冲区大小,从而实现最小的延迟。android上的类比流程是什么?我怎样才能接触到电线?PS还没有人提到它,但它似乎可以在JNI级别工作。 最佳答案

java - 如何在android中录制音频时调整麦克风灵敏度

我正在开发一款录音应用。在其中,我有一个Seekbar来更改输入语音增益。我找不到任何方法来调整输入语音增益。我正在使用AudioRecord类来录制语音。recorder=newAudioRecord(MediaRecorder.AudioSource.MIC,RECORDER_SAMPLERATE,RECORDER_CHANNELS,RECORDER_AUDIO_ENCODING,bufferSize);recorder.startRecording();我见过appintheGooglePlayStore使用此功能。 最佳答案