Журнал LinuxFormat - перейти на главную

LXF169:Raspberry Pi: Ме­диа

Материал из Linuxformat
(Различия между версиями)
Перейти к: навигация, поиск
(Новая страница: «Категория: Учебники == Raspberry Pi: ТВ-по­ток == '''''Raspberry Pi. При­ме­ни­те свой Pi для по­то­ко­в…»)
 
(Raspberry Pi: ТВ-по­ток)
 
Строка 8: Строка 8:
  
 
Под­хо­дя­щее обо­ру­до­вание – клю­че­вые сло­ва в пре­ды­ду­щем аб­за­це, так как без­бо­лезнен­ность уста­нов­ки в основ­ном за­ви­сит от то­го, бу­дут ли уст­рой­ст­ва, пред­на­зна­чен­ные для за­пи­си те­ле­ви­зи­он­но­го сиг­на­ла, «про­сто ра­бо­тать». К сча­стью, в Linux под­держ­ка боль­шин­ст­ва та­ких уст­ройств уже вклю­че­на в яд­ро, по­это­му мно­гие уст­рой­ст­ва бу­дут ра­бо­тать без до­полнитель­ных дей­ст­вий. И хо­тя все на­чи­на­ет­ся в команд­ной стро­ке, мы раз­би­ли ру­ко­во­дство на 10 ша­гов, что­бы ему бы­ло про­ще сле­до­вать. В кон­це у вас по­лу­чит­ся пол­но­цен­ная плат­фор­ма для за­пи­си циф­ро­во­го ТВ, с воз­мож­но­стью за­пи­си несколь­ких про­грамм из несколь­ких ис­точников – и все на скром­ном Raspberry Pi! Это пре­крас­ная «сер­вер­ная часть» для толь­ко что вы­пу­щен­но­го медиа-проигрывателя XBMC, ко­то­рым вы смо­же­те восполь­зо­вать­ся в ка­че­­ст­ве кли­ен­та на лю­бом из ком­пь­ю­те­ров се­ти.
 
Под­хо­дя­щее обо­ру­до­вание – клю­че­вые сло­ва в пре­ды­ду­щем аб­за­це, так как без­бо­лезнен­ность уста­нов­ки в основ­ном за­ви­сит от то­го, бу­дут ли уст­рой­ст­ва, пред­на­зна­чен­ные для за­пи­си те­ле­ви­зи­он­но­го сиг­на­ла, «про­сто ра­бо­тать». К сча­стью, в Linux под­держ­ка боль­шин­ст­ва та­ких уст­ройств уже вклю­че­на в яд­ро, по­это­му мно­гие уст­рой­ст­ва бу­дут ра­бо­тать без до­полнитель­ных дей­ст­вий. И хо­тя все на­чи­на­ет­ся в команд­ной стро­ке, мы раз­би­ли ру­ко­во­дство на 10 ша­гов, что­бы ему бы­ло про­ще сле­до­вать. В кон­це у вас по­лу­чит­ся пол­но­цен­ная плат­фор­ма для за­пи­си циф­ро­во­го ТВ, с воз­мож­но­стью за­пи­си несколь­ких про­грамм из несколь­ких ис­точников – и все на скром­ном Raspberry Pi! Это пре­крас­ная «сер­вер­ная часть» для толь­ко что вы­пу­щен­но­го медиа-проигрывателя XBMC, ко­то­рым вы смо­же­те восполь­зо­вать­ся в ка­че­­ст­ве кли­ен­та на лю­бом из ком­пь­ю­те­ров се­ти.
 +
 +
===Шаг за ша­гом===
 +
====1 На­ши уст­рой­ст­ва====
 +
 +
Мы про­тес­ти­ро­ва­ли и на­строи­ли два USB-ре­си­ве­ра: один для прие­ма на­зем­но­го циф­ро­во­го те­ле­ви­дения че­рез ан­тен­ну, а вто­рой – для по­лу­чения дан­ных со спутника. Ин­ст­рук­ции при­во­дят­ся и для то­го, и для дру­го­го. Для прие­ма сиг­на­ла DVB-T (на­зем­но­го) мы восполь­зо­ва­лись Sundtek MediaTV Pro, для DVB-S (спутнико­во­го) – Sundtek SkyTV Ultimate. Для по­следнего ну­жен блок пи­тания 12 В, ко­то­рый так­же нуж­но под­клю­чить. Но вот са­мое важ­ное тре­бо­вание: эти USB-уст­рой­ст­ва долж­ны быть под­клю­че­ны к Raspberry Pi че­рез USB-хаб с внешним пи­танием. Мы по­тра­ти­ли два дня в по­пыт­ках на­стро­ить сис­те­му – сна­ча­ла без ха­ба, по­том с несо­вмес­ти­мым ха­бом. В обо­их слу­ча­ях ка­за­лось, что все ра­бо­та­ет, но при сканиро­вании не на­хо­ди­лось ни од­но­го ка­на­ла. Хаб с внешним пи­танием, со­вмес­ти­мый с Raspberry Pi, ре­шил про­бле­му, так что это очень важ­но. Под­клю­чи­те к ха­бу ис­точник пи­тания, за­тем USB-ре­си­вер, а по­том под­клю­чи­те хаб к Pi. И не за­будь­те под­клю­чить ка­бель от ан­тен­ны или спутнико­вой та­рел­ки к ре­си­ве­ру.
 +
 +
====2 Внешнее хранили­ще====
 +
 +
Мы пред­по­ла­га­ем, что на Raspberry Pi есть на­стро­ен­ный и об­нов­лен­ный ди­ст­ри­бу­тив Raspbian. Мы так­же пред­по­ла­га­ем, что Pi под­клю­чен к Ин­тернету, и что вы на­би­рае­те ко­ман­ды на­пря­мую в кон­со­ли или че­рез SSH. Те­перь о том, где хранить за­пи­си. Ре­ко­мен­ду­ем под­клю­чить внешний USB-диск, так как по­сто­ян­ное чтение и запись на SD-кар­ту чре­ва­то ее бы­ст­рым вы­хо­дом из строя. Что­бы до­ба­вить внешний же­ст­кий диск, про­сто под­клю­чи­те его к сво­бод­но­му пор­ту USB и про­верь­те со­об­щения в сис­тем­ном лог-фай­ле, на­брав tail /var/log/messages. Вы уви­ди­те со­об­щение вро­де usb 1-1.3.4.2: New USB device, и нуж­но об­ра­тить внимание на иден­ти­фи­ка­тор уст­рой­ст­ва, ко­то­рый дол­жен вы­гля­деть при­мер­но так: sda: sda1, где sda – са­мо уст­рой­ст­во, а sda1 – раз­дел. На­бе­ри­те sudo mkdir/mnt/storage, что­бы соз­дать точ­ку мон­ти­ро­вания, и sudo mount /dev/sda1 /mnt/storage/, что­бы свя­зать ее с внешним же­ст­ким дис­ком.
 +
 +
====3 Ус­та­нов­ка драй­ве­ров====
 +
 +
В за­ви­си­мо­сти от ис­поль­зуе­мо­го обо­ру­до­вания, этот шаг мо­жет быть необя­за­тель­ным. Ес­ли вы вы­бра­ли уст­рой­ст­во, ко­то­рое со­вмес­ти­мо с Linux и не тре­бу­ет до­полнитель­ных фай­лов драй­ве­ров, мож­но про­сто под­клю­чить уст­рой­ст­во и пе­рей­ти к сле­дую­ще­му ша­гу. Для на­ших уст­ройств Sundtek драй­вер нуж­но за­гру­зить и уста­но­вить. Это легко. В команд­ной стро­ке Raspberry Pi на­бе­ри­те
 +
 +
wget http://www.sundtek.de/media/sundtek_netinst.sh
 +
 +
chmod 777 sundtek_netinst.sh
 +
 +
sudo ./sundtek_netinst.sh
 +
 +
По­след­няя стро­ка за­пустит скрипт, ко­то­рый мы за­гру­жа­ем в пер­вой стро­ке. Он оп­ре­де­лит вер­сию сис­те­мы и за­гру­зит по­след­нюю вер­сию драй­ве­ров. Драй­ве­ры оста­нут­ся за­пу­щен­ны­ми и на­стро­ен­ны­ми на за­пуск при за­груз­ке сис­те­мы. Поль­зо­ва­те­лям DVB-T так­же нуж­но вы­полнить сле­дую­щую ко­ман­ду:
 +
 +
/opt/bin/mediaclient --setdtvmode=DVBT
 +
 +
Она га­ран­ти­ру­ет, что уст­рой­ст­во на­строе­но на при­ем на­зем­но­го сиг­на­ла, а не сиг­на­ла от ка­бель­но­го ис­точника, поскольку уст­рой­ст­во уме­ет де­лать и такое.
 +
 +
====4 Ус­та­нов­ка Tvheadend====
 +
 +
Про­грам­ма, ко­то­рой мы бу­дем поль­зо­вать­ся для за­пи­си и по­то­ко­во­го воспро­из­ве­дения те­ле­ви­зи­он­но­го сиг­на­ла, на­зы­ва­ет­ся Tvheadend. С по­мо­щью модуля расширения для недав­но вы­шед­ше­го XBMC мож­но пре­вра­тить этот пре­восход­ный ме­диа-про­иг­ры­ва­тель в пол­но­цен­ный циф­ро­вой ви­део­магнито­фон, а Tvheadend бу­дет де­лать всю труд­ную ра­бо­ту в фо­но­вом ре­жи­ме на Raspberry Pi. Так как Tvheadend ак­тив­но раз­ра­ба­ты­ва­ет­ся, мы восполь­зо­ва­лись неста­биль­ной вер­си­ей, но ес­ли вы хо­ти­те про­пустить этот шаг, мож­но так же лег­ко восполь­зо­вать­ся ди­ст­ри­бу­ти­вом OpenElec вме­сто Raspbian. К сча­стью, сбор­ка про­грам­мы про­ста. Сна­ча­ла уста­но­ви­те ути­ли­ты для раз­ра­бот­ки и DVB:
 +
 +
sudo apt-get update
 +
 +
sudo apt-get install unzip libcurl4-openssl-dev pkg-config git build-essential dvb-apps gcc-4.7
 +
 +
По­сле это­го за­гру­зи­те по­след­нюю вер­сию Tvheadend из ре­по­зи­то­рия раз­ра­бот­чи­ков че­рез git, и для ее сбор­ки восполь­зуй­тесь трои­цей ./configure, make и sudo make install:
 +
 +
CC=gcc-4.7; ./configure; make; sudo make install
 +
 +
====5 На­строй­ка Tvheadend====
 +
 +
Поль­зо­ва­тель­ский ин­тер­фейс Tvheadend досту­пен че­рез web-брау­зер, но сна­ча­ла его нуж­но за­пустить. Так как мы осуществляем за­пуск в пер­вый раз, сде­ла­ем это в ре­жи­ме на­строй­ки, и за­пустим его как де­мон, то есть он станет фо­но­вым про­цес­сом. Что­бы это сде­лать, на­бе­ри­те
 +
 +
tvheadend -C -d
 +
 +
Те­перь от­крой­те брау­зер, же­ла­тель­но на дру­гом ком­пь­ю­те­ре се­ти, и вве­ди­те http://ip_of_rpi:9981/extjs.html. IP-ад­рес Raspberry Pi мож­но уз­нать, на­брав ifconfig и по­смот­рев на зна­чение по­ля ‘inet addr’ уст­рой­ст­ва ‘eth0’. Брау­зер за­гру­зит кли­ент по умол­чанию для Tvheadend. В нем вы, на­конец, уви­ди­те дан­ные всех про­грамм, а так­же на­строй­ки и про­смот­ра за­пи­сей. Нам нуж­но ска­зать кли­ен­ту, как поль­зо­вать­ся те­ле­ви­зи­он­ным обо­ру­до­ванием, ко­то­рое мы под­клю­чи­ли. Для это­го вы­бе­ри­те Configuration > TV Adaptors [На­строй­ка > ТВ-Адап­те­ры] и вы­бе­ри­те свое уст­рой­ст­во из вы­па­даю­ще­го спи­ска сле­ва. Сле­дую­щие ша­ги бу­дут за­ви­сеть от то­го, на­зем­ный или спутнико­вый сиг­нал вы принимае­те, поэтому мы их раз­де­лим. Для спутнико­во­го сиг­на­ла пе­ре­хо­ди­те к сле­дую­ще­му ша­гу, для на­зем­но­го – к ша­гу 7.
 +
 +
====6 На­строй­ка прие­ма спутнико­во­го сиг­на­ла====
 +
 +
При­ем спутнико­во­го сиг­на­ла на­стро­ить про­ще все­го. Ес­ли адап­тер вы­бран, то на странице General [Об­щее] появится об­зор кон­фи­гу­ра­ции. По­ставь­те га­лоч­ку Enable [Вклю­чить] и на­жми­те Save [Со­хранить]. Мы так­же до­ба­вим ин­фор­ма­цию о ка­на­лах, для че­го вводит­ся ин­фор­ма­ция по по­ис­ку спутника и муль­ти­п­лек­сам, ко­то­рые он пре­достав­ля­ет, за­тем на этих муль­ти­п­лек­сах про­из­во­дит­ся по­иск ка­на­лов, доступных для приема. Tvheadend со­бе­рет дан­ные о спутнике по его ме­сто­по­ло­жению, по­это­му доста­точ­но на­жать кноп­ку Add DVB Network by location [До­ба­вить сеть DVB по ме­сто­по­ло­жению] сле­ва. Тогда от­кро­ет­ся ок­но с гло­баль­ным спи­ском спутников. Для Ве­ли­ко­бри­тании и Се­вер­ной Ев­ро­пы луч­ший ва­ри­ант – Astra_28_2E. По­сле вы­бо­ра спутника Tvheadend до­ба­вит спи­сок муль­ти­п­лек­сов для это­го спутника на вклад­ку Multiplexes [Муль­ти­п­лек­сы]. Они бу­дут про­сканиро­ва­ны на имею­щие­ся ка­на­лы, и ход сканиро­вания бу­дет досту­пен в раз­де­ле Capabilities [Ре­сур­сы] на странице General [Об­щее] спра­ва. Ес­ли все ра­бо­та­ет, вы уви­ди­те об­на­ру­жен­ные сер­ви­сы (ка­на­лы) на вклад­ке Services [Сер­ви­сы]. Для Astra_28_2E мы об­на­ру­жи­ли 970 сер­ви­сов из 98 муль­ти­п­лек­сов. Ес­ли вы не хо­ти­те на­стро­ить сис­те­му так­же и для прие­ма на­зем­но­го сиг­на­ла, пе­рей­ди­те к ша­гу 8.
 +
 +
====7 На­строй­ка прие­ма на­зем­но­го сиг­на­ла====
 +
 +
Сна­ча­ла ак­ти­ви­руй­те при­емник на глав­ной странице. Tvheadend со­дер­жит об­шир­ную ба­зу дан­ных на­стро­ен­ных пе­ре­дат­чи­ков с под­роб­ной ин­фор­ма­ци­ей о ка­ж­дом муль­ти­п­лек­се. Вам нуж­но бу­дет уз­нать, на ка­кой пе­ре­дат­чик у­ка­зы­ва­ет ва­ша ан­тен­на. В Ве­ли­ко­бри­тании это удобнее все­го сде­лать на сай­те www.digitaluk.co.uk/postcodechecker. Когда уз­нае­те, про­сто на­жми­те кноп­ку Add DVB Network [До­ба­вить сеть DVB] на вклад­ке General [Об­щее] адап­те­ра и най­ди­те пе­ре­дат­чик «По рас­по­ло­жению [By location]». На­ше­го ме­ст­но­го пе­ре­дат­чи­ка в спи­ске не ока­за­лось. При­шлось зай­ти на www.ukfree.tv/transmitters.php, вве­сти ин­декс и до­ба­вить ин­фор­ма­цию о ка­ж­дом муль­ти­п­лек­се вруч­ную. Это мож­но сде­лать на вклад­ке Multiplexes [Муль­ти­п­лек­сы] адап­те­ра с по­мо­щью кноп­ки Add mux(es) manually [До­ба­вить муль­ти­п­лекс(ы) вруч­ную]. В поя­вив­шем­ся окне нуж­но вве­сти час­то­ту [frequency], час­тот­ную по­ло­су [bandwidth] и груп­пу [constellation] для ка­ж­до­го муль­ти­п­лек­са, а все осталь­ное уста­но­вить в Auto [Ав­то­ма­ти­че­­ски]. Эти дан­ные мож­но по­лу­чить на сай­те. Обыч­но это нуж­но де­лать для трех или че­ты­рех муль­ти­п­лек­сов, в за­ви­си­мо­сти от ва­ше­го ме­сто­по­ло­жения. Tvheadend про­сканиру­ет их на сер­ви­сы/ка­на­лы и до­ба­вит в ва­шу кон­фи­гу­ра­цию.
 +
 +
====8 До­бав­ление ка­на­лов====
 +
 +
Те­перь у нас есть боль­шой спи­сок сер­ви­сов, по­лу­чен­ный из муль­ти­п­лек­сов. Сле­дую­щий шаг – раз­ре­шить Tvheadend по­лу­чить из этих сер­ви­сов ка­на­лы; де­лается это на вклад­ке General [Об­щее] адап­те­ра на­жатием кноп­ки Map DVB Services To Channels [Свя­зать сер­ви­сы DVB с ка­на­ла­ми]. По­сле это­го у вас дол­жен по­лу­чить­ся спи­сок ка­на­лов для про­смот­ра на странице Channels [Ка­на­лы] вне ок­на на­строй­ки адап­те­ра. Ка­та­лог раз­ме­щения за­пи­сей по умол­чанию нуж­но из­менить – ве­ро­ят­но, на точ­ку мон­ти­ро­вания, ко­то­рую мы соз­да­ли в на­ча­ле. Для это­го зай­ди­те на страницу Digital Video Recorder [Циф­ро­вой ви­део­магнито­фон] и из­мените путь Recording System [Сис­те­ма за­пи­си]. Что­бы из­менения всту­пи­ли в си­лу, нуж­но со­хранить на­строй­ки на этой странице. Так­же нуж­но на­стро­ить элек­трон­ный те­ле­гид. Обыч­но у ка­ж­до­го ка­на­ла есть минимум в ви­де What’s On Now [Сей­час в эфи­ре] и What’s On Next [Да­лее в эфи­ре], но сер­ви­сы вро­де Freeview и Freesat в Ве­ли­ко­бри­тании предоставят бо­лее пол­ную те­ле­про­грам­му на семь дней. Что­бы ак­ти­ви­ро­вать эти сер­ви­сы, зай­ди­те на страницу EPG Grabber [Сер­вис элек­трон­но­го те­ле­ги­да], за­тем щелкните на лю­бом из сер­ви­сов в раз­де­ле Over-The-Air-Grabbers [Эфир­ные сер­ви­сы]. По­сле это­го не за­будь­те со­хранить кон­фи­гу­ра­цию, на­жав Save Configuration.
 +
 +
====9 Запись про­грам­мы====
 +
 +
Вско­ре на странице Electronic Program Guide [Элек­трон­ный те­ле­гид] поя­вят­ся эфи­ры – их мож­но по­смот­реть или до­ба­вить в рас­пи­сание для за­пи­си. Щелчо­к на лю­бой про­грам­ме от­кро­ет ок­но на­стройк­и записи. Д­ругой ва­ри­ант, Autorec [Ав­то­­ма­ти­че­­ская запись], ин­те­ре­снее: вы­пол­ня­ет­ся по­иск по одним и тем же дан­ным про­грамм, что­бы за­пи­сать все эпи­зо­ды, не по­ла­га­ясь на ссыл­ки из те­ле­ги­да.
 +
 +
В за­ви­си­мо­сти от числа ка­на­лов и объ­е­ма дан­ных те­ле­ги­да страница мо­жет сильно разрастись. Что­бы ре­шить эту про­бле­му, мож­но от­фильт­ро­вать ото­бра­жае­мые дан­ные, ис­поль­зуя стро­ку с оп­ция­ми в верху спи­ска. Мож­но ис­кать по фраг­мен­ту за­го­лов­ка или ог­раничиться одним ка­на­лом или тэ­гом фильт­ра. Ес­ли вы на­шли фильтр, ко­то­рый вас устроил, по на­жа­тию кноп­ки Create Autorec [Соз­дать ав­то­ма­ти­че­скую запись] па­ра­мет­ры по­ис­ка бу­дут до­бав­ле­ны в Tvheadend, ко­то­рая за­тем бу­дет за­пи­сы­вать все, что со­от­вет­ст­ву­ет ре­зуль­та­там по­ис­ка. Уда­лить за­планиро­ван­ные за­пи­си можно на вклад­ке Digital Video Recorder [Циф­ро­вой ви­део­магнито­фон]. Пред­стоя­щие за­пи­си уда­ляются с пер­вой страницы, а фильт­ры Autorec – с по­следней. На срединных страницах мож­но воспро­из­ве­сти или уда­лить сде­лан­ные за­пи­си или про­ве­рить, по­че­му про­грам­ма не за­пи­са­лась.
 +
 +
====10 Про­смотр за­пи­сей и эфи­ра====
 +
 +
Ус­та­но­вив пла­гин VLC для брау­зе­ра, мож­но про­смат­ри­вать за­пи­си и эфир­ное ТВ в брау­зе­ре. Мы про­ве­ри­ли это толь­ко в Firefox, но по щелч­ку на эфир­ной про­грам­ме поя­вит­ся воз­мож­ность воспро­из­ве­сти его [Play]. Ес­ли пла­гин VLC не уста­нов­лен, вам пред­ло­жат уста­но­вить его; по­сле уста­нов­ки долж­но поя­вить­ся ок­но с эфи­ром про­грам­мы. Кно­пки в верху это­го ок­на могут пе­ревес­ти в пол­но­эк­ран­ный ре­жим или сде­лать пау­зу в те­ку­щем эфи­ре. Точ­но так же мож­но про­смат­ри­вать за­пи­сан­ные про­грам­мы на странице Digital Video Recorder [Циф­ро­вой ви­део­магнито­фон]. Ес­ли вы не хо­ти­те поль­зо­вать­ся брау­зе­ром, ско­пи­руй­те и вставь­те се­те­вой ад­рес в VLC на дру­гом ком­пь­ю­те­ре или уз­найте в од­ном из ру­ко­водств, как ор­ганизо­вать об­щий доступ к пап­кам с за­пи­ся­ми по се­ти. Но на наш взгляд, Tvheadend удобнее все­го поль­зо­вать­ся с но­вой вер­си­ей XBMC, где есть пла­гин, способный об­щать­ся с Tvheadend на­пря­мую, за­гру­жая те­ле­гид с Raspberry Pi и по­зво­ляя про­смат­ри­вать эфир­ные ка­на­лы, а так­же планиро­вать и про­смат­ри­вать за­пи­си. На­стро­ить его лег­ко – про­сто зай­ди­те на страницу пла­ги­на PVR для XBMC; мы планиру­ем через ме­ся­ц под­роб­но рас­ска­зать об XBMC, и даем вам это как за­дание на до­м! |

Текущая версия на 06:31, 13 ноября 2018

Содержание

[править] Raspberry Pi: ТВ-по­ток

Raspberry Pi. При­ме­ни­те свой Pi для по­то­ко­во­го вос­про­из­ве­де­ния и за­пи­си те­ле­ви­де­ния.

По­сле мно­го­летней бит­вы с MythTV Грэм Мор­ри­сон на­шел луч­шее ре­шение, бла­го­да­ря Tvheadend.

(thumbnail)
Наш эксперт. Ко­гда Грэм Мор­ри­сон не ло­ма­ет го­ло­ву над тем, что ему по­ста­вить в Linux Format, и не во­зит­ся со ста­ры­ми син­те­за­то­ра­ми, он на­вер­ня­ка ищет но­вые спо­со­бы по­вы­ше­ния про­дук­тив­но­сти в KDE 4.

Во мно­гих те­ле­ви­зи­он­ных при­став­ках уже есть Linux. И их неболь­шой вы­чис­ли­тель­ной мощ­но­сти бо­лее чем доста­точ­но для за­пи­си и про­смот­ра несколь­ких ка­на­лов од­но­вре­мен­но, а так­же по­то­ко­во­го воспро­из­ве­дения по локаль­ной се­ти. Raspberry Pi так­же пре­крас­но под­хо­дит для этих це­лей, и с под­хо­дя­щим обо­ру­до­ванием его мож­но пре­вра­тить в мощ­ный и де­ше­вый циф­ро­вой ви­део­магнито­фон, до­полнен­ный функ­ция­ми по­то­ко­во­го воспро­из­ве­дения, рас­пи­саний и сдви­га вре­мени.

Под­хо­дя­щее обо­ру­до­вание – клю­че­вые сло­ва в пре­ды­ду­щем аб­за­це, так как без­бо­лезнен­ность уста­нов­ки в основ­ном за­ви­сит от то­го, бу­дут ли уст­рой­ст­ва, пред­на­зна­чен­ные для за­пи­си те­ле­ви­зи­он­но­го сиг­на­ла, «про­сто ра­бо­тать». К сча­стью, в Linux под­держ­ка боль­шин­ст­ва та­ких уст­ройств уже вклю­че­на в яд­ро, по­это­му мно­гие уст­рой­ст­ва бу­дут ра­бо­тать без до­полнитель­ных дей­ст­вий. И хо­тя все на­чи­на­ет­ся в команд­ной стро­ке, мы раз­би­ли ру­ко­во­дство на 10 ша­гов, что­бы ему бы­ло про­ще сле­до­вать. В кон­це у вас по­лу­чит­ся пол­но­цен­ная плат­фор­ма для за­пи­си циф­ро­во­го ТВ, с воз­мож­но­стью за­пи­си несколь­ких про­грамм из несколь­ких ис­точников – и все на скром­ном Raspberry Pi! Это пре­крас­ная «сер­вер­ная часть» для толь­ко что вы­пу­щен­но­го медиа-проигрывателя XBMC, ко­то­рым вы смо­же­те восполь­зо­вать­ся в ка­че­­ст­ве кли­ен­та на лю­бом из ком­пь­ю­те­ров се­ти.

[править] Шаг за ша­гом

[править] 1 На­ши уст­рой­ст­ва

Мы про­тес­ти­ро­ва­ли и на­строи­ли два USB-ре­си­ве­ра: один для прие­ма на­зем­но­го циф­ро­во­го те­ле­ви­дения че­рез ан­тен­ну, а вто­рой – для по­лу­чения дан­ных со спутника. Ин­ст­рук­ции при­во­дят­ся и для то­го, и для дру­го­го. Для прие­ма сиг­на­ла DVB-T (на­зем­но­го) мы восполь­зо­ва­лись Sundtek MediaTV Pro, для DVB-S (спутнико­во­го) – Sundtek SkyTV Ultimate. Для по­следнего ну­жен блок пи­тания 12 В, ко­то­рый так­же нуж­но под­клю­чить. Но вот са­мое важ­ное тре­бо­вание: эти USB-уст­рой­ст­ва долж­ны быть под­клю­че­ны к Raspberry Pi че­рез USB-хаб с внешним пи­танием. Мы по­тра­ти­ли два дня в по­пыт­ках на­стро­ить сис­те­му – сна­ча­ла без ха­ба, по­том с несо­вмес­ти­мым ха­бом. В обо­их слу­ча­ях ка­за­лось, что все ра­бо­та­ет, но при сканиро­вании не на­хо­ди­лось ни од­но­го ка­на­ла. Хаб с внешним пи­танием, со­вмес­ти­мый с Raspberry Pi, ре­шил про­бле­му, так что это очень важ­но. Под­клю­чи­те к ха­бу ис­точник пи­тания, за­тем USB-ре­си­вер, а по­том под­клю­чи­те хаб к Pi. И не за­будь­те под­клю­чить ка­бель от ан­тен­ны или спутнико­вой та­рел­ки к ре­си­ве­ру.

[править] 2 Внешнее хранили­ще

Мы пред­по­ла­га­ем, что на Raspberry Pi есть на­стро­ен­ный и об­нов­лен­ный ди­ст­ри­бу­тив Raspbian. Мы так­же пред­по­ла­га­ем, что Pi под­клю­чен к Ин­тернету, и что вы на­би­рае­те ко­ман­ды на­пря­мую в кон­со­ли или че­рез SSH. Те­перь о том, где хранить за­пи­си. Ре­ко­мен­ду­ем под­клю­чить внешний USB-диск, так как по­сто­ян­ное чтение и запись на SD-кар­ту чре­ва­то ее бы­ст­рым вы­хо­дом из строя. Что­бы до­ба­вить внешний же­ст­кий диск, про­сто под­клю­чи­те его к сво­бод­но­му пор­ту USB и про­верь­те со­об­щения в сис­тем­ном лог-фай­ле, на­брав tail /var/log/messages. Вы уви­ди­те со­об­щение вро­де usb 1-1.3.4.2: New USB device, и нуж­но об­ра­тить внимание на иден­ти­фи­ка­тор уст­рой­ст­ва, ко­то­рый дол­жен вы­гля­деть при­мер­но так: sda: sda1, где sda – са­мо уст­рой­ст­во, а sda1 – раз­дел. На­бе­ри­те sudo mkdir/mnt/storage, что­бы соз­дать точ­ку мон­ти­ро­вания, и sudo mount /dev/sda1 /mnt/storage/, что­бы свя­зать ее с внешним же­ст­ким дис­ком.

[править] 3 Ус­та­нов­ка драй­ве­ров

В за­ви­си­мо­сти от ис­поль­зуе­мо­го обо­ру­до­вания, этот шаг мо­жет быть необя­за­тель­ным. Ес­ли вы вы­бра­ли уст­рой­ст­во, ко­то­рое со­вмес­ти­мо с Linux и не тре­бу­ет до­полнитель­ных фай­лов драй­ве­ров, мож­но про­сто под­клю­чить уст­рой­ст­во и пе­рей­ти к сле­дую­ще­му ша­гу. Для на­ших уст­ройств Sundtek драй­вер нуж­но за­гру­зить и уста­но­вить. Это легко. В команд­ной стро­ке Raspberry Pi на­бе­ри­те

wget http://www.sundtek.de/media/sundtek_netinst.sh

chmod 777 sundtek_netinst.sh

sudo ./sundtek_netinst.sh

По­след­няя стро­ка за­пустит скрипт, ко­то­рый мы за­гру­жа­ем в пер­вой стро­ке. Он оп­ре­де­лит вер­сию сис­те­мы и за­гру­зит по­след­нюю вер­сию драй­ве­ров. Драй­ве­ры оста­нут­ся за­пу­щен­ны­ми и на­стро­ен­ны­ми на за­пуск при за­груз­ке сис­те­мы. Поль­зо­ва­те­лям DVB-T так­же нуж­но вы­полнить сле­дую­щую ко­ман­ду:

/opt/bin/mediaclient --setdtvmode=DVBT

Она га­ран­ти­ру­ет, что уст­рой­ст­во на­строе­но на при­ем на­зем­но­го сиг­на­ла, а не сиг­на­ла от ка­бель­но­го ис­точника, поскольку уст­рой­ст­во уме­ет де­лать и такое.

[править] 4 Ус­та­нов­ка Tvheadend

Про­грам­ма, ко­то­рой мы бу­дем поль­зо­вать­ся для за­пи­си и по­то­ко­во­го воспро­из­ве­дения те­ле­ви­зи­он­но­го сиг­на­ла, на­зы­ва­ет­ся Tvheadend. С по­мо­щью модуля расширения для недав­но вы­шед­ше­го XBMC мож­но пре­вра­тить этот пре­восход­ный ме­диа-про­иг­ры­ва­тель в пол­но­цен­ный циф­ро­вой ви­део­магнито­фон, а Tvheadend бу­дет де­лать всю труд­ную ра­бо­ту в фо­но­вом ре­жи­ме на Raspberry Pi. Так как Tvheadend ак­тив­но раз­ра­ба­ты­ва­ет­ся, мы восполь­зо­ва­лись неста­биль­ной вер­си­ей, но ес­ли вы хо­ти­те про­пустить этот шаг, мож­но так же лег­ко восполь­зо­вать­ся ди­ст­ри­бу­ти­вом OpenElec вме­сто Raspbian. К сча­стью, сбор­ка про­грам­мы про­ста. Сна­ча­ла уста­но­ви­те ути­ли­ты для раз­ра­бот­ки и DVB:

sudo apt-get update

sudo apt-get install unzip libcurl4-openssl-dev pkg-config git build-essential dvb-apps gcc-4.7

По­сле это­го за­гру­зи­те по­след­нюю вер­сию Tvheadend из ре­по­зи­то­рия раз­ра­бот­чи­ков че­рез git, и для ее сбор­ки восполь­зуй­тесь трои­цей ./configure, make и sudo make install:

CC=gcc-4.7; ./configure; make; sudo make install

[править] 5 На­строй­ка Tvheadend

Поль­зо­ва­тель­ский ин­тер­фейс Tvheadend досту­пен че­рез web-брау­зер, но сна­ча­ла его нуж­но за­пустить. Так как мы осуществляем за­пуск в пер­вый раз, сде­ла­ем это в ре­жи­ме на­строй­ки, и за­пустим его как де­мон, то есть он станет фо­но­вым про­цес­сом. Что­бы это сде­лать, на­бе­ри­те

tvheadend -C -d

Те­перь от­крой­те брау­зер, же­ла­тель­но на дру­гом ком­пь­ю­те­ре се­ти, и вве­ди­те http://ip_of_rpi:9981/extjs.html. IP-ад­рес Raspberry Pi мож­но уз­нать, на­брав ifconfig и по­смот­рев на зна­чение по­ля ‘inet addr’ уст­рой­ст­ва ‘eth0’. Брау­зер за­гру­зит кли­ент по умол­чанию для Tvheadend. В нем вы, на­конец, уви­ди­те дан­ные всех про­грамм, а так­же на­строй­ки и про­смот­ра за­пи­сей. Нам нуж­но ска­зать кли­ен­ту, как поль­зо­вать­ся те­ле­ви­зи­он­ным обо­ру­до­ванием, ко­то­рое мы под­клю­чи­ли. Для это­го вы­бе­ри­те Configuration > TV Adaptors [На­строй­ка > ТВ-Адап­те­ры] и вы­бе­ри­те свое уст­рой­ст­во из вы­па­даю­ще­го спи­ска сле­ва. Сле­дую­щие ша­ги бу­дут за­ви­сеть от то­го, на­зем­ный или спутнико­вый сиг­нал вы принимае­те, поэтому мы их раз­де­лим. Для спутнико­во­го сиг­на­ла пе­ре­хо­ди­те к сле­дую­ще­му ша­гу, для на­зем­но­го – к ша­гу 7.

[править] 6 На­строй­ка прие­ма спутнико­во­го сиг­на­ла

При­ем спутнико­во­го сиг­на­ла на­стро­ить про­ще все­го. Ес­ли адап­тер вы­бран, то на странице General [Об­щее] появится об­зор кон­фи­гу­ра­ции. По­ставь­те га­лоч­ку Enable [Вклю­чить] и на­жми­те Save [Со­хранить]. Мы так­же до­ба­вим ин­фор­ма­цию о ка­на­лах, для че­го вводит­ся ин­фор­ма­ция по по­ис­ку спутника и муль­ти­п­лек­сам, ко­то­рые он пре­достав­ля­ет, за­тем на этих муль­ти­п­лек­сах про­из­во­дит­ся по­иск ка­на­лов, доступных для приема. Tvheadend со­бе­рет дан­ные о спутнике по его ме­сто­по­ло­жению, по­это­му доста­точ­но на­жать кноп­ку Add DVB Network by location [До­ба­вить сеть DVB по ме­сто­по­ло­жению] сле­ва. Тогда от­кро­ет­ся ок­но с гло­баль­ным спи­ском спутников. Для Ве­ли­ко­бри­тании и Се­вер­ной Ев­ро­пы луч­ший ва­ри­ант – Astra_28_2E. По­сле вы­бо­ра спутника Tvheadend до­ба­вит спи­сок муль­ти­п­лек­сов для это­го спутника на вклад­ку Multiplexes [Муль­ти­п­лек­сы]. Они бу­дут про­сканиро­ва­ны на имею­щие­ся ка­на­лы, и ход сканиро­вания бу­дет досту­пен в раз­де­ле Capabilities [Ре­сур­сы] на странице General [Об­щее] спра­ва. Ес­ли все ра­бо­та­ет, вы уви­ди­те об­на­ру­жен­ные сер­ви­сы (ка­на­лы) на вклад­ке Services [Сер­ви­сы]. Для Astra_28_2E мы об­на­ру­жи­ли 970 сер­ви­сов из 98 муль­ти­п­лек­сов. Ес­ли вы не хо­ти­те на­стро­ить сис­те­му так­же и для прие­ма на­зем­но­го сиг­на­ла, пе­рей­ди­те к ша­гу 8.

[править] 7 На­строй­ка прие­ма на­зем­но­го сиг­на­ла

Сна­ча­ла ак­ти­ви­руй­те при­емник на глав­ной странице. Tvheadend со­дер­жит об­шир­ную ба­зу дан­ных на­стро­ен­ных пе­ре­дат­чи­ков с под­роб­ной ин­фор­ма­ци­ей о ка­ж­дом муль­ти­п­лек­се. Вам нуж­но бу­дет уз­нать, на ка­кой пе­ре­дат­чик у­ка­зы­ва­ет ва­ша ан­тен­на. В Ве­ли­ко­бри­тании это удобнее все­го сде­лать на сай­те www.digitaluk.co.uk/postcodechecker. Когда уз­нае­те, про­сто на­жми­те кноп­ку Add DVB Network [До­ба­вить сеть DVB] на вклад­ке General [Об­щее] адап­те­ра и най­ди­те пе­ре­дат­чик «По рас­по­ло­жению [By location]». На­ше­го ме­ст­но­го пе­ре­дат­чи­ка в спи­ске не ока­за­лось. При­шлось зай­ти на www.ukfree.tv/transmitters.php, вве­сти ин­декс и до­ба­вить ин­фор­ма­цию о ка­ж­дом муль­ти­п­лек­се вруч­ную. Это мож­но сде­лать на вклад­ке Multiplexes [Муль­ти­п­лек­сы] адап­те­ра с по­мо­щью кноп­ки Add mux(es) manually [До­ба­вить муль­ти­п­лекс(ы) вруч­ную]. В поя­вив­шем­ся окне нуж­но вве­сти час­то­ту [frequency], час­тот­ную по­ло­су [bandwidth] и груп­пу [constellation] для ка­ж­до­го муль­ти­п­лек­са, а все осталь­ное уста­но­вить в Auto [Ав­то­ма­ти­че­­ски]. Эти дан­ные мож­но по­лу­чить на сай­те. Обыч­но это нуж­но де­лать для трех или че­ты­рех муль­ти­п­лек­сов, в за­ви­си­мо­сти от ва­ше­го ме­сто­по­ло­жения. Tvheadend про­сканиру­ет их на сер­ви­сы/ка­на­лы и до­ба­вит в ва­шу кон­фи­гу­ра­цию.

[править] 8 До­бав­ление ка­на­лов

Те­перь у нас есть боль­шой спи­сок сер­ви­сов, по­лу­чен­ный из муль­ти­п­лек­сов. Сле­дую­щий шаг – раз­ре­шить Tvheadend по­лу­чить из этих сер­ви­сов ка­на­лы; де­лается это на вклад­ке General [Об­щее] адап­те­ра на­жатием кноп­ки Map DVB Services To Channels [Свя­зать сер­ви­сы DVB с ка­на­ла­ми]. По­сле это­го у вас дол­жен по­лу­чить­ся спи­сок ка­на­лов для про­смот­ра на странице Channels [Ка­на­лы] вне ок­на на­строй­ки адап­те­ра. Ка­та­лог раз­ме­щения за­пи­сей по умол­чанию нуж­но из­менить – ве­ро­ят­но, на точ­ку мон­ти­ро­вания, ко­то­рую мы соз­да­ли в на­ча­ле. Для это­го зай­ди­те на страницу Digital Video Recorder [Циф­ро­вой ви­део­магнито­фон] и из­мените путь Recording System [Сис­те­ма за­пи­си]. Что­бы из­менения всту­пи­ли в си­лу, нуж­но со­хранить на­строй­ки на этой странице. Так­же нуж­но на­стро­ить элек­трон­ный те­ле­гид. Обыч­но у ка­ж­до­го ка­на­ла есть минимум в ви­де What’s On Now [Сей­час в эфи­ре] и What’s On Next [Да­лее в эфи­ре], но сер­ви­сы вро­де Freeview и Freesat в Ве­ли­ко­бри­тании предоставят бо­лее пол­ную те­ле­про­грам­му на семь дней. Что­бы ак­ти­ви­ро­вать эти сер­ви­сы, зай­ди­те на страницу EPG Grabber [Сер­вис элек­трон­но­го те­ле­ги­да], за­тем щелкните на лю­бом из сер­ви­сов в раз­де­ле Over-The-Air-Grabbers [Эфир­ные сер­ви­сы]. По­сле это­го не за­будь­те со­хранить кон­фи­гу­ра­цию, на­жав Save Configuration.

[править] 9 Запись про­грам­мы

Вско­ре на странице Electronic Program Guide [Элек­трон­ный те­ле­гид] поя­вят­ся эфи­ры – их мож­но по­смот­реть или до­ба­вить в рас­пи­сание для за­пи­си. Щелчо­к на лю­бой про­грам­ме от­кро­ет ок­но на­стройк­и записи. Д­ругой ва­ри­ант, Autorec [Ав­то­­ма­ти­че­­ская запись], ин­те­ре­снее: вы­пол­ня­ет­ся по­иск по одним и тем же дан­ным про­грамм, что­бы за­пи­сать все эпи­зо­ды, не по­ла­га­ясь на ссыл­ки из те­ле­ги­да.

В за­ви­си­мо­сти от числа ка­на­лов и объ­е­ма дан­ных те­ле­ги­да страница мо­жет сильно разрастись. Что­бы ре­шить эту про­бле­му, мож­но от­фильт­ро­вать ото­бра­жае­мые дан­ные, ис­поль­зуя стро­ку с оп­ция­ми в верху спи­ска. Мож­но ис­кать по фраг­мен­ту за­го­лов­ка или ог­раничиться одним ка­на­лом или тэ­гом фильт­ра. Ес­ли вы на­шли фильтр, ко­то­рый вас устроил, по на­жа­тию кноп­ки Create Autorec [Соз­дать ав­то­ма­ти­че­скую запись] па­ра­мет­ры по­ис­ка бу­дут до­бав­ле­ны в Tvheadend, ко­то­рая за­тем бу­дет за­пи­сы­вать все, что со­от­вет­ст­ву­ет ре­зуль­та­там по­ис­ка. Уда­лить за­планиро­ван­ные за­пи­си можно на вклад­ке Digital Video Recorder [Циф­ро­вой ви­део­магнито­фон]. Пред­стоя­щие за­пи­си уда­ляются с пер­вой страницы, а фильт­ры Autorec – с по­следней. На срединных страницах мож­но воспро­из­ве­сти или уда­лить сде­лан­ные за­пи­си или про­ве­рить, по­че­му про­грам­ма не за­пи­са­лась.

[править] 10 Про­смотр за­пи­сей и эфи­ра

Ус­та­но­вив пла­гин VLC для брау­зе­ра, мож­но про­смат­ри­вать за­пи­си и эфир­ное ТВ в брау­зе­ре. Мы про­ве­ри­ли это толь­ко в Firefox, но по щелч­ку на эфир­ной про­грам­ме поя­вит­ся воз­мож­ность воспро­из­ве­сти его [Play]. Ес­ли пла­гин VLC не уста­нов­лен, вам пред­ло­жат уста­но­вить его; по­сле уста­нов­ки долж­но поя­вить­ся ок­но с эфи­ром про­грам­мы. Кно­пки в верху это­го ок­на могут пе­ревес­ти в пол­но­эк­ран­ный ре­жим или сде­лать пау­зу в те­ку­щем эфи­ре. Точ­но так же мож­но про­смат­ри­вать за­пи­сан­ные про­грам­мы на странице Digital Video Recorder [Циф­ро­вой ви­део­магнито­фон]. Ес­ли вы не хо­ти­те поль­зо­вать­ся брау­зе­ром, ско­пи­руй­те и вставь­те се­те­вой ад­рес в VLC на дру­гом ком­пь­ю­те­ре или уз­найте в од­ном из ру­ко­водств, как ор­ганизо­вать об­щий доступ к пап­кам с за­пи­ся­ми по се­ти. Но на наш взгляд, Tvheadend удобнее все­го поль­зо­вать­ся с но­вой вер­си­ей XBMC, где есть пла­гин, способный об­щать­ся с Tvheadend на­пря­мую, за­гру­жая те­ле­гид с Raspberry Pi и по­зво­ляя про­смат­ри­вать эфир­ные ка­на­лы, а так­же планиро­вать и про­смат­ри­вать за­пи­си. На­стро­ить его лег­ко – про­сто зай­ди­те на страницу пла­ги­на PVR для XBMC; мы планиру­ем через ме­ся­ц под­роб­но рас­ска­зать об XBMC, и даем вам это как за­дание на до­м! |

Персональные инструменты
купить
подписаться
Яндекс.Метрика