Программа против ОС обычно не имеет значения. Важно то, настраиваете ли вы громкость программно или аппаратно.
Уменьшение громкости в программном обеспечении в основном эквивалентно уменьшению битовой глубины. В цифровом аудио сигнал разделяется на отдельные выборки (взятые тысячи раз в секунду), а глубина в битах - это количество битов, которые используются для описания каждой выборки. Ослабление сигнала выполняется путем умножения каждого сэмпла на число меньше единицы, в результате чего вы больше не используете полное разрешение для описания звука, что приводит к уменьшению динамического диапазона и отношения сигнал / шум. В частности, каждые 6 дБ затухания эквивалентны уменьшению битовой глубины на единицу. Если вы начали, скажем, с 16-битного звука (стандартно для аудио-CD) и снизили громкость на 12 дБ, вы фактически вместо этого будете слушать 14-битное аудио. Уменьшите громкость слишком сильно, и качество начнет заметно страдать.
Другая проблема заключается в том, что эти вычисления часто приводят к ошибкам округления, поскольку исходное значение выборки не кратно коэффициенту, на который вы делите выборки. Это дополнительно ухудшает качество звука, вводя то, что в основном является шумом квантования. Опять же, это в основном происходит на низких уровнях громкости. Различные программы могут использовать немного разные алгоритмы для ослабления сигнала и устранения этих ошибок округления, что означает, что может быть некоторая разница в результирующем звуковом сигнале, скажем, между аудиоплеером и ОС, но это не меняет того факта, что в во всех случаях вы все еще уменьшаете битовую глубину и, по сути, тратите часть полосы пропускания на передачу нулей вместо полезной информации.
Этот PDF содержит больше информации и отличных иллюстраций, если вы хотите узнать больше.
Результат уменьшения громкости в аппаратных средствах зависит от того, как реализована регулировка громкости. Если он цифровой, то эффект почти такой же, как и уменьшение громкости в программном обеспечении, поэтому, вероятно, практически нет разницы в том, какой вы используете, с точки зрения качества звука.
В идеале вы должны выводить звук с компьютера на полную громкость, чтобы получить максимально возможное разрешение (битовую глубину), а затем иметь аналоговую регулировку громкости в качестве одной из последних вещей перед динамиками. Предполагая, что все устройства в вашем сигнальном тракте имеют более или менее сопоставимое качество (то есть вы не соединяете дешевый усилитель низкого уровня с высококачественным цифровым источником и ЦАП), это должно обеспечить наилучшее качество звука.
@Joren опубликовал хороший вопрос в комментариях:
Так что, если я хочу установить программный регулятор громкости на максимум, как мне справиться с тем, что мои аналоговые регуляторы неожиданно имеют очень маленький полезный диапазон? (Потому что даже переключение аналоговой громкости на половину слишком громко.)
Это может быть проблемой, когда регулятор громкости является частью усилителя, что, вероятно, имеет место в большинстве компьютерных установок. Поскольку работа усилителя заключается в том, чтобы, как следует из названия, усиливать, это означает, что усиление регулятора громкости находится в диапазоне от 0 до более чем 1 (часто намного больше), и к тому времени, как вы повернули регулятор громкости на половину, Вы, вероятно, больше не ослабляете, а фактически усиливаете сигнал сверх уровней, которые вы установили в программном обеспечении.
Есть несколько решений для этого:
Получите пассивный аттенюатор. Поскольку он не усиливает сигнал, его коэффициент усиления колеблется от 0 до 1, что дает вам гораздо больший диапазон использования.
Есть два аналоговых регулятора громкости. Если ваш усилитель мощности или колонки имеют регулятор громкости или входной обрезки, это будет отлично работать. Используйте это, чтобы установить основной уровень громкости, чтобы максимальный полезный диапазон вашего обычного регулятора громкости был максимальным.
Если предыдущие два не возможны или неосуществимы, просто уменьшите громкость на уровне ОС, пока не достигнете наилучшего компромисса между используемым диапазоном аналогового управления громкостью и качеством звука. Держите отдельные программы на 100%, чтобы избежать нескольких сокращений глубины подряд. Надеюсь, не будет заметной потери качества звука. Или, если есть, то я бы, вероятно, начал искать новый усилитель, который не имеет столь чувствительных входов, или, что еще лучше, имеет способ регулировки входного усиления.
@Lyman Enders Knowles указал в комментариях, что проблема уменьшения глубины цвета не относится к современным операционным системам. В частности, начиная с Vista, Windows автоматически увеличивает частоту дискретизации всех аудиопотоков до 32-битной плавающей запятой, прежде чем выполнять какое-либо ослабление. Это означает, что как бы мало вы ни включали громкость, не должно быть эффективной потери разрешения. Тем не менее, в конечном итоге звук должен быть преобразован с понижением частоты (до 16-битного или 24-битного, если это поддерживает ЦАП), что приведет к некоторым ошибкам квантования. Кроме того, сначала ослабление, а затем усиление увеличит минимальный уровень шума, поэтому рекомендации по поддержанию уровня программного обеспечения на уровне 100% и ослаблению аппаратного обеспечения как можно ближе к концу звуковой цепочки остаются в силе.