Bluetooth стерео аудио с XMMS
Bluetooth стерео аудио с XMMS
Данная инструкция по получению Bluetooth стерео аудио на плеере XMMS предполагает знакомство с командной строкой и редактором vi. Пользователи сами несут ответственность за качество своей работы. Хотя известны случаи, когда наушники Bluetooth работают на устройстве N800, это не значит, что так происходит во всех случаях. Никогда не стоит недооценивать способность заинтересованного лица превзойти самого себя. На сегодняшний момент данное руководство применимо только к устройству n800, так как у устройства 770 нет достаточно oompf для плеера XMMS. Тем не менее, часть предложенной ниже информации можно использовать для любого медиа плеера на основе mplayer (подобно kagu) или самого mplayer, хотя это не проверено.
Получение программного обеспечения
Получите плеер XMMS здесь
Обнаружится, что для плеера XMMS потребуется клавиатура другого типа (она не поддерживается Hildon). Данная клавиатура предлагается в репозитории debfarm под названием xvkbd. Получите XMMS и любые дополнения по желанию (подобно infinity) и продолжайте. Обратите внимание: В силу особенностей работы плавного перехода между элементами нельзя использовать его одновременно с подключаемой программой Alsa, поэтому для наушников Bluetooth плавного перехода между элементами нет.
Настройка Bluetooth
Первым шагом является, конечно же, настройка наушников надлежащим образом. Следуйте инструкциям к конкретному виду наушников и соедините n8XX с наушниками. Не пытайтесь идти далее, пока не выполнен этот шаг. Теперь начинается самое интересное.
Зайдите сюда и следуйте инструкциям в первом сообщении для активации a2dp. Все эти действия можно выполнить и вручную, но данное сообщение, как кажется, значительно все облегчает.
Следующий шаг включает в себя две дополнительных правки в файле. Как оказалось, эти правки улучшают или, скорее, уменьшают количество выпадений сигнала. Это особенно актуально в среде, где много Bluetooth сигналов (например, в офисном помещении). Используя редактор vi, откройте файл /etc/bluetooth/hcid.conf
- vi /etc/hcid.conf
и найдите данный раздел:
# Default link mode # none - no specific policy # accept - always accept incoming connections # master - become master on incoming connections, # deny role switch on outgoing connections lm accept;
Измените последнюю строку на:
lm accept,master;
Обратите внимание, что запятая используется без пробела и до, и после нее. Это важно, так как список разделяется при помощи запятой, а не пробела. Данная команда сообщает устройству, что оно может быть ведущим устройством и контролировать соединение. Как кажется, она уменьшает тенденцию Bluetooth-устройств подвергаться влиянию более сильного сигнала другого устройства (например, когда кто-то подходит пообщаться с Bluetooth-телефоном в кармане).
Теперь необходимо найти данный раздел, который должен сразу следовать за предыдущим:
# Default link policy # none - no specific policy # rswitch - allow role switch # hold - allow hold mode # sniff - allow sniff mode # park - allow park mode lp rswitch,hold,sniff,park;
Отредактируйте его и удалите слова rswitch и sniff. Теперь последняя строка выглядит следующим образом:
lp hold,park;
Команда rswitch предназначена для устройства, которое может переключать роли между протоколом наушников низкого качества и протоколом a2dp более высокого качества. В наших интересах придерживаться высокого качества. Команда sniff позволяет устройству осуществлять поиск других устройств, не прерывая соединения. Это не рекомендуется в среде, где много Bluetooth сигналов.
Перезагрузите устройство, чтобы все изменения Bluetooth вступили в действие. Похоже, что простая перезагрузка сервиса не сработает и не все изменения вступают в силу, поэтому перезагрузка должна быть выполнена в стиле Windows.
На этой стадии должны быть готовы наушники Bluetooth, которые совместимы с данным устройством. Если инсталлирован mplayer, то в вышеуказанных инструкциях по инсталляции a2dp дан способ, как отдельные произведения в формате mp3 можно воспроизводить из командной строки при помощи mplayer.
Настройка плеера XMMS
Самое сложное позади. Теперь необходимо, чтобы плеер XMMS начал воспроизводить музыку. Включите наушники и подсоедините их к устройству. После редактирования config в плеере XMMS может произойти блокировка, если он не сможет обнаружить устройство Bluetooth.
Откройте плеер XMMS. Кликните, чтобы открыть меню (верхний левый угол основного “окна” XMMS), прокрутите вниз до Опции => Привилегии. В открывшемся окне выберите первую вкладку Подключаемые программы ввода-вывода аудио. Кликните на длинную полоску/кнопку внизу экрана и выберите Подключаемая программа вывода данных Alsa 1.2.10 (libALSA.so). После этого кнопка Сконфигурировать станет активной, кликните на ней. Откроется новое окно. Здесь понадобится клавиатура xvkbd, о которой говорилось выше.
Используя инсталлированную ранее клавиатуру xvkbd, кликните на небольшое окно "По умолчанию" (default) и введите слово Bluetooth. (Если клавиатура xvkbd не инсталлирована, просмотрите следующие несколько шагов, пока не увидите альтернативное решение).
Непосредственно под данным окном находится раздел Микшер. В данном разделе кликните на поле Использовать регулировку громкости при помощи программного обеспечения. Теперь закройте все окна, нажав на кнопки OK. Если клавиатура xvkbd не была инсталлирована, закройте плеер XMMS, в противном случае пропустите следующий шаг.
В случае, если клавиатура xvkbd не использовалась, после закрытия плеера XMMS откройте файл .xmms/config, найдите раздел ALSA и измените строку
pcm_device=default
на
pcm_device=bluetooth
Обратите внимание: Сообщается, что иногда требуется несколько повторных редактирований, так как плеер XMMS изменяет настройки обратно. Речь идет о компьютере и может случиться все, что угодно. О том, что это произошло, станет известно, когда звук станет поступать из устройства, а не из наушников.
Заключительная настройка:
Какова бы ни была причина, кажется, что хотя для Bluetooth стерео и необходимы все ресурсы центрального процессора, которые оно может получить, оно все-таки не в состоянии отменять функции экономии энергии в устройстве. Следующее действие отменит их и остановит "провалы" звука.
Был создан небольшой сценарий командного процессора, который приводится ниже. Откройте редактор vi и скопируйте и вставьте его или введите вручную. Это гораздо легче, чем печатать его заново при каждой необходимости. Пусть сценарий был назван Blues:
- vi blues
#!/bin/sh # CPU power mode changer linuxrebel 2008 # Ask what we are to do echo "bluetooth use state: 1 on; 2 off" read ans # take action based on that request if [ $ans -eq "1" ]; then # go into a mode where the cpu is always at full speed echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor elif [ $ans -eq "2" ]; then # Go into the normal demand driven mode echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor else # in case you typed wrong you won't think something happened that didn't echo "Try again hombre $ans is not an option" fi
Затем сохраните сценарий, установите для него режим 755 (chmod 755) и выполните через sudo. Выберите 1, загрузите плеер XMMS и можете часами наслаждаться музыкой без "провалов".
Сообщение:
По окончании просто перезапустите Blues и выберите 2, что вернет устройство в нормальный режим по требованию и обеспечит экономичный режим питания самого высокого уровня.