LINUX.ORG.RU

Как создать собственный control в ALSA?

 ,


0

0

Есть одна звуковая карта, а именно — Xonar D1. У этой карты весьма оригинально организована регулировка громкости на выходах — оные являются каналами одного ctl'а — Master:

> amixer scontrols
Simple mixer control 'Master',0
Simple mixer control 'Front Panel',0
Simple mixer control 'Line',0
Simple mixer control 'Mic',0
Simple mixer control 'Mic Boost (+20dB)',0
Simple mixer control 'Mic Source',0
Simple mixer control 'IEC958',0
Simple mixer control 'Aux',0
Simple mixer control 'Analog Input Monitor',0
Simple mixer control 'DAC Filter',0
Simple mixer control 'Stereo Upmixing',0
> amixer sget Master,0
Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined penum
  Playback channels: Front Left - Front Right - Rear Left - Rear Right - Front Center - Woofer - Side Left - Side Right
  Limits: Playback 67 - 127
  Mono:
  Front Left: Playback 101 [57%] [-26.00dB] [on]
  Front Right: Playback 101 [57%] [-26.00dB] [on]
  Rear Left: Playback 101 [57%] [-26.00dB] [on]
  Rear Right: Playback 101 [57%] [-26.00dB] [on]
  Front Center: Playback 101 [57%] [-26.00dB] [on]
  Woofer: Playback 101 [57%] [-26.00dB] [on]
  Side Left: Playback 101 [57%] [-26.00dB] [on]
  Side Right: Playback 101 [57%] [-26.00dB] [on]
И даже PCM нету. Из-за этого программы (кроме amixer/alsamixer) неверно определяют уровень громкости (они видят всё это как один Master), а при изменении громкости — двигают сразу все «каналы» на этом simple control.

Вопрос: возможно ли определить в .asoundrc такой ctl, который будет отображать и регулировать громкость исключительно для «Master front»? Если да, то как?

cast AEP, lazyklimm

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 2)
Ответ на: комментарий от anonymous

Баг на эту тему им ещё давно заслали, но разработчик заявил, что не будет городить костыли для экзотической реализации, и это проблемы исключительно приложений (как я уже говорил, стандартные утилиты ALSA поддерживают такой вариант).

GotF ★★★★★
() автор топика
Ответ на: комментарий от lazyklimm

Вероятно, я запутался в терминологии. В общем, мне нужен simple control %_% Это синоним ctl?

GotF ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.