如何以 Media Recorder 不支持的格式进行编码?
How can I encode in a format that's not supported by Media Recorder?
我正在编写一个 android 应用程序,它将是一个需要在特定设置下录制 .wav 文件的录音机应用程序。需要匹配以下信息:
File Type: Windows PCM
File extension: .wav
22050 Hz, 16-bit, Stereo
以上文件信息来自this file。这是我们的服务器将播放的标准 Windows 文件。如果文件与这些设置不匹配,我们的服务器将不会解释该文件。我试过这样录音,但行不通:
mRecorder = new MediaRecorder();
SharedPreferences prefs = getSharedPreferences("MyPreference", MODE_PRIVATE);
int curValue = prefs.getInt("recordCount", 0); // Getting current value of sharedPref
String fileNameWNum = "Recording" + curValue + ".wav";
...
mRecorder.setOutputFile(fileName);
mRecorder.setAudioEncoder(ENCODING_PCM_16BIT);
mRecorder.setAudioSamplingRate(22050);
此方法正在制作 .wav 文件但不对其进行编码。谁能建议我如何对信息进行编码?
编辑:This is the file 正在被我的软件记录
基于您共享的文件(录音8.wav)。
属性 文件。
持续时间:00:00:38.08,开始:0.000000,比特率:15 kb/s
流 #0:0(eng):音频:amr_wb (sawb / 0x62776173),16000 Hz,单声道,flt,13
kb/s(默认)
请检查此参考代码 Wav recording on Android and Audio Record Class
注意:普通 MediaRecorder 不支持 Android.
中的 wav 录制
我正在编写一个 android 应用程序,它将是一个需要在特定设置下录制 .wav 文件的录音机应用程序。需要匹配以下信息:
File Type: Windows PCM
File extension: .wav
22050 Hz, 16-bit, Stereo
以上文件信息来自this file。这是我们的服务器将播放的标准 Windows 文件。如果文件与这些设置不匹配,我们的服务器将不会解释该文件。我试过这样录音,但行不通:
mRecorder = new MediaRecorder();
SharedPreferences prefs = getSharedPreferences("MyPreference", MODE_PRIVATE);
int curValue = prefs.getInt("recordCount", 0); // Getting current value of sharedPref
String fileNameWNum = "Recording" + curValue + ".wav";
...
mRecorder.setOutputFile(fileName);
mRecorder.setAudioEncoder(ENCODING_PCM_16BIT);
mRecorder.setAudioSamplingRate(22050);
此方法正在制作 .wav 文件但不对其进行编码。谁能建议我如何对信息进行编码?
编辑:This is the file 正在被我的软件记录
基于您共享的文件(录音8.wav)。
属性 文件。
持续时间:00:00:38.08,开始:0.000000,比特率:15 kb/s 流 #0:0(eng):音频:amr_wb (sawb / 0x62776173),16000 Hz,单声道,flt,13 kb/s(默认)
请检查此参考代码 Wav recording on Android and Audio Record Class
注意:普通 MediaRecorder 不支持 Android.
中的 wav 录制