2015-05-04 6 views
0

Я делал программу python, которая использует winsound.Beep(int, int), и я заметил, что после того, как он воспроизводит каждый звуковой сигнал, он вызывает громкий раздражающий звук «капли дождя». Есть ли способ исправить это?Уменьшить звук «капли дождя» в python windsound.Beep

ответ

0

Похоже, что вы переживаете, это то, что известно как клики в звуковом мире. Они возникают, когда звуковой сигнал быстро скачет в значении. Они также возникают, когда сигнал внезапно останавливается, но не достиг точки пересечения нуля. Диаграмма на этой странице показывает, что происходит довольно хорошо;

http://www.soundonsound.com/sos/oct06/articles/pcmusician_1006.htm

Я никогда не использовал winsound.Beep, но, глядя на документации, это кажется довольно высокий уровень. Вероятно, это использование квадратной волны, и вы слышите звук попса, когда значение равно 1, а затем сигнал прекращается. Спикер, вероятно, возвращается в свое положение покоя и приводит к слышимости звука капли. Вы могли бы, если бы вы действительно беспокоились, зайти в сам код и отредактировать его, чтобы каждый раз, когда звук создавался, он фильтруется через амплитудный конверт, чтобы избавиться от этих кликов, но это больше времени, чем это стоимость. Мой совет - изменить метод, используемый для генерации ваших тонов.