gpt4 book ai didi

android - 从音频文件输入中检测人声

转载 作者:IT老高 更新时间:2023-10-28 21:59:34 27 4
gpt4 key购买 nike

我正在尝试实现自动录音功能,类似于会说话的汤姆应用程序。我使用以下代码从录音机读取输入并分析缓冲区:

 float totalAbsValue = 0.0f;
short sample = 0;

numberOfReadBytes = audioRecorder.read( audioBuffer, 0, bufferSizeInBytes);

// Analyze Sound.
for( int i=0; i<bufferSizeInBytes; i+=2 )
{
sample = (short)( (audioBuffer[i]) | audioBuffer[i + 1] << 8 );
totalAbsValue += Math.abs( sample ) / (numberOfReadBytes/2);
}

// Analyze temp buffer.
tempFloatBuffer[tempIndex%3] = totalAbsValue;
float temp = 0.0f;

for( int i=0; i<3; ++i )
temp += tempFloatBuffer[i];

现在我可以检测到来自录音机的语音输入,并且可以分析音频缓冲区。

缓冲区转换为浮点值,如果增加一定量,则假定背景中有一些声音并开始录制。但问题是应用开始记录所有背景噪音,包括风扇/空调管道的声音。

谁能帮助我分析缓冲区以仅检测人声?或者是否有其他替代方法可以从录音机输入中检测人声?

提前致谢,

最佳答案

语音检测并不是那么简单。有几种算法,其中一些是公开的,例如GSM VAD .有几个开源 VAD 库可用,其中一些在讨论 here

关于android - 从音频文件输入中检测人声,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18355448/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com