Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Автоматическое переключение вывода звука на подключаемые Bluetooth-наушники  (Прочитано 19917 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн 0xAD

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Во многих устройствах, в том числе в настольных компьютерах и ноутбуках, в том числе в Ubuntu, реализовано автоматическое переключение вывода звука при подключении наушников со встроенных динамиков или колонок на подключаемые наушники. Однако при подключении Bluetooth-гарнитур и Bluetooth-наушников, по крайней мере на моём компьютере, подобного не происходит.

Используется Ubuntu 14.04 и PulseAudio 4.0. Наушники отлично подключаются и работают в режимах HSP и A2DP, поэтому модель наушников даже не привожу в надежде на то, что это не важно. Однако после успешного подключения вывод звука по умолчанию во всех приложениях продолжает осуществляться через колонки. Как настроить систему так, чтобы при подключении Bluetooth-наушников устройством вывода звука по умолчанию стали подключаемые наушники? Кроме того, по умолчанию режим работы наушников — HSP, как сделать так, чтобы режимом по умолчанию был A2DP?

В статье https://help.ubuntu.ru/wiki/PulseAudio написано, что PulseAudio выбирает тот профиль для карты, у которого наибольший приоритет, и для вывода звука по умолчанию использует ту карту и тот сток, у порта которых наибольший приоритет и тот порт, у которого наибольший приоритет. Также в статье написано, что изменить приоритеты «пока нельзя». Мне же кажется, что всё-таки как-то можно. Либо это какие-то системные или пользовательские настройки в конфигурационных файлах, либо какие-то общие данные, идущие в составе PulseAudio, или, в крайнем случае, это зашито в код PulseAudio, который открыт и может быть легко изменён и повторно скомпилирован. Что можно сделать, если очень нужно?

В статье также описывается способ, с помощью которого можно настроить автоматическое переключение ввода/вывода звука на подключаемое устройство, которое подключается по USB (с использованием правил udev). Можно ли сделать то же самое для устройств, подключаемых по Bluetooth? Это, конечно, будет худшим решением, но всё же лучше, чем ничего.

В статье http://itshaman.ru/articles/123/podklyuchenie-bluetooth-naushnikov-i-garnitury-dlya-proslushivaniya-muzyki-v-ubuntu написано, что при наличии PulseAudio при подключении Bluetooth-гарнитуры PulseAudio будет автоматически переводить звук на неё, кроме того, на этом форуме некоторые участники писали о том, что у них вывод звука автоматически переключается. Получается, что в новой версии PulseAudio изменили приоритеты по умолчанию? Я в Zorin 6, основанной на Ubuntu 12.04, ранее при однократном тестировании наблюдал автоматическое переключение, но только со второго подключения устройства. Первый раз не переключилось, я переключил вручную, при втором подключении снова не переключилось, я снова переключил вручную, а при третьем подключении устройства переключилось.

Оффлайн 0xAD

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Ну что же, как сказал человек в посте, ссылку на который я привожу ниже, спасение утопающих — дело рук самих утопающих. Если очень нужно, можно всё и самому сделать.

Что касается приоритетов, то они инициализируются вшитыми в код PulseAudio значениями при инициализации драйвера карты (модуля PulseAudio, управляющего картой PulseAudio, для карты ALSA это module-alsa-card, для карты BlueZ (Bluetooth-гарнитуры или Bluetooth-наушников) — module-bluetooth-device), но теоретически могут быть изменены в дальнейшем, теоретически модулем (не уверен в этом полностью), или, в случае карты ALSA, конфигурационным файлом (см. далее).

Следующий скрипт скачивает исходники PulseAudio, вносит в них изменения (изменяет начальные значения приоритетов для A2DP и портов Bluetooth-наушников) и собирает модифицированный пакет pulseaudio-module-bluetooth. Скачивание из официальных репозиториев (из тех же, из которых скачиваются обычные бинарные пакеты), всё происходит в текущей папке, в середине требуются права root и установка большого количества требуемых для сборки пакетов для разработки, для сборки требуются пакеты devscripts, fakeroot и необходимое для сборки, например, build-essential. Скрипт, скорее всего, подходит только для Ubuntu 14.04 (ну или для дистрибутивов, основанных на Debian и использующих PulseAudio 4.0). Название пакета будет такое же, как и в репозитории, поэтому будут приходить обновления, нужно зафиксировать версию или изменить версию пакета в исходнике перед сборкой.

build_pulseaudio_module_bluetooth_with_elevated_priorities.sh:

#!/bin/sh
apt-get source pulseaudio-module-bluetooth
rm "pulseaudio*.tar.xz"
rm "pulseaudio*.dsc"
cd "pulseaudio-4.0/debian/patches"
echo "2147a2148"                     >> "local-0000-elevate-priorities-for-bluetooth.patch"
echo ">     port->priority = 10100;" >> "local-0000-elevate-priorities-for-bluetooth.patch"
echo "2153a2155"                     >> "local-0000-elevate-priorities-for-bluetooth.patch"
echo ">     port->priority = 8950;"  >> "local-0000-elevate-priorities-for-bluetooth.patch"
echo "2169c2171"                     >> "local-0000-elevate-priorities-for-bluetooth.patch"
echo "<         p->priority = 10;"   >> "local-0000-elevate-priorities-for-bluetooth.patch"
echo "---"                           >> "local-0000-elevate-priorities-for-bluetooth.patch"
echo ">         p->priority = 30;"   >> "local-0000-elevate-priorities-for-bluetooth.patch"
cd "../.."
patch -n "src/modules/bluetooth/module-bluetooth-device.c" < "debian/patches/local-0000-elevate-priorities-for-bluetooth.patch"
sudo apt-get build-dep pulseaudio-module-bluetooth
debuild -b -us -uc
cd ..
mv pulseaudio-module-bluetooth_4.0*.deb pulseaudio-4.0
rm libpulse*.deb
rm pulseaudio*.deb
rm pulseaudio*.build
rm pulseaudio*.changes
mv pulseaudio-4.0/pulseaudio-module-bluetooth_4.0*.deb .
rm -r pulseaudio-4.0

PulseAudio подцепляет модуль, pactl показывает изменённые приоритеты, однако не выбирает в соответствии с ними A2DP и не переключает сток по умолчанию.

Возможно, что требуются ещё какие-то изменения в коде, или же профиль выбирается не только исходя из приоритетов (см. далее про запоминание профиля), а приоритет порта влияет только на выбор порта у стока, но не на выбор между стоками (в последнем случае я вообще не понимаю, на основе чего выбирается сток, возможно, просто как наименьший по номеру).

Наиболее правильным решением, видимо, является отключение всех портов, не являющихся наушниками, у всех карт ALSA при появлении хотя бы одной карты BlueZ с доступным портом наушников, как это делается в драйвере ALSA. Возможно, потом как-нибудь напишу им баг по этому поводу.

Вот здесь описывается способ создания конфигурационных файлов, которые в том числе настраивают приоритеты портов карты PulseAudio, но, во-первых, эти приоритеты, как уже выше было сказано, видимо, влияют только на выбор порта у стока, но не на выбор между стоками, а во-вторых, это внутренняя тема драйвера ALSA для PulseAudio module-alsa-card.c, звук же, поступающий на карту BlueZ, управляемой module-bluetooth-device.c, отправляется PulseAudio напрямую стеку BlueZ в ядре, без участия ALSA, так что это подходит только для настройки карты ALSA: http://archlinux.org.ru/forum/topic/14514/, http://unix.stackexchange.com/questions/111428/how-do-i-configure-pulseaudio-for-7-1-surround-sound-over-hdmi.

При выборе стока по умолчанию и профиля карты в pavucontrol ни то, ни другое значение не запоминается. Впрочем, через месяц использования A2DP всё-таки начал запоминаться, но нестабильно, через некоторое время опять включался HSP. Предполагаю два варианта. Либо PulseAudio выбирает тот профиль, в котором большее количество раз непрерывно находилась карта, либо запоминание происходит при отключении и подключении наушников при запущенном pavucontrol. Мне же нужен стабильный A2DP при подключении.

Помогло подключение модуля PulseAudio module-switch-on-connect в /etc/pulse/default.pa, который автоматически переключает сток по умолчанию на новый появляющийся сток. Как я уже писал вот здесь: https://forum.ubuntu.ru/index.php?topic=270174.0, Rhythmbox и Firefox/Flash продолжали после этого выводить звук на колонки, что скорее всего было вызвано запуском программы Параметры системы -> Звук при подключённых и автоматически переключившихся наушниках, при этом повторный запуск этой программы и переключение в ней вывода звука на колонки и обратно чудодейственным образом решило проблему.

Для автоматического же переключения наушников в режим A2DP вместо udev пришлось использовать Upstart, то есть настроить задачу Upstart на автоматическое переключение наушников в A2DP при их подключении. При этом возникла очередная проблема, которая заключалась в том, что событие Upstart bluetooth-device-added генерировалось не только при подключении наушников, но и при переключении профиля наушников с A2DP на HSP (но не наоборот) (видимо, из-за добавления микрофона), а также иногда при включении компьютера (из-за подключения Bluetooth-адаптера?). Проблему решила очень хитрая схема с 2 скриптами, первый из которых переключает наушники в A2DP и при этом отсеивает случаи, когда карта отсутствует (включение компьютера) и когда при генерации события bluetooth-device-added номер карты остался такой же, как и при предыдущей генерации события (переключение в HSP), а второй автоматически при запуске сеанса пользователя сбрасывает номер карты на такой, который не ожидается, для правильной обработки ситуации при первом подключении наушников. При этом в домашней папке хранится служебный файл ~/.bluez_card, хранящий последний использовавшийся номер карты PulseAudio, соответствующей наушникам.

/etc/init/custom/bluetooth-headphones-switch-to-a2dp.conf:

description "Upstart task for switching bluetooth headphones to A2DP"

start on bluetooth-device-added

task

exec su <user> -c "/usr/bin/bluetooth_headphones_switch_to_a2dp.sh"

/usr/bin/bluetooth_headphones_switch_to_a2dp.sh:

#!/bin/sh
sleep 5
if pactl list short cards | grep bluez_card.<MAC>
then
  read OLD_BLUEZ_CARD < /home/<user>/.bluez_card
  pactl list short cards | grep bluez_card.<MAC> | awk '{print $1}' > /home/<user>/.bluez_card
  read NEW_BLUEZ_CARD < /home/<user>/.bluez_card
  if [ $OLD_BLUEZ_CARD -ne $NEW_BLUEZ_CARD ]
  then
    pactl set-card-profile 'bluez_card.<MAC>' 'a2dp'
  fi
fi

/etc/xdg/autostart/bluez-card-reset.desktop:

[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=PulseAudio BlueZ card number cache reset
Exec=bluez-card-reset.sh
Terminal=false
Type=Application
X-GNOME-Autostart-Phase=Initialization
NoDisplay=true

/usr/bin/bluez-card-reset.sh:

#!/bin/sh
if [ `pwd` = "/home/<user>" ]
then
  echo 2 > /home/<user>/.bluez_card
fi

PulseAudio работает в сеансе обычного пользователя, поэтому в нужных местах нужно заменить <user> на имя обычного пользователя, которому нужно переключать в A2DP, а <MAC> — MAC-адрес наушников (можно посмотреть в Параметры системы -> Bluetooth или в pactl list cards). В последнем скрипте вместо 2 нужно вписать такой номер карты PulseAudio, соответствующей наушникам, который не ожидается при первом подключении наушников (например, у меня встроенная карта имеет номер 0, а наушники при первом подключении имеют номер 1, при втором — 2 и т. д., так что при первом подключении для них не ожидается номер 2).

Написал скрипт-обёртку вокруг Empathy, который автоматически переключает наушники в режим HSP на время работы Empathy (и поддерживает их в этом режиме), а после прекращения работы Empathy переключает обратно в A2DP (её можно переделать и в обёртку для Skype).

/usr/bin/emp-hsp:

#!/bin/sh
BLUEZ_CARD="bluez_card.<MAC>"
empathy &
sleep 2
while ps -u <user> | grep empathy
do
  if pactl list short cards | grep $BLUEZ_CARD
  then
    pactl set-card-profile "$BLUEZ_CARD" "hsp"
  fi
  sleep 4
done
if pactl list short cards | grep $BLUEZ_CARD
then
  pactl set-card-profile "$BLUEZ_CARD" "a2dp"
fi

Раз уж серьёзно взялся за PulseAudio, ещё настроил себе module-lirc, и теперь управляю громкостью на компьютере с помощью пульта ДУ.

Так как я википедист по образованию, то не могу не запостить отсюда всё на вики (https://help.ubuntu.ru/).

adawdp

  • Гость
2015 Dec 14; 10:15 PM; Oakville, ON, Canada.
0xAD, Вы начали с вот этого:
(Нажмите, чтобы показать/скрыть)
— Решил я попробовать ничего у меня не переключается автоматически :( … обычные у меня USB наушники… Вынимаю, вставляю в USB разъём продолжают работать колонки монитора.
(Нажмите, чтобы показать/скрыть)
— Я переключаюсь клавишами которые “приводят в действие” скрипты. Под спойлером ссылки о том, что проблемы звука меня тоже интересовали.
— Вы тут, конечно, серьёзно подошли ко многим вопросам. Ну я вот что-то на простые не могу найти вразумительного ответа :).
— Например, почему “на ходу” из терминала звук переключается с колонок на наушники и наоборот, а без включенных звуковых устройств переключить звуковые устройства можно только с помощью indicator-sound , в смысле в Unity на тот динамик что на панели индикаторов нажимать нужно :)
— Вообще у меня такое ощущение, что по звуку у нас на форуме больше вопросов чем ответов :)!
— Написал в том числе и для того, чтобы оживить дискуссию!

Оффлайн 0xAD

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Для автоматического переключения для вас на данный момент самый лучший метод (по прямоте метода, по количеству действий, которые нужно предпринять для настройки и по скорости переключения) — использовать модуль PulseAudio module-switch-on-connect.

Модуль уже идёт в стандартной поставке PulseAudio и Ubuntu 14.04. Нужно его только включить. В /etc/pulse/default.pa допишите предпоследним пунктом (перед стоком и источником по умолчанию) и перезагрузите компьютер:

# Local additions from fjf:
load-module module-switch-on-connect

После этого при появлении нового устройства вывода звука и нового стока PulseAudio PulseAudio автоматически сделает последний стоком по умолчанию и переведёт на него вывод звука во всех программах.

Второй вариант — настраивать udev на автоматическое переключение (см. https://help.ubuntu.ru/wiki/PulseAudio), но переключение будет не на ходу (нужно будет перезапускать программы, воспроизводящие звук) (для исправления этого нужно изменить скрипт в вышеприведённой статье ещё и на переведение sink-input'ов, как у вас в скриптах сделано), кроме того, переключение будет занимать на несколько секунд больше времени.

Наиболее правильным способом будет изменение поведения PulseAudio как я писал выше (во втором посте, 8 абзац, Наиболее правильным решением...), я напишу об этом Леннарту.

— Например, почему “на ходу” из терминала звук переключается с колонок на наушники и наоборот, а без включенных звуковых устройств переключить звуковые устройства можно только с помощью indicator-sound , в смысле в Unity на тот динамик что на панели индикаторов нажимать нужно :)

Вот это вот вообще не понял. Попробую предположить: при переключении с клавиатуры все программы, воспроизводящие звук, у вас сразу же тоже переводят вывод звука, без перезагрузки, при переключении через Индикатор звука на верхней панели Unity -> Параметры звука звук переводится тоже без перезагрузки, а при переключении через другой, сторонний индикатор звука Unity, звук переводится только после перезагрузки.
« Последнее редактирование: 16 Декабря 2015, 18:43:21 от 0xAD »

adawdp

  • Гость
2015 Dec 16; 10:45 AM; Oakville, ON, Canada.

— Спасибо, 0xAD, после работы буду пробовать… Дублирование некоторое получилось, Вы ответили в мою тему по индикатору indicator-sound-switcherhttps://forum.ubuntu.ru/index.php?topic=270518.msg2136473#msg2136473

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

Пользователь решил продолжить мысль 17 Декабря 2015, 01:46:35:
2015 Dec 16; 05:46 PM; Oakville, ON, Canada.

0xAD спасибо, всё получилось, я немного не так сделал, я файл /etc/pulse/default.pa скопировал:
Код: (bash) [Выделить]
cp /etc/pulse/default.pa ~/.config/pulse/и уже тут дописал в конец файла как Вы говорили… Мне показалось, что так будет касаться только одного пользователя, а остальных не заденет…
Код: (bash) [Выделить]
### Make some devices default         # → 167-я строка
# Local additions from fjf:           # → дописано…
load-module module-switch-on-connect  # → дописано…
#set-default-sink output             
#set-default-source input             # → последняя строка
— Теперь вот эти два индикатора

стандартный и http://yktoo.com/en работают одинаково.
и терминальные команды типа:
Код: (bash) [Выделить]
pacmd set-default-sink alsa_output.usb-Plantronics_Plantronics_.Audio_655_DSP-00-DSP.analog-stereo
pacmd set-default-source alsa_input.usb-Sunplus_IT_Co_HP_720p_HD_Monitor_Webcam-02-Webcam.iec958-stereo
исполняются как во время воспроизвдения звука т.е. можно переключаться с наушников на колонки и обратно в процессе воспроизвдения, так и в случае когда звук не воспроизводится, т.е. можно сначала из терминала или скриптом через горячую клавишу включить нужное звуковое устройство, а затем собственно включить это устройство непосредственно.
— Иными словами теперь я точно знаю что если я решил включить звук в наушниках то у меня не рявкнут на всю мощь колонки, а сразу звук пойдёт в наушники.
— Раньше это можно было настроить только родным индикатором, а до него нужно добираться в два клика.
« Последнее редактирование: 17 Декабря 2015, 01:46:36 от adawdp »

Оффлайн 0xAD

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Так у вас заработало автоматическое переключение, скрипт заработал, который я написал?

— Например, почему “на ходу” из терминала звук переключается с колонок на наушники и наоборот, а без включенных звуковых устройств переключить звуковые устройства можно только с помощью indicator-sound , в смысле в Unity на тот динамик что на панели индикаторов нажимать нужно :)

Кажется понял, про что вы здесь говорите. Похоже, что это то же самое, что я описывал во 2 посте 11 абзаце. Это какое-то запоминание программами (или ALSA) мест в PulseAudio, в которые они подключают sink-input'ы. А программа Параметры системы -> Звук (indicator-sound) умеет эту информацию сбрасывать, после этого программы начинают выводить звук на новое устройство по умолчанию. Во время воспроизведения звука программами при изменении устройства вывода как скриптом (клавишей), так и indicator-sound-switcher, так и indicator-sound вместе с изменением стока по умолчанию перемещают также sink-input'ы, и они запоминаются программами, а при переключении (при помощи клавиши или indicator-sound-switcher) не во время воспроизведения изменяется только сток по умолчанию, и программы вспоминают последнее место, куда нужно подсоединять sink-input, то есть предыдущий сток, который уже не по умолчанию. У меня, как я писал выше, это наблюдалось только для Rhythmbox и Firefox/Flash, а Totem, Firefox/HTML5/H.264 и SMPlayer звук успешно переводил не на ходу, статически. Возможно, что это зависит от реализации программы, воспроизводящей звук. У вас во всех программах поведение одинаковое?

А насчёт того, что у вас подключение module-switch-on-connect эту проблему решило, вот это я не могу понять. У меня наоборот оно вызвало проблему. Скорее всего излечение не с этим связано. Это просто что-то непонятное, происходящее где-то между PulseAudio, Параметры системы -> Звук (indicator-sound) и программами, воспроизведящими звук.

и терминальные команды типа:
Код: (bash) [Выделить]
pacmd set-default-sink alsa_output.usb-Plantronics_Plantronics_.Audio_655_DSP-00-DSP.analog-stereo
pacmd set-default-source alsa_input.usb-Sunplus_IT_Co_HP_720p_HD_Monitor_Webcam-02-Webcam.iec958-stereo
исполняются как во время воспроизвдения звука т.е. можно переключаться с наушников на колонки и обратно в процессе воспроизвдения, так и в случае когда звук не воспроизводится,

Вот это вот маловероятно, эти команды изменяют только сток по умолчанию, без перемещения sink-input'ов воспроизводящих программ, вы наверно имели ввиду скрипты и клавиши.

adawdp

  • Гость
2015 Dec 17; 11:12 PM; Oakville, ON, Canada.

Цитировать
Возможно, что это зависит от реализации программы, воспроизводящей звук. У вас во всех программах поведение одинаковое?

— Всех программ не очень много  :) … Rhythmbox, Anki (госкомпания, французский обязательно-желательный :), начальника из Квебека прислали, чтоб он был здоров и я тоже…), ну Сhromium, в других обозревателях не пробовал. В этих трёх программах всё одинаково…

Цитировать
А насчёт того, что у вас подключение module-switch-on-connect эту проблему решило, вот это я не могу понять.

— Я уже тоже начал сомневаться, я правил копию файла перенеся её в директорию ~/.config/pulse/, а заработало на всех пользователях и в гостевом сеансе даже indicator-sound-switcher нормально заработал. Или стечение обстоятельств или приходило много обновлений, я не просматриваю обычно пристально, что там обновляется, доверяю :), и эти обновления повлияли.

Цитировать
Вот это вот маловероятно, эти команды изменяют только сток по умолчанию, без перемещения sink-input'ов воспроизводящих программ, вы наверно имели ввиду скрипты и клавиши

— Тут Вы правы, это я погорячился, что-то там быстро пощёлкал и сделал ошибочный вывод. Сейчас обстоятельно всё проверил. Да sink-input‘ы переключаются но программы продолжают работать оттуда, откуда были запущены впервые… И переключить можно или скриптом или индикатором…

— Рождество, конечно, близится, но странно как-то, неужели у всех всё так безоблачно со звуком и всем всё понятно? Что-то не верится…  Хотелось бы больше народу в дискуссии. У меня по поводу этого всего звука абсолютно поверхностное представление, а хотелось бы услышать парочку „начальников транспортных цехов“ в конце концов :)!

Оффлайн 0xAD

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Так как тема про автоматическое переключение, то ещё раз возвращаюсь к ней: у вас автоматическое переключение-то заработало или нет? Правка ~/.config/pulse/default.pa работает? Наверно туда нужно не копировать из глобального скрипта, а дополнять им глобальный скрипт, глобальный скрипт в любом случае будет выполняться, в локальный нужно только дописать то, что нужно выполнить в дополнение к глобальному.

— Всех программ не очень много  :) … Rhythmbox, Anki (госкомпания, французский обязательно-желательный :), начальника из Квебека прислали, чтоб он был здоров и я тоже…), ну Сhromium, в других обозревателях не пробовал. В этих трёх программах всё одинаково…

Ну вот, у меня тоже примерно эти же программы: Rhythmbox и Firefox/Flash. Если у вас Chromium через Flash, тогда это Flash, а не Chromium.

Возможно ещё, что на излечение повлиял запуск программы Параметры системы -> Звук (indicator-sound) в неподходящий (подходящий) момент, я просто запустил её, переключил вывод на колонки и обратно, и у меня после этого проблема ушла.

Если у вас излечение произошло для всех пользователей (а также то, что у меня правильная работа сохранилась после перезагрузки, но при этом сравнение дампов скрытых файлов и папок домашней папки не нашло релевантный отличий, см. https://forum.ubuntu.ru/index.php?topic=270174.0, это тема по сути про эту же проблему), то это значит, что проблема глобальная, но это вряд ли установка обновлений, я не ставил никаких обновлений, у меня проблему решил запуск программы Параметры системы -> Звук. Мне кажется, это какие-то непонятные изменения в ALSA, возможно, что это баг в ядре.
« Последнее редактирование: 18 Декабря 2015, 20:38:42 от 0xAD »

adawdp

  • Гость
2015 Dec 18; 06:32 PM; Oakville, ON, Canada.

Цитировать
Так как тема про автоматическое переключение, то ещё раз возвращаюсь к ней: у вас автоматическое переключение-то заработало или нет? Правка ~/.config/pulse/default.pa работает?

— Да, это работает, я просто не обращал внимание, у меня USB-наушники. Но если вытащить-вставить разъём как во время воспроизведения, так и без воспроизведения звука, то звук переключается на наушники или вновь запущенная программа направляет звук в наушники. Т.е. наушники получаются как бы устройством по умолчанию если их подключать через USB-порт.

— Попробовал ещё звук из Chrome и Firefox направляется в колонки или наушники как во всех прочих программах.

Оффлайн Umely

  • Любитель
  • *
  • Сообщений: 90
    • Просмотр профиля
Не пойму чего-то, не работает правка default.pa
Гарнитура при подключении начинает принимать входящий вызов...
И какая разница, куда вписывать строку, если все, что ниже все равно закомментировано?
Debian -УГ, KDE -УГ.
Kubuntu 20.04.3, HP ENVY X360 CN-10XXur.

Оффлайн 0xAD

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
Вы перезагружали компьютер? Что именно не работает?

И какая разница, куда вписывать строку, если все, что ниже все равно закомментировано?

Нет никакой разницы, просто так красивее :) Можно вообще вписать в самое начало, всё равно там тоже всё закомментировано :)

Оффлайн Umely

  • Любитель
  • *
  • Сообщений: 90
    • Просмотр профиля
Вот не надо таких вопросов - тачпад протерли, на клавиатуру дули?
Не работает трюк с конфигом - не хочет выводить звук автоматом на гарнитуру.
На 14.04 работает без нареканий изкаропки.
Зато гарнитура при коннекте пиликает, что поступил вызов и предлагает ответить или завершить. (Гарнитура с голосовым управлением).
Debian -УГ, KDE -УГ.
Kubuntu 20.04.3, HP ENVY X360 CN-10XXur.

Оффлайн 0xAD

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
В pactl list есть модуль module-switch-on-connect? После подключения гарнитуры в этом списке появляются карта и стоки, соответствующие гарнитуре?

На 14.04 работает без нареканий изкаропки.

Что работает? А где не работает?

Оффлайн Umely

  • Любитель
  • *
  • Сообщений: 90
    • Просмотр профиля
нарезал pactl list, если поможет
(Нажмите, чтобы показать/скрыть)

(Нажмите, чтобы показать/скрыть)

(Нажмите, чтобы показать/скрыть)

(Нажмите, чтобы показать/скрыть)

(Нажмите, чтобы показать/скрыть)

Что не работает? Не работает трюк с конфигом на К15.10,
а на К14.04 спарил гарнитуру и все автоматом включается без всяких конфигов и звук отличный - стерео и с басами. Опять все сломали, рукожопы.

З.Ы. Поставил высший приоритет гарнитуре в настройках Параметры системы-Мультимедиа-Звук и видео
Продолжает при начале воспроизведения чего-нибуть со звуком пиликать про входящий и после паузы (настроен автоответ) воспроизводит звуки как из унитаза.
И еще не выбирается профиль a2dp, его вообще нет в списке, только HSP. Полагаю, унитаз из-за этого.
« Последнее редактирование: 23 Января 2016, 03:32:56 от Umely »
Debian -УГ, KDE -УГ.
Kubuntu 20.04.3, HP ENVY X360 CN-10XXur.

Оффлайн 0xAD

  • Автор темы
  • Любитель
  • *
  • Сообщений: 62
    • Просмотр профиля
После подключения гарнитуры аудиоприёмники и стоки, соответствующие гарнитуре, последние в списке соответственно аудиоприёмников и стоков? В pactl stat сток и источник по умолчанию отображается гарнитура?

Пиликает на 15.10 или на 14.04? Унитаз воспроизводится сам или что-то его инициирует? Какое время он продолжается? До переподключения? A2DP не выбирается во время унитаза или когда? Во время, когда не выбирается A2DP, A2DP есть в списке профилей звуковой платы в pactl list?

Вообще, эти вопросы, скорее всего, помогут только разобраться в ситуации, решить будет малореально, из возможных вариантов действий я вижу только загрузить модуль module-switch-on-connect с каким-нибудь параметром или откатить версию PulseAudio c 6.0 до 4.0.

 

Страница сгенерирована за 0.098 секунд. Запросов: 26.