PCMU эффект затухания - PullRequest
0 голосов
/ 26 июля 2011

Я хочу добиться эффекта затухания звука PCMU.Допустим, у меня есть два куска аудио по 160 байтов, которые соответствуют длительности звука по 20 мс каждый, и я хочу вставить между ними некоторое молчание, но я хочу плавный переход от первого к молчанию, а затем от молчания ко второму.Как мне этого добиться?

Ответы [ 2 ]

1 голос
/ 26 июля 2011

Возможно, вам потребуется преобразовать выборки PCMU при переходе в линейные значения, масштабировать их в соответствии с вашей функцией перехода, а затем преобразовать их обратно в PCMU.

может быть способом сделать это, оставаясь в области µ-Law, поскольку масштабирование становится сложением / вычитанием, но это будет непросто сделать правильно и, возможно, не стоит потери переносимости / простота, если вы действительно не выходите за рамки производительности.

0 голосов
/ 26 июля 2011

Вы можете уменьшить громкость до полной тишины, а затем начать другую пьесу, увеличив ее громкость с 0

. Модификация громкости довольно проста.если у вас аудио сэмплов размером 2 байта, просто возьмите сэмпл как 16-битное целое и обработайте его как уровень громкости.Например, вам нужно плавно снизить громкость с текущего уровня до 0 в течение 5 секунд.Возьмите последние 5 секунд вашего первого куска и измените его, например, для каждого 2-байтового семпла рассчитайте новый уровень громкости (в соответствии с его временной меткой для обеспечения эффекта плавного изменения громкости) в виде доли 1 и умножьте на значение семпла.

...