PyTivo

From Amahi Wiki
Jump to: navigation, search

Description

pyTivo is a way to send vidoes, music, and movies to a series 2, series 3,and HD tivo that doesnt support DLNA. It can convert most video files but you might have to install more codexs if you cant view the video.

PreRequisites

First install the prerequisites. Install the RPM Fusion apps in the hda control panel.

yum -y install ffmpeg
yum -y install nano

Install PyTiVo

Git Clone

  • Clone pyTiVo from git
cd /usr/share
git clone git://github.com/wmcbrine/pytivo.git

Create Config File

cd /usr/share/pytivo
$ cp pyTivo.conf.dist pyTivo.conf

Test Run pyTiVo

We have the program download now we need to run it

python /usr/share/pytivo/pyTivo.py
  • Visit http://hda:9032 to confirm pyTiVo is working
    • If it runs ok now we can create the daemon

Startup Script

nano /etc/init.d/pytivo
  • Paste this into the daemon we are creating
!/bin/bash
# chkconfig: 2345 99 05
# description: pyTivo server

### INIT INFO
# Provides: pytivo
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-description: pyTivo server
# Description: Start and stop the pyTivo server.
### END INIT INFO

RETVAL=0


start() {
echo -n "Starting pyTivo: "
pgrep -f pyTivo.py
RETVAL=$?
[ $RETVAL -eq 0 ] && echo "pyTivo already running: Exiting" && exit 1

# this call actually starts pyTivo.
python /usr/share/pytivo/pyTivo.py > /dev/null 2>&1 &
RETVAL=$?
[ $RETVAL -eq 0 ] && echo -n "done"
echo
return $RETVAL
}

stop() {
echo -n "Stopping pyTivo: "
pkill -f pyTivo.py
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && echo -n "done"
echo
return $RETVAL
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
sleep 1
start
RETVAL=$?
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit $RETVAL
  • Run the daemon
service pytivo start
  • If successful
chkconfig pytivo on
    • Reboot to test startup script.

Configure pyTiVo

  • Primary method using web browser
hda:9032
  • Alternate method
nano /usr/share/pytivo/pyTivo.conf
  • Example config file
[Server]
port = 9032
ffmpeg = /usr/bin/ffmpeg

[Movies]
type = video
path = /var/hda/files/movies

[Music]
type = music
path = /var/hda/files/music

[Pictures]
type = photo
path = /var/hda/files/pictures

[_tivo_SD]
height = 1080
video_fps = 29.97
width = 1920
optres = true

[_tivo_HD]
height = 1080
optres = true
width = 1920
video_fps = 29.97

Install PyLoad

Prerequisites

  • Install make
yum install make
yum install gcc
  • Download TiVodecode source and make binary
cd /usr/share/pytivo
git clone https://github.com/arantius/tivodecode.git
cd download
./configure
make
make install


In your browser, vist http://hda:9032

  • Select Settings, Global Server Settings

path for tivodecode binary

/usr/local/bin/tivodecode
  • Save

Configure Web App (needs update)

To make the html config a web app just create a new web app as pytivo in the /var/hda/web-apps/pytivo/html/ make new index.html with this

<html>
<head><meta http-equiv="refresh" content="1;url=http://hda:9032"></head>
</html>

If you have issue you can check the pyTivo website http://pytivo.sourceforge.net/wiki/index.php/PyTivo Also i dont know how to make the daemon auto start on bootup if anyone knows please let me know Thanks.