Test

From Dolot

Jump to:navigation, search

int - officeday
fade in

This is an ordinary action block, and normal wiki paragraph.

character
Says a line.
character 2
(emot)
Says a different line.
Kerthy
Mannen, opgelet, want ik ga mij ermee beginnen moeien! Ik stop niet met praten tot deze zin over 2 lijntjes gebroken wordt!

Kipdola:Doelstelling

In order to just install MythTV 0.22 from source, go: Install MythTV 0.22

1 Introduction

This howto/tutorial will guide you through installing MythTV from source (0.25 - trunk)

All the sources will be downloaded to /usr/local/src/

2 Preparation

2.1 Got root?

Installing everything is much easier when you're root.

sudo -s

2.2 Installing dependencies

The following packages are needed to compile MythTV on (X)ubuntu 11.10

I added the "-y" option, so it will automatically install without asking any more questions

Btw: You will need to enable every repository, including the sourcecode ones. On debian you will need the debian-multimedia repos for this one, http://www.debian-multimedia.org/

apt-get install build-essential cvs subversion git mercurial libqt4-sql-mysql python-mysqldb python-urlgrabber libxml2-dev -y
apt-get build-dep mythtv -y

You also need these to use mythtv:

apt-get install mysql-server phpmyadmin apache2 

3 MythTV

3.1 Converting Data

We used to convert the database ourselves, but this code has been integrated in the source. You can still make a backup of your database like this:

mysqldump -u [user] -p [database_name] > [backupfile].dump 

3.2 Downloading source (trunk)

We will be using the trunk version of MythTV

cd /usr/local/src
git clone git://github.com/MythTV/mythtv.git

If you want, you can use the version I last tried (on 2012-03-16)

cd /usr/local/src/mythtv
git checkout 19fa99618171a4412fe0fb225d1bea48188a3c58

There is one problem with this version: a patch to fix DVB-X scanning actually *causes* a lockup during said scanning. You'll need to revert it.

After the command you'll get a nano (or vi or emacs, whatever you've set as standard editor) screen with text in, just close it.

cd /usr/local/src/mythtv
git revert 146ee76929fe1b00fe218e9d3364fe22e0f14340

3.3 Patching source

3.3.1 Diseqc Patch

There is an error in the code which breaks Diseqc in MythTV. (A small operator error caused the signal to always be sent 1 time more then expected, which causes breakage.)

cd /usr/local/src/mythtv/mythtv/
wget http://svn.mythtv.org/trac/raw-attachment/ticket/5703/diseqc.patch
patch -p0 < diseqc.patch

Applying this patch only makes sense if you use a disecq switch with 4 entries ( such as the one integratedwith the Multiyenne antena from Technisat for instance ). Do not apply it if you use a classical dual LNB antenna for Astra and Hotbird, it might cause problems.

3.4 Compiling MyhTV

First you need configure everything, this is for a regular system.

(Mind you, --enable-opengl-vsync required opengl dev files. I've also disabled firewire because it gives me an error I've never seen before, and don't have time to fix something I never ever use. I have also removed the dvb-path because the drivers are now integrated in the kernel, so I don't need to build them any more.)

cd /usr/local/src/mythtv/mythtv
./configure --prefix=/usr --enable-proc-opt --enable-audio-alsa --enable-dvb  --disable-hdhomerun --disable-joystick-menu --disable-ivtv --disable-firewire --enable-xv --enable-vdpau

Afterwards we can compile everything and install it

make && make install

If it's a new install, you need to populate your MySQL server:

cd /usr/local/src/mythtv/mythtv/database
mysql < mc.sql -p

You can now start MythTV.

3.5 Activating outbound connections

Mysql needs to accept connections comming from other computers.

nano /etc/mysql/my.cnf

And deactive the bind address.

4 Plugins

4.1 Compile Plugins

cd /usr/local/src/mythtv/mythplugins
./configure --prefix=/usr

This will give you an overview on what will be installed. To make & install:

qmake mythplugins.pro
make && make install

5 Init script

I found this init script on the mythtv wiki:

Update: logfile has changed to logpath in Mythtv 0.25

nano /etc/init.d/mythbackend

Add this code:

##############################################################################
#! /bin/sh
#
# mythtv-server MythTV capture and encoding backend
#
# Based on:
#
# skeleton      example file to build /etc/init.d/ scripts.
#               This file should be used to construct scripts for /etc/init.d.
#
#               Written by Miquel van Smoorenburg <miquels@cistron.nl>.
#               Modified for Debian GNU/Linux
#               by Ian Murdock <imurdock@gnu.ai.mit.edu>.
#               and again by Steve Adeff <adeffs.mythtv@gmail.com>
#
# Version:      @(#)skeleton  1.9.1  08-Apr-2002  miquels@cistron.nl
#

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
LOCATION=/usr/bin
DAEMON=$LOCATION/mythbackend
NAME="mythbackend"
DESC="MythTV Backend"

test -x $DAEMON || exit 0

set -e

USER=mythtv
RUNDIR=/var/run/mythtv
LOGPATH=/var/log/mythtv
ARGS="--daemon --logpath $LOGPATH --pidfile $RUNDIR/$NAME.pid"
EXTRA_ARGS="-v important"
NICE=0

if [ -f /etc/mythtv/mythbackend ]; then
  . /etc/mythtv/mythbackend
fi

ARGS="$ARGS $EXTRA_ARGS"

mkdir -p $RUNDIR
chown -R $USER $RUNDIR

if ! test -e $LOGPATH > /dev/null 2>&1; then
mkdir $LOGPATH > /dev/null 2>&1
chown $USER $LOGPATH
else
chown $USER $LOGPATH
fi 


case "$1" in
  start)
        echo -n "Starting $DESC: $NAME"
##       For those with firewire this will reset things before the backend starts. 
##       Should replace with keep_dct_alive.sh script at some point.
#       firewire_tester -R
#       firewire_tester -B -p 0 -n 0 -r 10
#       firewire_tester -B -p 0 -n 1 -r 10
#       firewire_tester -B -p 0 -n 2 -r 10
        start-stop-daemon --start --pidfile $RUNDIR/$NAME.pid \
                --chuid $USER --nicelevel $NICE --exec $DAEMON -- $ARGS
        echo "."
        ;;
  stop)
        echo -n "Stopping $DESC: $NAME "
        start-stop-daemon --stop --oknodo --pidfile $RUNDIR/$NAME.pid \
                --chuid $USER --exec $DAEMON -- $ARGS
        echo "."
        ;;
  restart|force-reload)
        echo -n "Restarting $DESC: $NAME"
        start-stop-daemon --stop --oknodo --pidfile $RUNDIR/$NAME.pid \
                --chuid $USER --exec $DAEMON -- $ARGS
        echo "."
        sleep 3
        start-stop-daemon --start --pidfile $RUNDIR/$NAME.pid \
                --chuid $USER --nicelevel $NICE --exec $DAEMON -- $ARGS
        echo "."
        ;;
  *)
        N=/etc/init.d/$NAME
        # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
        echo "Usage: $N {start|stop|restart|force-reload}" >&2
        exit 1
        ;;
esac

exit 0
##############################################################################

5.1 Update init

So, we want mythbackend to start last of all our scripts, but when it shuts down it should stop first.

chmod +x /etc/init.d/mythbackend
chmod 755 /etc/init.d/mythbackend
update-rc.d mythbackend defaults 95 18

The first number is the order in which it should start, the last number is the order in which it must stop.

5.2 F.A.Q.

My frontends won't connect to my backend!
Don't forget to disable the "bind" option in /etc/mysql/my.cnf! With it enabled you can only access the database from your backend computer.


Users kleur.svg

  • Vergeet u niet aan te melden!

Scene slate.svg

Notebook.svg

Info-boeken.svg

Licht-idee.svg

Dolot, de wiki van Kipdola, zal dienst doen als onze bron van kennis. Projecten, vergaderingen, ... kunnen hier allemaal gecoördineerd en gedocumenteerd worden. De wiki is toegankelijk beschikbaar, zodat iedereen een pagina kan maken en deze delen met vrienden of kennissen. Enkel de Kipdola namespace is verborgen, en enkel toegankelijk voor leden van de VZW.

6 Evenementen

Datum Type Team Agenda

Voorbije evenementen:

Datum Type Team Agenda
17 June 2011 21:00:00 Vergadering Raad van Bestuur RvB-Agenda-11-06-17
10 December 2010 Opdracht Vrijwilligers OPD-ProjectZ-10-12-10
30 October 2010 Uitstap Vrijwilligers Walibi Halloween Nocturne 2010
9 October 2010 14:00:00 Invoersessie Vrijwilligers KPDLDI-Invoersessie-Megabike-10-10-09
2 October 2010 18:00:00 Vergadering Algemene Vergadering AV-Agenda-10-10-02
oudere evenementen …
Gnome-document-new.svg

7 Nieuw evenement (of pagina) aanmaken

Voer in het tekstvak de naam in van de pagina die je wilt aanmaken.
Klik daarna op de knop "Nieuwe pagina aanmaken"

Silhouette groep.svg

Kipdola:Verenigen

Navigation
Toolbox