субота, 12 січня 2013 р.

IPTV, VLC та LIRC: обійдемось без закладок

У вересні минулого року я відмовився від послуг компанії "Воля" з політичних міркувань через хамське відношення до користувачів.
Потрібні мені канали (2-3, не більше) я дивився через браузер, перегони Формули-1 - за допомогою Sopcast, а ігри "Динамо" :) по телевізору (аналогове ТВ у Києві ще існує, а антена на даху нашої багатоповерхівки ще працює).
Втім, повного феншую не було - надто багато маніпуляцій пультами, мишами, клавіатурою та таке інше. При тому, що давно налаштований вивід відео на телевізор Thomson, цифрове аудіо на AV-ресівер SONY,  а керування XBMC здійснюється з пульту дистанційного керування того ж SONY за посередництва LIRC-а.
Отож, IPTV - вирішив я.
На моє щастя (як згодом виявилось), "Укртелеком" цю послугу надає не ліпше, ніж "Воля" свої - потрібних каналів немає, ті що були зникають без попередження, та і швидкості мого пакету явно не вистачало. Але дуже вчасно у моїй поштовій скринці стали з'являтись рекламні листівки "Домонету". За ті ж 50 гривень обіцяли 10 Мb/с ("Укртелеком" - 4  Мb/с) та IPTV - більше 100 каналів. Як виявилось, не брехали, підключили за кілька днів, після чого я зрозумів, що інтернету у мене раніше не було. (До речі, процедура відключення від "Укртелекому" - це насолода для справжнього совка - треба з'явитись особисто, написати заяву, пояснити причину відмови...)
Роутер довелось міняти, бо мій старенький TP-Link не вмів авторизуватись згідно протоколу 802.1х. Отже, на заміну придбав Asus RT-G32 - і почалось налаштування VLC. Плейлист від "Домонет" має вигляд  playlist.xspf. Не знаю, що це таке, і як його їсти редагувати, тому відкрив у VLC - і зберіг як звичний m3u: domonet.m3u. Розуму вистачило одразу створити для нього теку "tv".
Каналів виявилось більше сотні, правда після редагування ( не цікавлюсь мультиками, йогою та білоруським телебаченням) у Mousepad, лишилось близько дев'яноста.
#EXTM3U
#EXTNAME:Domonet

#EXTINF:1,1+1
#EXTTV:;;
udp://@239.99.0.3:5004

#EXTINF:2,Перший
#EXTTV:;;
udp://@239.99.2.1:5004

#EXTINF:3,2+2
#EXTTV:;;
udp://@239.100.0.3:5004
....  
Прилаштувати пульт дистанційного керування, маючи досвід налаштування XBMC, було справою техніки.  У .lircrc з'явилась секція
...
begin

remote = SONY_RM-AAU013
prog = irexec
button = KEY_1
repeat = 0
config = DISPLAY=:0.1 vlc -f --control lirc /home/viktor/tv/domonet.m3u 
end
...

Цим скриптом (переробленим із скрипту для запуску XBMC) після натискання кнопки "1" на пульті SONY RM-AAU013 (така у нього назва у  lircd.conf) вмикається  VLC у повноекранному режимі на другому дисплеї (у моєму випадку - на телевізорі), одночасно відкриваючи плейлист domonet.m3u (XBMC відкривається натисканням кнопки DVD).
Перемикання каналів здійснюється клавішами FORWARD і BACK:
...

begin
remote = SONY_RM-AAU013
prog = vlc
button = KEY_FORWARD
repeat = 0
config = key-next
end

begin
remote = SONY_RM-AAU013
prog = vlc
button = KEY_BACK
repeat = 0
config = key-prev
end
...

а вимикання VLC - кнопкою 0:
...begin

remote = SONY_RM-AAU013
prog = vlc
button = KEY_0
repeat = 0
config = key-quit
end
...
І все було чудово - крім необхідності перебирати канал за каналом на шляху від TVI до Viasat Histort чи Eurosport. (Виявилось, що мені цікаві не два-три канали, а півтора десятка :)). Справа у тому, що VLC не дає можливості викликати пультом список відтворення (з клавіатури це робиться натискуванням Ctrl-L) або робити закладки. Закладки у VLC взагалі не працюють - факт, визнаний розробниками. :(
Що ж, вирішив різати по живому. У теці "tv" з'явились кілька плейлистів - Ukraine, News, Science, Sport, Kino, Music і так далі. У кожному списку відтворення лишились відповідні канали - де п'ять, а де п'ятнадцять. А .lircrc поповнився відповідними скриптами:
...

begin
remote = SONY_RM-AAU013
prog = irexec
button = KEY_9
repeat = 0
config = DISPLAY=:0.1 vlc -f --control lirc /home/viktor/tv/kino.m3u  
end

begin
remote = SONY_RM-AAU013
prog = irexec
button = KEY_8
repeat = 0
config = DISPLAY=:0.1 vlc -f --control lirc /home/viktor/tv/ukraine.m3u  
end

begin
remote = SONY_RM-AAU013
prog = irexec
button = KEY_7
repeat = 0
config = DISPLAY=:0.1 vlc -f --control lirc /home/viktor/tv/science.m3u  
end
...
Отже, вирішивши подивитись кіно - натискаю кнопку "9" і перебираю по колу від FOX-CRIME до РУССКОГО ИЛЛЮЗИОНА. Переконавшись, що кіна сьогодні знову не буде, натискую "0" (VLC вимикається), потім "7" (VLC вмикається, завантажуючи плейлист з Discovery та National Geografic). Час перемикання не більший, ніж натискування двох кнопок пульту ТВ-тюнера від "Волі".
І задля досягнення повного феншую, аби пізно ввечері не підніматись для вимикання комп'ютеру:
...

begin
remote = SONY_RM-AAU013
prog = irexec
button = KEY_SETUP
config = shutdown -h now
repeat = 0
end
...

надавши відповідні права всім користувачам.

P.S. Висловлюю подяку:
1. Моїй дружині, яка звикла до ІЧ пультів дистанційного керування і побоюється комп'ютерної техніки.
2. Компанії "Домонет" за гуманні тарифи, якість послуг та людяне відношення до користувачів.
3. Лінусу Торвальдсу за Linux і всьому співтовариству розробників вільного програмного забезпечення за вільне програмне забезпечення.
4. Компанії GOOGLE - за гугл.

Немає коментарів:

Дописати коментар