Мне тяжело ответить на этот вопрос. Потому, что регулирование громкости у меня выполнено не в виде умножителя, а в виде сумматора частных слагаемых.
Как пример: чтобы получить 0,75 от исходного сигнала, я складываю 0,5 и 0,25. А величины 0,5 и 0,25 получаю побитовым сдвигом исходного сигнала.
При уменьшении громкости, кратном 6 дБ я вообще не складываю - просто уменьшается разрядность на 1 бит / 6 дБ. По другому в цифре не получается. Может из-за уменьшения разрядности происходит деградация звука? Хотя 10-15 процентов это совсем немного при 24-битном слове.
Вот для умножителя на иррациональное число (а уровни в децибелах - иррациональные числа) важна разрядность. Тут им 54 бит в помощь от цирруса.
Социальные закладки