Я хотел бы поделиться с вами тем, как я решил это с помощью постоянного решения без скриптов. Таким образом, мы также можем избавиться от уродливого поп-звука при запуске pulseaudio.
Я использую Apple MacBook 7,1 Mid 2010, White Unibody.
Причина, по которой загорается красный свет при каждом запуске pulseaudio происходит автоматическое обнаружение аппаратного обеспечения, определенного в Permanent
Обычный пример default.pa здесь: https://gist.github.com/95406ea115dc3a0a561f8242e2ae00f4 [ ! d5]
### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-udev-detect
.else
### Use the static hardware detection module (for systems that lack udev support)
load-module module-detect
.endif
Когда эти модули загружаются, он автоматически обнаруживает ваше оборудование и также инициализирует его. Пока аппаратное обеспечение инициализируется, выход SPDI / F включается, поэтому красный свет светится, даже если вы ранее отключили звук, отключив alsamixser. Когда SPDI / F снова переключается, тогда также появляется уродливый эффект звукового эффекта.
Чтобы избежать такого поведения, я решил вручную определить свое оборудование. Я не использую автоматические модули обнаружения оборудования. Я отключил их, комментируя весь блок:
### Automatically load driver modules depending on the hardware available
#.ifexists module-udev-detect.so
#load-module module-udev-detect
#.else
### Use the static hardware detection module (for systems that lack udev support)
#load-module module-detect
#.endif
Теперь мне нужно определить мое аудио аппаратное обеспечение - приемник и источник ввода. Я использовал модуль-alsa-приемник и модуль-alsa-source. Мне также нужно знать, какие у HW ID есть мои аудиоисточники. На моей машине есть только одна интегрированная звуковая карта с двумя входами / выходами, которые имеют id hw: 0,0. Это может быть другим на вашей машине.
Чтобы избежать такого поведения, я решил вручную определить свое оборудование. Я не использую автоматические модули обнаружения оборудования. Я отключил их, комментируя весь блок:
### Load audio drivers statically
load-module module-alsa-sink device=hw:0,0
load-module module-alsa-source device=hw:0,0
#load-module module-null-sink
#load-module module-pipe-sink
Важно перезагрузить pulseaudio. Вы можете использовать: pulseaudio --vv --kill, а затем снова запустить его с pulseaudio --vv --start
Нет, у нас будет доступ к нашему аудиовходу / выходу, гнездо не светится красный и поп-звук при запуске пропадают. Все изменения, внесенные в alsamixer, всегда будут сохраняться.
Но, используя эту простую конфигурацию, мы не можем теперь использовать SPDI / F как обычный выход. Что, если решите сыграть в нее звук?
Я даже могу определить выход SPDI / F. SPDI / F имеет идентификатор hw0,1 на машине. Если я хотел бы использовать его снова. Я добавлю эту строку в свою конфигурацию:
### Load audio drivers statically
load-module module-alsa-sink device=hw:0,0
load-module module-alsa-sink device=hw:0,1
load-module module-alsa-source device=hw:0,0
#load-module module-null-sink
#load-module module-pipe-sink
С помощью этой конфигурации мы можем легко отключить и включить ее в alsamixer.
Вот пример моей конфигурации, которую я использую: https://gist.github.com/95406ea115dc3a0a561f8242e2ae00f4
На самом деле, я не владеют какой-либо другой звуковой системой, поэтому я не могу ее протестировать. Если вы используете звуковую систему 2.1 или 4.1, выход, вероятно, будет воспроизводиться только как стерео, и вам нужно будет добавить дополнительные конфигурации, чтобы обеспечить правильную работу. Та же проблема может быть и с outpout HDMI, я не могу ее протестировать.
Начиная с Ubuntu 11.04, exfat автоматически запускает работу, если установлен fuse-exfat.