android获取音量分贝值

android获取音量分贝值


AudioRecordDemo.java

package com.example.recording;import android.media.AudioFormat;
import android.media.AudioRecord;
import android.media.MediaRecorder;
import android.util.Log;public class AudioRecordDemo {private static final String TAG = "AudioRecord";  static final int SAMPLE_RATE_IN_HZ = 8000;  static final int BUFFER_SIZE = AudioRecord.getMinBufferSize(SAMPLE_RATE_IN_HZ,  AudioFormat.CHANNEL_IN_DEFAULT, AudioFormat.ENCODING_PCM_16BIT);  AudioRecord mAudioRecord;  boolean isGetVoiceRun;  Object mLock;  public AudioRecordDemo() {  mLock = new Object();  }  public void getNoiseLevel() {  if (isGetVoiceRun) {  Log.e(TAG, "还在录着呢");  return;  }  mAudioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC,  SAMPLE_RATE_IN_HZ, AudioFormat.CHANNEL_IN_DEFAULT,  AudioFormat.ENCODING_PCM_16BIT, BUFFER_SIZE);  if (mAudioRecord == null) {  Log.e("sound", "mAudioRecord初始化失败");  }  isGetVoiceRun = true;  new Thread(new Runnable() {  @Override  public void run() {  mAudioRecord.startRecording();  short[] buffer = new short[BUFFER_SIZE];


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部