获取音频文件采样率、比特率,通道数的一种方法:
MediaExtractor mex = new MediaExtractor();
try {
mex.setDataSource(mp3Path);
} catch (IOException e ) {
// TODO Auto-generated catch block
e.printStackTrace();
}
MediaFormat mf = mex.getTrackFormat(0);
int bitRate = mf.getInteger(MediaFormat.KEY_BIT_RATE);//比特率
int sampleRate = mf.getInteger(MediaFormat.KEY_SAMPLE_RATE);//采样率
int channelCount = mf.getInteger(MediaFormat.KEY_CHANNEL_COUNT);//通道数
int digit = bitRate*8/(sampleRate*channelCount);//采样位
Log.d("TAG", "getSampleRate: bitRate:"+bitRate);
Log.d("TAG", "getSampleRate: sampleRate:"+sampleRate);
Log.d("TAG", "getSampleRate: channelCount:"+channelCount);
Log.d("TAG", "getSampleRate: digit:"+digit);