相关疑难解决方法(0)

用手机测量分贝

大家晚上好!

我有以下麻烦:我正在尝试使用我的手机麦克风测量分贝(声音),但不知道为什么它不起作用!任何建议??感谢您的帮助!!

该计划是这样的:

`package com.dani;



import java.io.IOException;


import android.media.MediaRecorder;
import android.os.Bundle;
import android.app.Activity;

import android.widget.TextView;

public class Pruebita2 extends Activity {

TextView TextView;
StringBuilder builder=new StringBuilder();
MediaRecorder  mRecorder;
double powerDb;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.pruebita2);
TextView=new TextView(this);
setContentView(TextView);

mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mRecorder.setOutputFile("/dev/null"); 
try {
    mRecorder.prepare();
} catch (IllegalStateException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
mRecorder.start();

}
public double getAmplitude() {
if (mRecorder != …
Run Code Online (Sandbox Code Playgroud)

audio meter

5
推荐指数
1
解决办法
8080
查看次数

Android Media Player分贝阅读

我搜索了类似的主题,但找不到清晰简洁的答案。我一直在尝试找出一种方法,可以确定在播放Android媒体播放器时在给定时间点的分贝级别输出。我无法找到一种方法来确定在播放歌曲时给定时间点手机的声音大小。我一直在寻找媒体播放器API,但无法弄清楚在播放歌曲时如何在给定的时间阅读。

任何想法或帮助表示赞赏。

android

4
推荐指数
1
解决办法
6263
查看次数

getMaxAmplitude()始终返回0

我想Sound Level Pressure表达自己的意思,decibel但我总是这样0。(的输出TextView-Infinity,但因为log(0)= -infinity

public class SLP extends Activity{

TextView sound;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.sound_activity);

    MediaRecorder recorder = new MediaRecorder();
    recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
    recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
    Timer timer = new Timer();
    timer.scheduleAtFixedRate(new RecorderTask(recorder), 0, 500);


}

private class RecorderTask extends TimerTask {
    TextView sound = (TextView) findViewById(R.id.decibel);
    private MediaRecorder recorder;

    public RecorderTask(MediaRecorder recorder) {
        this.recorder = recorder;
    }

    public void run() {
        runOnUiThread(new Runnable() {
            @Override
            public …
Run Code Online (Sandbox Code Playgroud)

android decibel

4
推荐指数
1
解决办法
2460
查看次数

标签 统计

android ×2

audio ×1

decibel ×1

meter ×1