栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java录制时检测静音

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java录制时检测静音

在Java中开始录制操作时,如何检测静音?

计算一组声音帧的dB或RMS值,并确定将其视为“静音”的级别。

什么是PCM数据?

数据是在脉冲编码调制格式。

如何在Java中计算PCM数据?

我不明白这个问题。但是,猜测它与

speech-recognition
标记有关,我有一些坏消息。从理论上讲,这可以使用
Java Speech API
来完成。但是,显然没有可用于API的“语音到文本”实现(仅“文字到语音”)。

我必须为语音识别项目计算均方根值。但是我不知道如何用Java计算。

对于信号double范围在-1到1之间的单个通道,可以使用此方法。

public double volumeRMS(double[] raw) {    double sum = 0d;    if (raw.length==0) {        return sum;    } else {        for (int ii=0; ii<raw.length; ii++) { sum += raw[ii];        }    }    double average = sum/raw.length;    double sumMeanSquare = 0d;    for (int ii=0; ii<raw.length; ii++) {        sumMeanSquare += Math.pow(raw[ii]-average,2d);    }    double averageMeanSquare = sumMeanSquare/raw.length;    double rootMeanSquare = Math.sqrt(averageMeanSquare);    return rootMeanSquare;}

有一个字节缓冲区来保存行中的输入值,我应该使用该缓冲区做什么?

如果使用该

volumeRMS(double[])
方法,则将
byte
值转换
double
为-1到1范围内的值的数组。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/432029.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号