Articles of android audiorecord

增加录制Android AudioRecord的音量

我正在使用AudioRecord和跛脚logging麦克风input到一个MP3样品12秒。 audio是预期的录音机,但我意识到音量太低。 有没有办法增加录音的音量?

如何在Android Wear上录制audio

有一些方法来loggingAndroid Wear上的audio? 我使用AudioRecord API,它崩溃的应用程序。 难道我做错了什么? short[] audioData = new short[minBufferSize]; AudioRecord audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC, 11025, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT, minBufferSize); audioRecord.startRecording(); while(recording){ int numberOfShort = audioRecord.read(audioData, 0, minBufferSize); for(int i = 0; i < numberOfShort; i++){ dataOutputStream.writeShort(audioData[i]); } } audioRecord.stop();

为audioRecord实现getMaxAmplitude

我在我的应用程序中使用audiorecord而不是mediarecorder它工作正常,但我有一个逻辑,这极大地取决于使用audiorecord真正很难获得的maxamplitude在这里是我正在使用时读取缓冲区 private void writeAudioDataToFile(){ byte data[] = new byte[bufferSize]; String filename = getTempFilename(); FileOutputStream os = null; try { os = new FileOutputStream(filename); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } int read = 0; max=0; if(null != os){ while(isRecording){ read = recorder.read(buffer, 0, bufferSize); int ab = (buffer[0] & 0xff) […]

AudioRecord和AudioTrack延迟

我试图开发一个应用程序,如android的iRig,所以第一步是捕捉麦克风input,并在同一时间播放它。 我有它,但问题是,我得到一些延迟,使这种无法使用,如果我开始处理缓冲区,我怕它会得到完全无法使用。 我使用这样的audiorecord和audiotrack: new Thread(new Runnable() { public void run() { while(mRunning){ mRecorder.read(mBuffer, 0, mBufferSize); //Todo: Apply filters here into the buffer and then play it modified mPlayer.write(mBuffer, 0, mBufferSize); //Log.v("MY AMP","ARA"); } 而通过这种方式: // ==================== INITIALIZE ========================= // public void initialize(){ mBufferSize = AudioRecord.getMinBufferSize(mHz, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT); mBufferSize2 = AudioTrack.getMinBufferSize(mHz, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT); mBuffer = new […]

当其他应用在Android中使用时,无法访问麦克风

我正在使用以下URL中的代码,以便从AudioRecord的麦克风获取声音数据: http : //www.dreamincode.net/forums/topic/303235-visualizing-sound-from-the-microphone/ 我看到的问题是,如果另一个应用程序也使用麦克风,我得到一个错误(状态-3)从AudioRecord。 如果我杀了使用麦克风的其他应用程序,一切都按预期工作。 是否有一个优雅的解决scheme,让我的应用程序访问麦克风,即使其他应用程序已经在使用它? 谢谢。

增加录制audio的音量输出

我正在尝试在Android中创build通话录音应用程序。 我正在使用扬声器logging上行和下行audio。 我面临的唯一问题是音量太低。 我已经使用AudioManager增加了设备的音量到最大,它不能超越。 我第一次使用MediaRecorder,但由于它有限的function,并提供压缩audio,我已经尝试与AudioRecorder。 我还没有想出如何增加audio。 我也检查过Github上的项目,但是没用。 我已经search了最近两周的计算器,但找不到任何东西。 我很确定这是可能的,因为许多其他的应用程序正在这样做。 例如自动呼叫logging器这样做。 我明白,我必须做一些与audio缓冲区,但我不太确定需要做什么。 你能指导我吗? 更新: – 对不起,我忘记提及我已经在使用Gain。 我的代码几乎类似于RehearsalAssistant (实际上我从那里得到它)。 增益不能超过10dB,并且不会增加audio音量。 我想要的是我应该能够听到audio,而不用把耳朵放在我的代码中缺less的扬声器上。 在SoundDesign SE 这里,我已经提出了一个关于音量/响度function的类似问题。 它提到增益和响度是相关的,但它没有设置实际的响度水平。 我不知道事情是如何工作的,但是我决定得到大量的输出。

Android AudioRecord设置来logging调用

我使用AudioRecord类来logging通话过程中的声音。 我只想logging拥有电话的人(来自麦克风)的声音。 在录音过程中,我想要做一些audio处理,但是现在这已经不合时宜了。 Android有以下AudioSources选项: MediaRecorder.AudioSource.VOICE_CALL MediaRecorder.AudioSource.MIC MediaRecorder.AudioSource.VOICE_UPLINK MediaRecorder.AudioSource.VOICE_DOWNLINK 你能解释他们之间有什么不同吗? 确定MIC是显而易见的,但VOICE_CALL vs VOICE_UPLINK vs VOICE_DOWNLINK? 另外我应该select一个采样率(8000Hz,16000Hz,2250Hz,44100Hz)。 你能告诉我什么样的采样率,为什么? 对于audio格式,我select了AudioFormat.ENCODING_PCM_16BIT,但它也有: – AudioFormat.ENCODING_DEFAULT – AudioFormat.ENCODING_INVALID – AudioFormat.ENCODING_PCM_8BIT 最后是我应该使用多less个频道,为什么? (AudioFormat.CHANNEL_IN_STEREO或AudioFormat.CHANNEL_IN_MONO)

Android:应该设置什么audio模式来发送设备之间的接收语音

我正尝试在两个Android设备Tablet和Mobile(通过Java套接字)之间传输语音/audio(双向)。 平板电脑可以清晰地播放接收到的audio(语音),但手机播放收到的audio是噪音。 然后我在平板电脑上的代码中设置这个audio模式: audioManager.setMode(AudioManager.MODE_IN_CALL); 这现在导致移动接收清晰的声音。 但平板电脑却保持沉默,不会播放收到的audio(或者说听不到)。 我不知道我应该在这里使用的AudioManager模式的组合(如果有的话)?

在Android中显示声音以进行audio录制

我们如何显示如下图所示的声波? 当用户说话时,黄色条会根据用户的音量进行animation处理。 请指导我..有没有可用的参考链接? 有没有样本教程可用? 在iPhone中同样的问题。 但我想在Android。

如何录制更好的质量在Android的audio文件?

我正在创build一个应用程序,播放Android上的logging文件到iPhone,反之亦然。 现在我正在使用, audioRecorder = new MediaRecorder(); audioRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); audioRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); audioRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC); 使用这个代码大小为85 kb / 15秒的文件logging。 质量也很差。 如果我使用, audioRecorder = new MediaRecorder(); audioRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); audioRecorder.setOutputFormat(MediaRecorder.OutputFormat.AMR_NB); audioRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 那么文件大小是25kb / 15秒。 质量比aac好得多。 但是问题是AMR没玩过iPhone端。 所以请build议录制架构为Android有更好的质量,实惠的大小,也可以在iPhone上玩。 提前致谢。