Всех бесит куча пультов?
Меня тоже. У меня на столике у дивана собрались пульты: от телевизора (вкл/выкл), от твбокса(mibox), от колонок 5.1 (вкл/выкл, громкость), планшет для LMS (Squeeze Ctrl). Цель: с одного пульта управлять твбоксом и возможность управлять музыкой (плэй/пауза, громкость, избранные потоки). Вот оно решение - G7V.
Eсли с телеком и колонками все просто - обычные програмируемые ик кнопки, то вот с LMS не все так однозначно... берем ButtonMapper и на кнопки пульта назначаем ярлыки Tasker. Ну тут тоже все просто создаем задачи: play/pause, vol+, vol- и 9 избранных потоков для кнопок 1-9. Всё. Можно пользоваться.
Но... Хочется большего, мало управлять одной парой колонок, в LMS же мультирум. У меня колонки (5) стоят в гостинной, в спальне, на веранде, в душе и на улице переносная. Надо сделать задачи включающие пресеты громкости переключаемые зажатием на пульте кнопок громкости (все тихо, все громко). И так как эти прeсеты хочется включать как с пульта так и с планшета и с телефонов, надо чтобы переменные громкостей всех колонок и всех пресетов были одинаковы! и чтобы избранное было тоже на всех устройствах одинаковое!
Синхронизация!
Короче, все настройки пишем в локальный файл и отправляем его в Gdrive, на другом устройстве скачиваем файл с Gdrive и читаем из него настройки.
Для управления Избранным пришлось позаморачиваться с парсингом файлов плейлистов m3u и pls.
Для того чтобы видеть отклик LMS добавляем запросы на получение информации от сервера, от него можно получить многое: громкости плееров, адреса, что играет, что синхронизировано и т.д.
например узнать громкость:
{"id": 1, "method": "slim.request",
"params":["%PLAYER", ["mixer", "volume", "?"]]}
ответ такой:
{"params":["2e:c5:a3:c9:da:f2",["mixer","volume","?"]],"id":1,"result":{"_volume":"20"},"method":"slim.request"}
На планшете мы получаем много быстрых функций! Так ведь на планшете есть прога SqueezeCtrl, зачем чтото еще??? Надо. Кроме кучи пультов я также не люблю лазить за функциями внутрь приложений.
Я хочу прямо на главном экране кнопки избранных потоков, пресеты громкости, кнопки синхронизации, выбор плеера, плэйлисты.
В SqueezeCtrl синхронизация плееров работает так, что при рассинхронизации плееров остается играть только один, да еще для этого надо лезть далеко внутрь приложения. Я сделал просто две кнопки. И после рассинхронизации все плееры продолжат играть.
Еще очень удобная функция SqueezeCtrl это управление громкостью выбранного плеера кнопками планшета даже с выключеным экраном. Но для выбора плеера надо войти в приложение... короч долго, странно что нельзя это сделать в виджете. Но можно сделать кнопку Players для выбора плеера в приложении через intent.
Вот такие кнопочки получились на главном экране
Есть еще не доработанные идеи: ограничение громкости ночью и блокировка некоторых плееров, будильник с плавным увеличением громкости, блютуз пульт для колонки в душе.
https://taskernet.com/shares/?user=AS35m8kJKYp5977YUIkcjNHTVyukgPWCIFiiEwuSPsUglqHm3bv6bL9D5mme1LtPP5KjRMog1V%2BP&id=Project%3ASqueeze
#logitech media server
#мультирум
#squeezebox
#multiroom