Seuraavassa on selostettu miten saa aikaan järjestelmän, jossa yksi vdr-kone sisältää digitv-virittimet ja hoitaa tallennukset ja toinen kone saa live-tv-kuvaa tai tallennuksia toistettavaksi lähiverkon kautta. Ns. ykköskone on ollut jo jonkin aikaa olemassa ja sen asennusvaiheita on luettavissa vanhemmista jutuista. Tässä siis vain client -vdr:n osuus.
Mikäli ei käytä dxr3 -korttia kuvan siirtämisessä televisioon, niin hommaan on olemassa yksinkertaisempikin tapa: xineliboutput / vdr-sxfe ja täältä löytyy kuvaus sen käyttämisestä samaan tarkoitukseen. Mutta koska xineliboutputissa ei ole riittävän hyvää tukea dxr3 -kortin käytölle niin tässä toinen tapa:
VDR:
sudo apt-get install libjpeg-dev libcap-dev gettext libfontconfig-dev build-essential
sudo tar -xf vdr-1.6.0.tar.bz2
cd vdr-1.6.0/
sudo make
sudo make install
Lopuksi tulee virhe:
*** failed plugins: skincurses
Mutta vdr toimii silti.
Tämän jälkeen kopioidaan vdr -palvelinkoneesta channels.conf,keymacros.conf, sources.conf, commands.conf ja svdrphosts.conf -tiedostot vdr:n konfigurointitiedostojen kansioon client -koneessa.
DXR3:
sudo apt-get install libgtk2.0-dev
sudo tar -xf em8300-0.17.0.tar.gz
cd em8300-0.17.0/
sudo ./configure
sudo make
sudo make install
cd modules
sudo make
Tässä kohdassa sain virheen:
cc1: error: /lib/modules/2.6.24-16-generic/build/include/linux/version.h: No such file or directory
:1:40: error: missing binary operator before token "("
make -C /lib/modules/2.6.24-16-generic/build SUBDIRS=/usr/src/em8300-0.17.0/modules modules
make: *** /lib/modules/2.6.24-16-generic/build: No such file or directory. Stop.
make: *** [build] Error 2
ratkaisu:
sudo apt-get install linux-headers-`uname -r`
..ja homma jatkuu:
sudo make
sudo make install
sudo make devices
sudo cp /usr/src/em8300-0.17.0/em8300setup/em8300setup /usr/local/bin/
Lisätään /etc/modprobe.d/aliases -tiedostoon rivi:
alias char-major-121 em8300
sudo depmod -a
ja moduulit ladataan seuraavilla komennoilla:
insmod /usr/src/em8300-0.17.0/modules/adv717x.ko pixelport_16bit=0 pixelport_other_pal=1 pixeldata_adjust_pal=3
insmod /usr/src/em8300-0.17.0/modules/em8300.ko use_bt865=0 bt865_ucode_timeout=0 dicom_fix=1 dicom_control=1 dicom_other_pal=1 audio_driver=oss
LIRC:
http://www.ufonaama.com/htpcblog/?p=5
VDR-DXR3PLUGIN:
ffmpeg:
sudo apt-get install subversion
sudo svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
Pluginin Makefileen muokataan polut em8300 ja ffmpeg hakemistoihin kohdalleen.
sudo ./configure
sudo make
sudo make install
sudo nano /etc/ld.so.conf
ja lisättiin rivi
/usr/local/lib
jonka jälkeen
sudo ldconfig
————————————————————————-
STREAMDEV-SERVER/CLIENT:
Tuossa tuli perusasiat, joilla saa jo jotain tapahtumaan telkkarin ruudulle.
Kuvan siirtämisessä palvelinkoneelta clientille käytetään streamdev-server/clientia. Itse otin versionhallinnasta 0.5.0-pre version:
sudo apt-get install cvs
cvs -d:pserver:anoncvs@vdr-developer.org:/var/cvsroot login
sudo cvs -d:pserver:anoncvs@vdr-developer.org:/var/cvsroot co streamdev
jonka jälkeen normaali plugin asennus (sekä palvelin-, että client -koneeseen)
Tämän jälkeen palvelinkoneeseen luodaan tiedosto VDRCONF/plugins/streamdev/streamdevhosts.conf, jossa on listattu ip-osoitteet joista sallitaan yhteys. Eli sinne client -koneen ip.
VDR:n käynnistyttyä clientissa, muokataan streamdev-clientin asetuksia ja lisätään sinne ip-osoite jossa palvelin sijaitsee. Lisäksi kannattaa laittaa FilterStreamin -asetus päälle, jonka ansiosta myös YLE:n käyttämät dvb-tekstitykset tulevat näkyviin.
Maksukanavat:
Tähän löysin ratkaisun linuxtv.fi:n foorumilta. Palvelinkoneessa minulla on kortti+kortinlukija ja sc-plugin hoitamassa maksukanavien salauksenpurkua ja jotta maksukanavien kuva tulisi purettuna myös client -koneelle täytyy channels -confiin muuttaa viidenneksiviimeisen numeron tilalle (’0′ tai ‘B00′) laittaa ‘10′
CANAL+ FIRST;CANAL+:674000000:C23D23M64B8T8G8Y0:T:27500:514+128:670=fin:576:10:417:8438:12289:0
Tuo numero ‘10′ viittaa ilmeisesti streamdev laajennoksen järjestysnumeroon (eli tuo numero siis riippuu siitä missä järjestyksessä pluginit ladataan vdr:n käynnistyessä.)
PALVELINKONEEN TALLENNUKSET:
Jotta palvelinkoneelle tallennettuja ohjelmia voisi katsella myös client -koneella niin palvelimen /video -hakemisto jaetaan NFS:llä clientille.
Palvelinkoneella:
sudo apt-get install nfs-kernel-server
sudo nano /etc/exports
ja sinne lisätään rivi:
/video 10.0.0.0/24(rw,no_root_squash,async)
jonka jälkeen:
sudo /etc/init.d/nfs-kernel-server restart
Client -koneella:
sudo apt-get install nfs-common
sudo nano /etc/fstab
ja sinne rivi:
10.0.0.4:/video /video nfs rsize=8192 0 0
(tuossa siis 10.0.0.4 on palvelinkoneen ip-osoite)
Tämän jälkeen komento sudo mount -a toteuttaa tehdyt muutokset
TIMERSYNC:
Jotta client-koneella voidaan myös ajastaa tallennuksia, jotka tapahtuvat palvelinkoneella niin asensin lisäksi timersync -laajennoksen joka käyttää svdrpservice -laajennosta näillä eri koneilla olevien ajastusten synkronointiin. Jotta homma toimisi niin palvelinkoneen svdrphosts.conf -tiedostoon on lisättävä clientin ip.
VDR -clientin käynnistys tapahtuu komennolla:
sudo ./vdr -c /etc/vdr/ -E /tmp/epg.data -D 10 -Pdxr3 -Pstreamdev-client -Psvdrpservice -Ptimersync --no-kbd --lirc
ja vdr -serverillä käynnistyskomentoon lisätään -Pstreamdev-server