Устранить обратную связь в Java Sound?
Я закончил программу на Java для видеоконференций. Он читает и пишет с микрофона / динамика сетевой камеры, которая включает двустороннюю передачу звука. Эта сетевая камера не имеет встроенной функции подавления обратной связи, поэтому я должен сделать это сам.
Я могу вручную измерить задержку и использовать регулировку громкости, чтобы отключить микрофон, чтобы устранить обратную связь, но у вас есть идея получше?
В идеале моя программа исключает обратную связь без необходимости вырезать ненужные детали. Предположим, я нахожусь в двустороннем разговоре. Я не хочу пропустить то, что говорит другая сторона, просто потому, что я говорю в тот же момент, особенно из-за значительной задержки.
Можете ли вы порекомендовать библиотеку или хотя бы стратегию для устранения обратной связи?
Кроме того, я хотел бы получить любые советы, которые могут быть у вас по устранению шума, который возникает, даже если в комнате совершенно тихо. Опять же, я могу использовать обнаружение громкости, чтобы отключить звук, когда в комнате тихо, но тогда слышен пух, как только кто-то начинает говорить. (Или, как вы думаете, я должен спросить об этом отдельно?)