Differences between revisions 18 and 19
Revision 18 as of 2008-07-16 13:33:39
Size: 16707
Comment:
Revision 19 as of 2008-07-16 13:41:02
Size: 16882
Comment:
Deletions are marked like this. Additions are marked like this.
Line 44: Line 44:
 * vdr-plugin-osdteletext-0.5.1 - Parempi ohjelmaopas vdr:lle
 * weatherng-0.0.7-pre2.orig - Säätiedot suoraan televisioon, myös sääkuvat esim. Ylen sivuilta haettuna.

Vdr 1.6.0:n (Video Disk Recorder) asentaminen Ubuntu Hardyyn e-tobin pakettilähteistä

(Ohje toimii myös Feistyssä ja todennäköisesti myös Gutsyssä).

Asentaminen vaatii jo hieman tietoa/taitoa/ymmärrystä Linux järjestelmistä, joten en käy ihan yksinkertaisimpia asioita läpi tässä dokumentissa. Sivuilta http://forum.ubuntu-fi.org/ ja http://www.linuxtv.fi/ löytyy varmasti tarvittaessa ratkaisu ongelmaan kuin ongelmaan.

!!! HUOM !!! Ohjelmien/pluginien versionumerointi voi vaihtua ajan myötä, joten tarkistakaa versionumerointi asennuksen aikana.

Speksit omalle raudalle:

  • Käyttis: Ubuntu Hardy 8.04
  • Prossu: Amd Duron 850 Mhz
  • Muisti: 256 Mb sdram
  • Emolevy: Gigabyte GA-7zmm mATX
  • Kiintolevy: Samsung SP2514N (250Gb)
  • Kiintolevy: Samsung SP1614N (160Gb)
  • Poweri: 300W
  • Digikortti: Technotrend C2300 Premium DVB-C PCI
  • Kaukosäädin: Logitech UltraX Media Remote Usb
  • Äänet ja kuva ulos TT:n kortista

  • Televisio: Samsung s86 series 26"
  • Kotelo: Omatekoinen, MDF -levystä.

VDR:n tehovaatimuksista sen verran, että näillä tehoilla mitä itsellä on käytössä voi huoletta tallentaa yhtäaikaa kaikki ensimmäisen nipun kanavat, eli siis TV1, TV2, MTV3, Nelonen, Sub ja JIM. Muistia suosittelisin ehkä vähintään sen 512Mb niin ei silloin swappais niin rankasti kuin itsellä.

Speksit omille softille:

  • vdr_1.6.0-3ctvdr1 - (itse vdr:n "runko" jota laajennetaan allaolevilla plugineilla)
  • vdradmin-am-3.6.1 - (webinterface vdr:lle)
  • vdr-plugin-epgsearch-0.9.24 - (epg datan hakutoiminto jolla voidaan myös tehdä automaagisia ajastuksia tiettyjen hakusanojen mukaan)
  • vdr-plugin-femon-1.6.0 - (signaalimittari)
  • vdr-plugin-osdteletext-0.5.1 - (tekstitelevisio)
  • vdr-plugin-remote_0.4.0-12 - (kaukosäädintuki)
  • vdr-plugin-skinsoppalusikka_1.6.0-2 - (mukavan näköinen skini vdr:lle, ainakin miellyttää omaa silmää)
  • vdr-plugin-streamdev-client_0.3.3~cvs20080406.1321-2 - (livetv stream- clientti)
  • vdr-plugin-streamdev-server_0.3.3~cvs20080406.1321-2 - (livetv stream- server)
  • vdr-addon-acpiwakeup-0.0.10 - Herätysscripti jotta vdr osaa herätä oikeaan aikaan ennen tallennuksen aloittamista.
  • vdr-plugin-osdteletext-0.5.1 - Parempi ohjelmaopas vdr:lle
  • weatherng-0.0.7-pre2.orig - Säätiedot suoraan televisioon, myös sääkuvat esim. Ylen sivuilta haettuna.

Ja sitten itse asennukseen:

Ensin asennetaan Ubuntu Hardy Desktop aivan puhtaalta pöydältä ja päivitetään kaikki ohjelmapaketit.

!!! HUOM !!! Itse huomasin sellaisen homman että kannattaa asentaa ubuntu TÄYSIN suomenkieliseksi ENNEN VDR:n asennusta niin pääsee vähemmällä jos haluaa VDR:n suomenkieliseksi.

Seuraavaksi verkkoasiat kuntoon ja sitten ssh- ja webmin- etähallintaohjelmien asennukseen.

Asennetaan riippuvuudet.

$ sudo apt-get install ssh libnet-ssleay-perl libauthen-pam-perl libio-pty-perl libmd5-perl

Haetaan webminin .deb asennuspaketti ja tallennetaan se vaikka kotihakemistoon.

$ mkdir ~/vdr-src
$ cd ~/vdr-src
$ wget http://downloads.sourceforge.net/webadmin/webmin_1.420_all.deb?modtime=1211815612&big_mirror=1
$ sudo dpkg -i webmin_1.420_all.deb 

Asennuksen jälkeen selaimella osoitteeseen https://vdrkoneen_ip_osoite:10000 ja tarkistaa että webmin toimii.

Tarkistetaan USB kaukosäätimen tunnistuminen.

$ lsusb |grep Logitech
Bus 001 Device 003: ID 046d:c101 Logitech, Inc.

Tarkistetaan että dvb- kortti tunnistuu.

$ lspci
--cut--
00:0f.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
--cut--

Katsotaan vielä tarkempaa tietoa kortista.

$ dmesg |grep Techno
[   57.872963] DVB: registering new adapter (Technotrend/Hauppauge WinTV Nexus-CA rev1.X)

Haetaan omaa digikorttia varten uusin firmware puretaan se jos on pakattu. Itsellä Technotrend C2300 Premium DVB-C PCI kortti joten tiesin jo etukäteen että seuraava firmare toimii hyvin. Muiden korttien omistajat voivat katsella firmwarea omalle kortille esim. osoitteesta http://www.linuxtv.org/downloads/ .

$ wget http://207.44.152.197/dvb-ttpci-01-f12623-patched.fw.gz
$ gunzip dvb-ttpci-01-f12623-patched.fw.gz
$ sudo cp ~/vdr-src/dvb-ttpci-01-f12623-patched.fw /lib/firmware/omakerneli_versio/dvb-ttpci-01.fw

Uudelleen käynnistä kone, jotta uusi firmware otetaan käyttöön.

Seuraavaksi otetaan käyttöön e-tobin source pakettilähteet.

$ sudo nano /etc/apt/sources.list

..ja lisää seuraava rivi tiedostoon.

deb-src http://e-tobi.net/vdr-experimental etch base addons vdr-multipatch

Seuraavaksi asennetaan taas hieman riippuvuuksia.

$ sudo apt-get update
$ sudo apt-get install dpkg-dev build-essential fakeroot

Tarkista Linux- ytimen versio ja asennetaan vielä muutamia tarvittavia ohjelmia.

$ uname -a
$ sudo apt-get install debhelper linux-headers-generic libjpeg62-dev dpatch libcap-dev libncurses5-dev

Asennetaan mercurial ja haetaan/käännetään/ladataan tuoreimmat v4l-dvb ajurit.

$ sudo apt-get install mercurial linux-headers-$(uname -r) build-essential
$ hg clone http://linuxtv.org/hg/v4l-dvb
$ cd v4l-dvb
$ make
$ sudo make install 
$ sudo make reload

Ja sitten itse VDR:n asennukseen.

$ cd ~/vdr-src
$ apt-get source vdr
$ cd vdr-1.6.0/

Aennetaan riippuvuuksia vdr:lle.

$ sudo apt-get build-dep vdr

Seuraavaksi avaamme muutamia tarvittavia patchejä vdr:n koodiin.

$ nano debian/patches/00list

Nämä on valinnaisia, mutta itse katsoin tarpeelliseksi. Seuraavista kohdista poistin kommentin edestä.

opt-20_liemikuutio
opt-27_ttxtsubs
opt-37-x_menuorg
opt-40_iptv
opt-41-x_timer-info
opt-42-x_MainMenuHooks
opt-43-x_recordshowfree
opt-45_yaepg

!!! Varoitus !!! Nuo edellä mainitut patchit voivat aiheuttaa tiettyjen pluginien kanssa yhteensopivuusongelmia. Ainakin nuo toimii moitteetta itselläni.

Tässä vaiheessa kannattaa ottaa ja lukea source pakettien mukana dokumentaatio vastaisen varalle. Varsinkin itse VDR:n dokumentaatio on varsin kattava ja myöskin jokaisesta pluginista löytyy erikseen omat ohjeensa.

Sitten käännetään ja asennetaan itse VDR.

$ fakeroot debian/rules binary
$ cd ..
$ sudo dpkg -i vdr_1.6.0-3ctvdr1_i386.deb vdr-dev_1.6.0-3ctvdr1_all.deb

Tuo vdr tahtoo käynnistyä äskeisen jälkeen itse, mutta sammutetaan se vielä toistaiseksi.

$ sudo /etc/init.d/vdr stop

Säädetään kanavat kohdalleen ja asennetaan remote- plugin. Tuota dvb viritystiedostoa voi etsiä vaikkapa googlen avulla.

$ cd ~/vdr-src
$ nano fi-oulutv

..ja kirjoitetaan seuraavat rivit ja tallennetaan.

# OuluTV
# freq sr fec mod
C 330000000 6875000 NONE QAM128

Scannataan kanavat VDR:lle sopiviksi. Tämä viritys pitäisi toimia Oulun kaapeliverkossa.

$ scan -o vdr fi-oulutv > channels.conf

..ja kopioidaan seuraavaan paikkaan.

$ sudo cp channels.conf /etc/vdr/channels.conf

Seuraavaksi remote- pluginin asennus.

$ cd ~/vdr-src
$ apt-get source vdr-plugin-remote
$ cd vdr-plugin-remote-0.4.0
$ fakeroot debian/rules binary
$ cd ..
$ sudo dpkg -i vdr-plugin-remote_0.4.0-12_i386.deb

Tehdään hieman muutoksia vdr:n asetustiedostoon. Lisää nuo tiedot tiedostoon ja tallenna.

$ sudo nano /etc/default/vdr
export LANG=”fi_FI.iso8859-1″
export LC_CTYPE=”fi_FI.iso8859-1″
NONPTL=0
VIDEO_DIR=/home/user/minne_haluat_tallennukset

# Change to 1 to enable vdr's init-script
ENABLED=1

# Change this to 1 if you want vdr to be able to shutdown the
# computer
ENABLE_SHUTDOWN=1

Luodaan tallennekansio ja asetetaan oikeudet vdr käyttäjälle.

$ cd ~/
$ mkdir tallenne_hakemiston_nimi
$ sudo chown 755 tallenne_hakemiston_nimi
$ sudo chgrp vdr tallenne_hakemiston_nimi
$ sudo chown vdr tallenne_hakemiston_nimi

käynnistetään vdr.

$ sudo /etc/init.d/vdr start

.. nyt VDR pitäisi opettaa kaukosäätimen tavoille. Itse en tiedä kuin tämän kyseisen Logitechin kaukosäätimen toiminnan, mutta soveltamalla voi varmasti saa muutkin toimimaan.

Remote- pluginin asetustiedostot itsellä. Editoi tiedostoja suosikkiedetorillasi esim. nano.

$ cat /etc/vdr/keymacros.conf
# Remote control key macros for VDR
#
# Format:
#
# macrokey  key1 key2 key3...
# macrokey  @plugin key1 key2 key3...
#
# See man vdr(5)

Red       Recordings
Green     Schedule
Yellow    Info
Blue      Timers

User1 @osdteletext
User2 @epgsearch
User3   Green
User4   Yellow
User5   Blue

$ cat /etc/vdr/remote.conf 
remote-event1.Up         0000000100010067
remote-event1.Down       000000010001006C
remote-event1.Menu       000000010001001C
remote-event1.Ok         0000000100010060
remote-event1.Left       0000000100010069
remote-event1.Right      000000010001006A
remote-event1.0          000000010001000B
remote-event1.1          0000000100010002
remote-event1.2          0000000100010003
remote-event1.3          0000000100010004
remote-event1.4          0000000100010005
remote-event1.5          0000000100010006
remote-event1.6          0000000100010007
remote-event1.7          0000000100010008
remote-event1.8          0000000100010009
remote-event1.9          000000010001000A
remote-event2.Back       000000010001009E
remote-event2.Info       0000000100010082
remote-event2.Red        0000000100010170
remote-event2.Power      000000010001018E
remote-event2.Volume+    0000000100010073
remote-event2.Volume-    0000000100010072
remote-event2.Mute       0000000100010071
remote-event2.Pause      00000001000100A4
remote-event2.User1      0000000100010184
remote-event2.User2      0000000100010082
remote-event2.User3      0000000100010081
remote-event2.User4      0000000100010172
remote-event2.User5      000000010001019A
remote-event2.Channel+   0000000100010192
remote-event2.Channel-   0000000100010193

$ cat /etc/vdr/plugins/plugin.remote.conf 
#-i autodetect
-i /dev/input/event1
-i /dev/input/event2

Nuo input eventit mitä kaukosäädin käyttää saa selville esim. evtest ohjelmalla.

$ evtest -i /dev/input/eventX

..jossa X arvotaan kunnes oikeat eventit löytyy. Itsellä tulosteessa maininta Logitechin remotesta.

Nyt olisi sitten perus VDR jo asennettu ja jos omistat samanlaisen dvb-c viritinkortin, kaukosäätimen ja asut vielä Oulussa niin homman pitäisi olla bueno.

Muut pluginit voi asentaa samoin kuin tuon remote pluginin. VDR täytyy käynnistää uudelleen että uuset pluginit ladataan käyttöön.

Joskus jos ei haluamaansa pluginia löydy apt-get source lähteestä niin se täytyy itse hakea esim. wget:llä, patchata käsin ja chmod:ata debian/rules tiedosto 755 arvoon. Muutoin asennus menee samallalailla kuin edelläkin.

Tulevista Ubuntun päivityksistä sen verran että yleensä kaikki muut paketit pystyy päivittäämään paitsi itse ydintä. Jos sen menee tekemään niin todennäköisesti ei kuvaa näy seuraavan käynnistyksen yhteydessä vaan v4l-dvb ajurit on käännettävä uudelleen.

Vdradmin-am:n asennus ja konfigurointi.

Asennellaan muutamia Perl moduleita joita vdradmin-am tarvitsee.

Noita moduleita kannattaa varmaan ensin yrittää hakea ihan esim. apt-get install libtemplate-perl tyyliin. Pakettivarastoissa tuo moduleiden nimeäminen on muodossa lib"modulinnimi"-perl. Ja jos jotain ei löydy niin sitten hae se sitten cpan:lla.

$ sudo cpan
cpan shell -- CPAN exploration and modules installation (v1.7602)
ReadLine support enabled

cpan> 

Edellä sinulle aukesi cpan shelli jossa voi sitten asennella noita moduleita komennolla:

cpan> install Template

README tiedostossa mainitaan seuraavat modulit mitkä pitäisi olla asennettuna.

- Some Perl modules (see "./install.sh -p"):
  - Required:
          - Template
          - Compress::Zlib
          - CGI
          - IO::Socket
          - Time::Local
          - MIME::Base64
          - File::Temp
          - URI::Escape
    - Locale::gettext OR Locale::Messages
        - Optional:
          - Required for AutoTimer email notification:
            - Net::SMTP
            - Authen::SASL
          - Required for AutoTimer email notification and CRAM-MD5 authentication:
            - Digest::HMAC_MD5

Sitten itse vdradmin-am.

$ cd ~/vdr-src
$ apt-get source vdradmin-am
$ cd vdradmin-am-3.6.1
$ fakeroot debian/rules binary
$ cd ..
$ sudo dpkg -i vdradmin-am_3.6.1-2ubuntu1_all.deb

Annetaan vapauksia päästä samasta aliverkosta kiinni VDR:n sisäiseen "komentokanavaan". Itsellä kone on NAT:in ja rautapalomuurin takana niin uskallan tämän näin pitää. Voi myös määritellä pelkät IP osoitteet mistä pääsee käsiksi kanavaan.

$ cat /var/lib/vdr/svdrphosts.conf
#
# svdrphosts    This file describes a number of host addresses that
#               are allowed to connect to the SVDRP port of the Video
#               Disk Recorder (VDR) running on this system.
# Syntax:
#
# IP-Address[/Netmask]
#

127.0.0.1             # always accept localhost
192.168.0.0/24     # any host on the local net
#204.152.189.113      # a specific host
#0.0.0.0/0            # any host on any net (USE THIS WITH CARE!)

Käynnistetään vdradmin-am uudestaan, jotta muutokset tulevat voimaan.

sudo /etc/init.d/vdradmin-am restart

Oletuksena vdradmin-am vastailee portista 8001 eli osoitteeksi tulisi silloin http://koneesi_ip_osoite:8001 . Oletus käyttäjätunnus/salasana ovat guest/guest, vaihda nämä HETI johonkin parempaan!!

Taas kannattaa lukea sourcen mukana tulleet dokumentit lävitse ennen säätämistä.

ACPI wakeup:in asentaminen ja käyttöönotto.

Ensin tietokoneen emolevyn biosista täytyy laittaa ACPI herätys tuki päälle. En valitettavasti osaa sanoa että mitä siellä pitäisi lukea (hieman valmistaja riippuvainen), mutta jos emolevysi tukee tuota herätystapaa niin ohjekirjassa siitä todennäköisesti on maininta.

Itse asetin biosista tuon oletusherätysajan klo 7.00, joka aamu.

Saan sen selville myös komentoriviltä.

$ cat /proc/acpi/alarm 
2008-00-00 07:00:00

Kokeillaan saada kone heräämään käsin.

Seuraava komento kirjoittaa /proc/acpi/alarm tiedostoon nykyajan + siihen 5 minuuttia.

$ sudo su
$ echo "+2000-00-00 00:05:00" > /proc/acpi/alarm
$ cat /proc/acpi/alarm 
2008-07-16 15:43:24

Seuraavaksi sammuta kone ja sen pitäisi herätä automaagisesti 5 minuutin kuluttua. Seuraava scripti mikä asennetetaan vdr:n kylkeen on vdr-addon-acpiwakeup, joka kirjoittaa juuri tuohon kyseiseen tiedostoon uuden ajan aina sammutuksen yhteydessä. Scripti tutkii vdr:n timers tiedostosta sen ensimmäisen ajastuksen ja sen mukaan sitten asettaa herätysajan.

$ cd ~/vdr-src
$ apt-get source vdr-addon-acpiwakeup
$ cd vdr-addon-acpiwakeup-0.0.10
$ fakeroot debian/rules binary
$ cd ..
$ sudo dpkg -i vdr-addon-acpiwakeup_0.0.10_all.deb

Konfiguroidaan hieman asetuksia.

$ cat /etc/vdr/vdr-addon-acpiwakeup.conf
# Activate/deactivate ACPIWakeup with yes/no:
ACPI_ENABLED=yes

# How many minutes should the machine wake up before the timer starts:
ACPI_START_AHEAD=15

# If you want your VDR machine to wakeup in regular intervals (i.e. for
# updating EPG data), specify the days of the week and the wakeup time.
# 
# Days of the week for regular wakeup (not set=Disabled, 1=Monday...7=Sunday)
ACPI_REGULAR_DAYS="1 2 3 4 5 6 7"

# Wakeup time
ACPI_REGULAR_TIME=09:15  # HH:MM

..elikkäs, edellä asetetaan aika milloin haluat vdr:n heräävän ilman ajastusta ja toinen määre on että kuinka paljon aikaisemmin enne nauhoituksen alkamista vdr:n täytyy käynnistyä.

Itse katsoin parhaimmaksi pitää koko järjestelmän suoraan Suomen ajassa. Jos kone oli UTC ajassa niin tuo herätys sekoili jotenkin ihmeellisellä tavalla ja myöskään kesä/talvi -aika ei toiminut odotetulla tavalla.

Sitten vaan tekemään ajastusta ja kokeilemaan herääkö se kone silloin kun sitä tarvitaan. Itse tarkkailin aluksi /var/log/syslog tiedostoa ssh:n ylitse, jonka avulla näin sen ajan minkä vdr kirjoittaa biosiin.

$ tail -f /var/log/syslog

TODO!

  • Streamdev-serverin asennus ja säätäminen
  • Ynnä muuta oleellista

TULOSSA!

  • torrentflux-b4rt ohje
  • kplaylist- ohje
  • Powerware 3105 UPS:n hallinnan käyttöönotto Ubuntussa + web- interface.

- Sami Törmänen