Как узнать текущий уровень громкости выходного сигнала динамика в терминале?

Вопрос или проблема

Например, у меня открыт браузер с YouTube или другой программой, воспроизводящей аудио, и я бы хотел получить текущий уровень аудио в числах от 0 до 100%. Чтобы быть более точным, я видел ответы с командами, которые показывали установленный уровень аудио в системе, но я хочу видеть уровень аудио, который поступает из приложений, воспроизводящих аудио.

Если ваша система использует PulseAudio, вы можете перечислить работающие приложения с помощью pacmd.

Здесь только Firefox воспроизводит звук, с громкостью 54%:

hoov@hal:~$ pacmd list-sink-inputs 
1 sink input(s) available.
    index: 4577
        driver: <protocol-native.c>
        flags: START_CORKED 
        state: RUNNING
        sink: 0 <alsa_output.pci-0000_00_1b.0.analog-stereo>
        volume: front-left: 35578 /  54% / -15,92 dB,   front-right: 35578 /  54% / -15,92 dB
                balance 0,00
        muted: no
        current latency: 89,62 ms
        requested latency: 75,00 ms
        sample spec: float32le 2ch 48000Hz
        channel map: front-left,front-right
                     Stereo
        resample method: speex-float-1
        module: 14
        client: 840 <Firefox>
        properties:
                media.name = "AudioStream"
                application.name = "Firefox"
                native-protocol.peer = "UNIX socket client"
                native-protocol.version = "33"
                application.process.id = "11744"
                application.process.user = "gobuki"
                application.process.host = "morpheus"
                application.process.binary = "firefox"
                application.language = "en_US.UTF-8"
                window.x11.display = ":0"
                application.process.machine_id = "0f06bccf24c24ae5ba5d40c54b7d8f58"
                application.process.session_id = "2"
                application.icon_name = "firefox"
                module-stream-restore.id = "sink-input-by-application-name:Firefox"

Ответ или решение

Чтобы получить текущий уровень громкости вывода динамиков в терминале, в контексте операционной системы, использующей PulseAudio, вы можете воспользоваться командой pacmd. Это позволяет вам не только узнать уровень громкости, установленный в самом приложении, но и фактический уровень звука, который выводят запущенные приложения, такие как браузеры или музыкальные плееры.

Шаги для получения текущего уровня громкости:

  1. Открытие терминала: Начните с открытия терминала на вашем устройстве. Это может быть сделано через поиск вашего графического интерфейса пользовательских приложений или с помощью сочетания клавиш.

  2. Запуск PulseAudio: Убедитесь, что у вас установлена и запущена служба PulseAudio, так как именно эта система звука будет отвечать за управление аудиоустройствами и выводом звука.

  3. Использование команды pacmd: Чтобы отобразить информацию о приложениях, которые в данный момент воспроизводят звук, выполните следующую команду:

    pacmd list-sink-inputs
  4. Анализ вывода: После выполнения команды вы увидите список всех активных потоков аудио. Это будет выглядеть примерно так:

    index: 4577
       driver: <protocol-native.c>
       state: RUNNING
       ...
       volume: front-left: 35578 / 54% / -15,92 dB, front-right: 35578 / 54% / -15,92 dB

    Основное внимание следует уделить строке, содержащей volume, которая указывает уровень громкости в процентах и в дБ.

  5. Интерпретация данных: В наглядном примере видно, что уровень громкости составляет 54%. Это означает, что звук из приложения (например, Firefox) воспроизводится на уровне 54% от максимального уровня.

Примечания:

  • Убедитесь, что у вас установлены необходимые пакеты, такие как pavucontrol, для более расширенного контроля и диагностики звука в PulseAudio, если вам это нужно.
  • Если вы обработали все эти шаги и команда pacmd не возвращает ожидаемого результата, проверьте, нет ли ограничений на использование PulseAudio на вашем устройстве, или попробуйте перезапустить службу PulseAudio.

Таким образом, данный метод дает вам прямой доступ к текущему уровню громкости вывода динамиков, что может быть полезно для настройки аудиоустройств или мониторинга уровня звука в реальном времени.

Оцените материал
Добавить комментарий

Капча загружается...