9.4.2010

MythTV-asennus jatkuu

(tämä blogaus päivitetty uuteen uskoon 11.4.2010, vanha oli viallinen)

MythTV olisi kiva saada pyörimään muualle kuin varsinaiseen X-sessioon, koska 1) MythTV vaatii koko ruudun ja 2) olisi kiva pystyä käyttämään helposti muita softia telkkarin tms. videon pyöriessä taustalla. Erillisen X-session saaminen MythTV:lle ei ole aivan triviaalia. Mutta keinot kuitenkin löytyvät.

Ensiksi konfiguroidaan X-palvelimen käynnistysoikeudet niin, että palvelimen saa mistä tahansa käynnistettyä (joo, voi olla turvallisuusriski, jos koneelle pääsee hakkereita, mutta toisaalta silloin peli on jo menetetty :).

sudo dpkg-reconfigure x11-common

Komennon jälkeen tulevassa menussa valitse kohta Anybody. Edellä kuvattu muuttaa tiedostoa /etc/X11/Xwrapper.config.

Sitten muutetaan MythTV:n back endin Upstart-skriptin start-riviä (vanha kommentoituna pois, uusi lisätty). Skripti löytyy /etc/init/mythtv-backend.conf.

# MythTV Backend service

description "MythTV Backend"
author "Matt Mossholder "

#start on (local-filesystems and net-device-up IFACE=lo)
start on (start-myth)
stop on runlevel [016]

#expect fork
respawn

script
test -f /etc/default/mythtv-backend && . /etc/default/mythtv-backend || true
exec /bin/su -c "/usr/bin/mythbackend $ARGS" $USER
end script


Tämän jälkeen luo tiedosto MythTV.sh ja anna sille ajo-oikeudet. Sisältö alla.

#!/bin/bash
DISPLAY=:1.0
sudo initctl emit start-myth
startx /usr/bin/ck-launch-session mythfrontend -- :1 > /tmp/mythtv_front.log
sudo initctl stop mythtv-backend


Komento asettaa DISPLAY-muuttujan osoittamaan ctrl-alt-F9:n takana olevaan X-sessioon. Sitten käynnistetään mythtv-backend Upstartilla eli emitoidaan eventti start-myth, joka mythtv-backend.conf:ssa on laitettu start-eventiksi. Komento startx käynnistää uuden X-session, joka menee F9:n taakse. Parametrina startx-komennolle annetaan ck-launch-session, joka puolestaan käynnistää mythfrontend-sovelluksen. Komento ck-launch-session tarvitaan, jotta mythfrontend osaisi ottaa yhteyden Ubuntu pulseaudio-serveriin. Pulseaudion kautta välitetään kaikki äänet ja MythTV osaa käyttää pulseaudiota, kun Front Endin asetus Utilities / Setup -> Setup -> General -> Audio output device: Alsa:default on asetettuna.

Skriptin MythTV.sh suorittamisella pitäisi näytettävän X-session vaihtua automaattisesti :1 eli F9:n takana olevaan X-sessioon ja siihen pitäisi käynnistyä mythfrontend. Myös äänten pitäisi toimia nyt. Näpsäkkää! Kun mythfrontendistä poistuu, tapetaan myös mythbackend resursseja viemästä.

Jotta skriptin ajaminen olisi miellyttävämpää, kannattaa sudoers-tiedostoon loppuun lisätä seuraavat rivit.

%mythtv ALL=NOPASSWD: /sbin/initctl emit start-myth
%mythtv ALL=NOPASSWD: /sbin/initctl stop mythtv-backend


Näin mythtv-ryhmään kuuluvat voivat käynnistää ja pysäyttää MythTV back endin ilman salasanan kirjoittamista (ja toisaalta näin ilman admin-oikeuksia voi käynnistää/pysäyttää Mythin back endin).

8.4.2010

MythTV-asennus

Kokeillaanpas MythTV:ä. Ubuntu 9.10:n paketeista löytyy suoraan MythTV 0.22 -versio. Tämä blogaus perustuu ohjeisiin, jotka löytyvät täältä: http://parker1.co.uk/mythtv_ubuntu.php


sudo apt-get install mythtv


Komennon jälkeen ruudulle pomppaa käyttöliittymä, jossa kysytään seuraavia

* MySQL:n admin-käyttäjän (eli root) salasana: jätä tyhjäksi
* MythTV kysyy saako koneeseen ottaa yhteyttä muilla koneilla pyöriviltä Front End:lta: vastaa yes eli saa ottaa
* MythTV huomauttaa, että mythtv-setup -komento pitää ajaa installoinnin valmistumiseksi ja että komennon suorittavan käyttäjän pitää kuulua mythtv -ryhmään
* Kun mythtv-setup on ajettu, pitää backend käynnistää
sudo /etc/init.d/mythtv-backend start
* MySQL:n admin-käyttäjän salasana uudestaan: jätä tyhjäksi
* MySQL:n admin-käyttäjän salasana kolmannen kerran: jätä tyhjäksi
* Generoitu salasana talletetaan tiedostoon /etc/mythtv/mysql.txt


Kun apt-get saa hommansa valmiiksi, käynnistä X:n valikosta System->Administration->MythTV Backend Setup. Käyttäjä, jona sovelluksen käynnistit, ei kuulu mythtv-ryhmään. Hyväksy dialogin ehdotus käyttäjän automaattisesta lisäämisestä painamalla OK. Tämän jälkeen pitää kirjautua ulos X:stä ja takaisin sisään, jotta ryhmä muuttuu oikein.

Sisäänkirjatumisen jälkeen käynnistä MythTV Backend Setup uudestaan. Tällä kertaa sovellus valittaa, että backend pitää sammuttaa. Vastaa OK.

MythTV Setup -ohjelmassa, aseta seuraavia

* General - TV format: PAL
* General - Channel frequency table: europe-west
* General - Your Local Timezone (for XMLTV): auto
* Capture Card - New capture card
- Card type: DVB DTV capture card (v3.x)
* Video sources - New video source
- Video source name: EIT
- Listings grabber: Transmitted guide only (EIT)
* Input connections - paina enter valitun päällä
- Display name (optional): Freeview
- Video source: EIT
- Scan for channels
* Desired Services: TV+Radio
* Scan Type: Full Scan (Tuned)
* Frequency: 274000000 (tämä on Yle1 Welholla)
* Symbol rate: 6900000
* Inversion: Auto
* Modulation: QAM 128
* FEC: Auto
* Valitse insert all
* Channel Editor
- Katso, että kaikki tarpeelliset kanavat löytyvät
* Poistu setupista painamalla ESC
- Setup ehdottaa dialogissa ajamaan mythfilldatabase -komennon. Ei tehdä tätä (seuratun ohjeen mukaan siksi, että käytetään EIT:ä)
- Hetken päästä tulee dialogi Fill Database. Valitse Cancel.
* Käynnistä Front End: Applications->Sound & Video->MythTV Frontend


Telkkarin pitäisi näkyä nyt ainakin jossain muodossa kohdasta Watch TV. Säätöä vielä tosin tarvitaan ja sitä lisää seuraavissa blogauksissa.