2016-11-09 6 views
0

私はオーディオを録音し、amr形式でファイルを保存する必要があります。Android MediaRecorderを使用します。
ファイル情報は、このようになります。Android MediaRecorder:ビット深度を設定するには?

General 
Complete name     : E:\11-09-05-40-29.amr 
Format       : AMR 
Format/Info      : Adaptive Multi-Rate 
File size      : 2.69 KiB 
Duration       : 1s 720ms 
Overall bit rate     : 12.8 Kbps 

Audio 
Format       : AMR 
Format/Info      : Adaptive Multi-Rate 
Format profile     : Narrow band 
Duration       : 1s 720ms 
Bit rate mode     : Constant 
Bit rate       : 12.8 Kbps 
Channel(s)      : 1 channel 
Sampling rate     : 8 000 Hz 
Bit depth      : 13 bits 
Stream size      : 2.69 KiB (100%) 

これは私のコード

mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.AMR_NB); 
mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);  
mMediaRecorder.setAudioEncodingBitRate(16); 
mMediaRecorder.setAudioChannels(1); 
mMediaRecorder.setAudioSamplingRate(8000); 

あるしかし、私は何をすべき、16ビットにそれをビット深度を変更する必要がありますか?
ありがとうございます。

答えて

1

は私はわからないんだけど、あなたは、変数Bit rateを意味MediaRecorder.AudioEncoder.AMR_NBBit rate = (sampling rate) × (bit depth) × (number of channels)

sampling ratenumber of channelsが固定されている

が、AMR(適応マルチレート)

ので以内にそれを変更することはできませんようです。だから、私はあなたが "平均"ビット深度を見ることができると思います。他のエンコーディングおよびメディア形式(たとえばPCM-16ビット)を使用して変更できます。

関連する問題