Сейчас я использую вот такой метод. Может есть более хорошие методы?
int amplitude = 5000;
AudioRecord.read(buffer, 0, buffer.length);
private boolean isVoice(byte[] buffer, int size, int amplitude) {
for (int i = 0; i < size - 1; i += 2) {
// The buffer has LINEAR16 in little endian.
int s = buffer[i + 1];
if (s < 0) s *= -1;
s <<= 8;
s += Math.abs(buffer[i]);
if (s > amplitude) {
return true;
}
}
return false;
}
Нужно уметь отделять шум в помещении от слов человека.. Кто нибудь с таким сталкивался?
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости