Как стать автором
Обновить

Комментарии 34

Хорошей альтернативой будет KDE Connect + jackaudio

Хм. А комп примерно таким-же образом может прикидываться блютус клавиатурой /мышкой для другого устройства ?

Присоединяюсь к вопросу.

Все уже украдено до нас. EmuBTHID насколько я понял, что делает прога: сканирует ввод с физической клавиатуры и мыши и передает через bluez на телефон прикидываясь bluetooth комплектом. Наверное все это еще нужно делать когда окно активно.

Да может. Есть малюсенькая софтинка, можно выбрать какую клавиатуру и мышку отдать по BT. Например если подключено несколько или ноутбук с внешней мышкой - отдать тачпад. Проверял на андроиде, айпаде и другом компе.

Вы не спрашивали, но рекомендую посмотреть и в обратную сторону на апп для телефона, который сделает из телефона аэромышь или внешний тачпад )

Когда-то, лет 8 назад, искал BlueTooth Audio Sink для планшета на андроиде, чтобы брат мог с него отвечать звонки на своей мобиле за рулём. Это был китайский планшет с камерой-регистратором, и камерой заднего/бокового (для праворулек) вида. Тогда было пара решений, которые постоянно глючили. Как оно сейчас с этим не знаю, ибо сейчас такой необходимости уже давно нет.

Если вы используете PulseAudio на такой "колонке", то будете ограничены старым кодеком SBC с битрейтом по умолчанию, что вряд ли сделает качество звука лучше, чем на исходном девайсе.
PulseAudio можно пересобрать с неофициальной поддержкой AAC (для Ubuntu в PPA был пакет pulseaudio-modules-bt), но могут возникнуть проблемы с совместимость.


Слышал, в новом сервере PipeWire эта проблема уже решена.

Не раскрыта тема, как это будет отображаться в системном микшере, и что будет с источниками звука на самом компе. Также, не раскрыта тема управления — на многих ВТ колонках есть кнопки переключения треков и тд — можно ли реализовать?

Using a Raspberry Pi as a Bluetooth speaker with PipeWire
Можно ставить и на ноут с Debian 11 Bullseye или Debian 12 Bookworm(пока testing)

PipeWire может выводить звук на внутренний аудиочипсет без какой-либо специальной настройки.
Он обеспечивает поддержку Bluetooth® A2DP с дополнительными кодеками (SBC-XQ, LDAC, aptX, aptX HD, aptX-LL, FastStream) из коробки.
В то же время WirePlumber автоматически создает соединение между источником A2DP и аудиочипсетом при подключении удаленного устройства, такого как телефон или ноутбук. Это делает настройку очень простой, так как PipeWire будет работать сразу после установки. Нужно будет только настроить BlueZ.

Разве все это не работает и так без дополнительных движений? Подключал к Mint BT наушники без каких то особых проблем. Они просто появились в разделе аудио-устройств. Аналогично с BT аудио удлинителем.

p.s. Только сейчас понял... Тут же наоборот.

p.p.s. Попробовал со смартфона на ПК, тоже работает.

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

Chromecast Audio, например. Ну или раскидывать всюду Raspberry с софтом.

Chromecast не стоит своих денег, он глючноват и плохо сказывается на качестве звука. А малинка для такой задачи - лютый оверкилл.

Chromecast уже встроен почти во все колонки с поддержкой Гугл Ассистента, и он поддерживает 24 бита/96кГц. Для потоковой музыки вообще окей, даже для Тайдал, да и большинство флаков не выходят из этого битрейта.

блютуз здесь решение сомнительное
Но почему?

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

В 5 версии есть long range. Правда, BLE audio не факт, что может поверх работать, че-то я забыл… В общем, да, на больших помещениях сложной формы действительно будут проблемы. Но если решать конкретную задачу а не общую, то не так страшно. Или антенну можно получше в стационарную колонку воткнуть.

В 5 версии есть long range.

Вроде Linux не поддерживает 5 версию.

Разве не достаточно чтобы прошивка модуля поддерживала?

Система же должна знать как правильно управлять модулем.

Зависит от уровня управления, кмк.

Без системы никак работать не будет. Тот же режим long range надо включить. Возможно есть какие то сторонние драйвера я не в курсе...

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

Насколько помню... Прошивку загружает Linux.

Наверное, от модуля и схемы взаимодействия с ним зависит, не?)

Про автономные модули я ничего не слышал.

Long Range = Low throughput
125 Кбит/с максимум

На 500 тоже поддерживается.

давно чешутся руки сделать следующее:

В голове упорно крутится аббревиатура DLNA. Наверняка где-то в его многочисленных стандартах оно предусмотрено. И, разумеется, нигде не реализовано. Потому что тот же Гугла, как я понимаю, сознательно забил на него, выпуская хромкаст и его потомков.

Попрообуйте в качестве клиента (колонки) проект KaRadio или подобное.

Эх классические ошибка

sudo echo "load-module module-bluetooth-policy" >> /etc/pulse/system.pa
sudo echo "load-module module-bluetooth-discover" >> /etc/pulse/system.pa

Это не работает. Равно как и sudo cd

Вот как шелл обрабатывает $command > $file:

  1. Через fork запускает копию собственного процесса

  2. Копия шелла открывается вместо stdin / stderr / stdout файлы, на которые сделано перенаправление

  3. ... а потом через exec запускает вместо себя $command

Если шелл запущен от имени пользователя, у которого нет прав на запись в $file, то процесс сломается на этапе №2. До запуска sudo echo даже не дойдёт. Вот как правильно:

echo "load-module module-bluetooth-policy" | sudo tee -a /etc/pulse/system.pa
echo "load-module module-bluetooth-discover" | sudo tee -a /etc/pulse/system.pa

Аналогично sudo cd -- бессмысленная конструкция

На Убунте 20 это из коробки работало. Надо будет на Федоре попробовать

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории