如何在 android wear 上录制音频
How to record audio on android wear
有什么方法可以在 android 佩戴时录制音频?我使用了 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 受支持并适用于 Android Wear。如果您在模拟器上进行测试,它可能不支持您提供的采样率 11025,请尝试其他采样率,例如 8000。
构建 AudioRecord 后,您应该在尝试录制之前检查状态以确认初始化成功。
audioRecord.getState() == AudioRecord.STATE_INITIALIZED
还要确保您在清单中拥有正确的权限。您至少需要 android.permission.RECORD_AUDIO 以及写入文件的位置的任何权限。
有什么方法可以在 android 佩戴时录制音频?我使用了 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 受支持并适用于 Android Wear。如果您在模拟器上进行测试,它可能不支持您提供的采样率 11025,请尝试其他采样率,例如 8000。
构建 AudioRecord 后,您应该在尝试录制之前检查状态以确认初始化成功。
audioRecord.getState() == AudioRecord.STATE_INITIALIZED
还要确保您在清单中拥有正确的权限。您至少需要 android.permission.RECORD_AUDIO 以及写入文件的位置的任何权限。