【问题标题】:Automatically sound recording and stop when user stop speaking using audio recoder当用户停止使用录音机讲话时自动录音并停止
【发布时间】:2013-04-18 21:45:05
【问题描述】:

我想在收到一定级别的声音时重新编码声音并停止录音机没有收到声音。

我最初使用媒体记录器检查最大振幅,然后我开始通过录音机录制,但我无法停止它,因为录音机没有任何方法来获得最大振幅。

【问题讨论】:

  • 你的意思是像会说话的汤姆应用程序?
  • 是类似于会说话的汤姆应用。

标签: android audio-recording android-audiorecord


【解决方案1】:

你应该尝试这样的事情:

readAudio = audioRecorder.read(data16bit, 0, buffer);
double fN = (double)readAudio;

double accum = 0;
for (int i = 0; i < readAudio; i ++)
{
   accum += Math.abs((double)data16bit[i]);
}

double soundLevel = accum/fN;

然后检查 soundLevel 的值,看看应用应该何时停止录音。

【讨论】:

  • 这个问题是你坚持手工设计的常数(类似于soundLevel &lt; 5)。有没有办法让它在嘈杂的环境中也能正常工作?
猜你喜欢
  • 2017-12-07
  • 1970-01-01
  • 1970-01-01
  • 2017-12-27
  • 1970-01-01
  • 2018-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多