Определить определенную частоту с микрофона Java - PullRequest
2 голосов
/ 04 июня 2019

Я пытаюсь захватить звук, который исходит от микрофона, и я хотел проверить частоту звука. Если я получу более высокую частоту, скажем, 1316,8, тогда я начну запись в течение 1 минуты.

Я борюсь с преобразованием байтовых данных в частоту.

Я использовал Javax.sound для захвата звука, который исходит от микрофона, и я также выполнил запись.

  AudioFormat format = new AudioFormat(44100, 16, 2, true, true);

    DataLine.Info targetInfo = new DataLine.Info(TargetDataLine.class, format);
    DataLine.Info sourceInfo = new DataLine.Info(SourceDataLine.class, format);

    try {
        TargetDataLine targetLine = (TargetDataLine) AudioSystem.getLine(targetInfo);
        targetLine.open(format);
        targetLine.start();

        SourceDataLine sourceLine = (SourceDataLine) AudioSystem.getLine(sourceInfo);
        sourceLine.open(format);
        sourceLine.start();

        int numBytesRead;
        byte[] targetData = new byte[targetLine.getBufferSize() / 5];

Я ожидаю, что выход будет похож на Частоту каждого звука, который исходит от микрофона.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...