Ha quedado guapo, guapo. Freevo es un PVR desarrollado en Python, a continuación explicaré cómo lo he instaldo y configurado con soporte a:
- TDT.
- Teleprograma.
- Reproducción de pelis.
- Reproducción de música.
- Visionado de Fotos.
- Juegos (MAME).
- Mando inalámbrico para el control de la interfaz.
- Reproducción automática de CDs y DVDs.
- Programador de grabaciones.
01. Instalación de Freevo.
He bajado:
| wget
http://puzzle.dl.sourceforge.net/sourceforge/freevo/freevo-1.7.0.tar.gz wget http://kent.dl.sourceforge.net/sourceforge/freevo/kaa-base-0.1.2.tar.gz wget http://heanet.dl.sourceforge.net/sourceforge/freevo/kaa-imlib2-0.2.0.tar.gz wget http://switch.dl.sourceforge.net/sourceforge/freevo/kaa-metadata-0.6.0.tar.gz |
Ahora a compilar los fuentes:
tar xfvz kaa-base-0.1.2.tar.gz cd kaa-base-0.1.2/ |
A la hora de compiar he visto que me hacían falta unos cuantos paquetes, así que lo habitual:
| sudo apt-get install python-dev sudo apt-get install gcc sudo apt-get install libglibmm-2.4-dev |
Seguimos compilando:
| sudo python setup.py install tar xfvz kaa-imlib2-0.2.0.tar.gz cd kaa-imlib2-0.2.0/ |
Lo mismo de antes, más dependencias:
| sudo apt-get install libimlib2 sudo apt-get install libimlib2-dev |
A compilar:
| sudo python setup.py install tar xfvz kaa-metadata-0.6.0.tar.gz cd kaa-metadata-0.6.0/ sudo python setup.py install wget http://www.crummy.com/software/BeautifulSoup/download/BeautifulSoup.tar.gz tar xfvz BeautifulSoup.tar.gz cd BeautifulSoup-3.0.3/ sudo python setup.py install |
Finalmente la compilación de Freevo:
| cd freevo-1.7.0/ sudo apt-get install python-elementtree sudo python setup.py install cd .freevo/ cp /home/mcebolla/Desktop/freevo-1.7.0/local_conf.py.example . mv local_conf.py.example local_conf.py sudo mkdir /var/cache/freevo sudo chmod 777 /var/cache/freevo/ sudo apt-get install python-pygame sudo apt-get install python-imaging sudo apt-get install python-twisted sudo apt-get install python-mmpython sudo apt-get install python-pylirc sudo apt-get install mplayer xine-ui xmltv tvtime |
02. TDT.
Mi tarjeta es una WinTV Nova-T USB 2.0
Yo lo he hecho con un 2.6.17-50.
| aptitude install build-essential mercurial
linux-headers-`uname -r` dvb-utils libxine-extracodecs hg clone http://linuxtv.org/hg/v4l-dvb cd v4l-dvb make make install cd /lib/firmware/`uname -r` wget http://vaasa.wi-bw.tfh-wildau.de/~pboettch/home/files/dvb-usb-dib0700-01.fw |
03. Teleprograma.
1. Crear el fichero de canales para mplayer
/usr/share/doc/dvb-utils/examples/scan/dvb-t/es-Collserola > ~/.mplayer/channels.conf
2. Test
mplayer dvb://laSexta
2. El xmltv para freevo.
He hecho un script que he metido en el cron.
#!/bin/sh
/usr/bin/tv_grab_es --output `date +"$HOME/freevo/xmltv/listings_%d%m%Y.xml"` --days 1
rm /tmp/TV.xml
ln -s `date +"$HOME/freevo/xmltv/listings_%d%m%Y.xml"` /tmp/TV.xml
4. Configuracion de freevo
hacer:
freevo tv_grab
freevo tv_grab --query
y obtendremos un esqueleto
TV_CHANNELS = [
( '01.elpais.es', 'TVE1', '1' ),
( '02.elpais.es', 'La 2 de TVE', '2' ),
( '03.elpais.es', 'Antena 3', '3' ),
( '04.elpais.es', 'Tele 5', '4' ),
( '05.elpais.es', 'Canal Plus', '5' ),
( '06.elpais.es', 'Telemadrid', '6' ),
( '07.elpais.es', 'TV3', '7' ),
( '08.elpais.es', 'Canal 9', '8' ),
( '09.elpais.es', 'Canal Sur', '9' ),
( '10.elpais.es', 'TVG', '10' ),
( '11.elpais.es', 'ETB 1', '11' ),
( '12.elpais.es', 'ETB 2', '12' ),
( '13.elpais.es', 'Canal Sur 2', '13' ),
( '14.elpais.es', 'Canal 33', '14' ),
( '15.elpais.es', 'Punt 2', '15' ),
( '16.elpais.es', 'Televisi�n Canaria', '16' ),
( '17.elpais.es', 'PROGRAMACION DE CASTILLA LA MANCHA TELEVISI�N', '17' ),
( '20.elpais.es', 'K3', '20' ),
( '21.elpais.es', 'Digital Plus', '21' ),
( '22.elpais.es', 'cuatro', '22' ),
( '23.elpais.es', 'PROGRAMACION DE CANAL EXTREMADURA', '23' ),
( '24.elpais.es', 'LA SEXTA', '24' ) ]
XMLTV_FILE = '/home/mcebolla/freevo/TV.xml'
# Hay que meterlo en la configuracion de local_conf.py
04. Servidor de de grabaciones.
TV_RECORD_DIR = '/home/mcebolla/freevo/Grabaciones'
TV_DATEFORMAT = '%e-%b' # Day-Month: 11-Jun
TV_TIMEFORMAT = '%H:%M' # Hour-Minute 14:05
TV_DATETIMEFORMAT = '%A %b %d %I:%M %p' # Thursday September 24 8:54 am
TV_RECORDFILE_MASK = '%%m-%%d %%H:%%M %(progname)s - %(title)s'
TV_RECORD_SERVER_IP = 'localhost'
TV_RECORD_SERVER_PORT = 18002
TV_RECORD_SERVER_UID = 0
TV_RECORD_SERVER_GID = 0
TV_RECORD_PADDING = 0 * 60
WWW_USERS = {
"xxx" : "xxx"
}
freevo recordserver start
freevo recordserver stop
Script para init.d
"""
#!/bin/sh
/bin/su - freevo -c "freevo recordserver start"
"""
sudo vi /etc/init.d/freevo_recordserver
sudo chmod +x /etc/init.d/freevo_recordserver
cd /etc/rc2.d/
ln -s S99freevo_server ../init.d/freevo_recordserver
sudo ln -s ../init.d/freevo_recordserver S99freevo_server
05. Mando inalámbrico.
JOY_DEV = 1
JOY_CMDS = {
'up' : '',
'down' : '',
'left' : 'LEFT',
'right' : 'RIGHT',
'button 5' : 'UP',
'button 7' : 'DOWN',
'button 6' : 'SELECT',
'button 8' : 'PLAY',
'button 9' : 'EXIT',
'button 10' : 'ENTER',
}
06. Generación de previsualizaciones de las películas y caché.
freevo cache --thumbnail --recursive /home/mcebolla/Desktop/VIDEOTECA
freevo cache
Según lo habitual que sea que cambien las pelis se puede o bien poner en un cron lo anterior o bien lanzarlo a mano de vez en cuando, yo lo he puesto en un cron para que se lanzar por las noches.
07. Otras configuraciones.
Pantalla completa cuando arranque.
START_FULLSCREEN_X = 1
Que salir del programa implique hacer un shutdown del sistema.
ENABLE_SHUTDOWN_SYS = 1
Item de Video, Musica y Fotos:
VIDEO_ITEMS = [ ('Videoteca (en isidoro)', '/home/mcebolla/Desktop/VIDEOTECA'),
('Videoteca 2 (en isidoro)', '/home/mcebolla/Desktop/VIDEOTECA2'),
('Videoteca 3 (en isidoro)', '/home/mcebolla/Desktop/VIDEOTECA3'),
('Pelis en Local', '/home/mcebolla/Desktop/PELIS_LOCAL') ]
AUDIO_ITEMS = [ ('Musica (en isidoro) ', '/home/mcebolla/Desktop/VIDEOTECA/MUSICA'),
('Musica (en local)', '/home/mcebolla/Desktop/MUSICA'),
('WebRadio', '/home/mcebolla/freevo/fxd/webradio.fxd') ]
IMAGE_ITEMS = [ ('Fotos (en isidoro) ', '/home/mcebolla/Desktop/VIDEOTECA/FOTOS')]
Idioma de los DVDs:
DVD_LANG_PREF = 'es,en,se,no'
Plugins de volumen actual y memoria usada en el sistema:
plugin.activate('idlebar.volume', level=0)
plugin.activate('idlebar.system.procstats',level=20)
08. MAME.
GAMES_ITEMS = [ ('MAME', '/home/mcebolla/Desktop/ROMS/MAME',
('MAME', '/usr/games/xmame', '-fullscreen -joytype 1 -joydevname /dev/input/js', '/home/mcebolla/Desktop/ROMS/MAME/SISTEMA/snap', None)) ]
09. Comandos.
He añadido un par de scripts para forzar la expulsión de CDs ó DVDs que se puedan quedar enganchados por cualquier motivo.
Para ello he activado el menú de comandos.
plugin.activate('command', level=45)
COMMANDS_DIR='/home/mcebolla/freevo/commands'
10. Mi local_conf.py.
http://www.libresoftware.com/sw/local_conf.py


Comentarios recientes
16 weeks 3 days ago
25 weeks 6 days ago
25 weeks 6 days ago
26 weeks 4 days ago
26 weeks 6 days ago
35 weeks 10 hours ago
35 weeks 10 hours ago
37 weeks 19 hours ago
38 weeks 4 days ago
41 weeks 6 days ago