Automatic retrieval and encoding

From Digisaster
Jump to: navigation, search

Back

The works

This is about how to automatically get you recording encoded/compressed (from 6 to 10 times depending on quality) To do that, the server must:

  • Get the recorded file from the KiSS, at a time where it doesn't clash with your watching it.
  • Setting up a encoder queue, which is a folder where all files in it gets processed and put out in another folder.

Mencoder

To make the queue work, you need to install mencoder (often a part of mplayer installation)

FreeBSD:

pkg_add -r mencoder

mencoder is NOT a part of mplayer in FreeBSD ver 7.0 and a package installation dosen't work. So you have to make the installation from the ports system:

cd /usr/ports/multimedia/mencoder
make install

KiSS CE

The KiSS CE package is a script that runs the encoder queue and retrieve the files from the KiSS player.

First you have to make the folders:

  • Input, where files downloaded from the KiSS are stored and where you can put other files you want to get encoded
  • Error; is where files that fails encoding are moved to. It must be on the same filesystem as Input.
  • Output; are where the newly encoded files end up.

If you put it all on the same filesystem it could look like this:

cd /home/mike
mkdir kiss_ce
cd kiss_ce
mkdir input
mkdir error
mkdir output

Be sure you are not root, when you do it.

If you use a windows desktop, you might make the kiss_ce folder a samba share:

as root
edit /usr/local/etc/smb.conf

add and adapt this:
# Encoder queue.
[kiss_ce]
   path = /home/mike/kiss_ce
   valid users = mike @staff
   public = no
   writable = yes
   printable = no

Restart samba
/usr/local/etc/rc.d/samba restart

Exit root

You can get KiSS CE from the MPC Club download site: [1]
Place the file the equivalent of the above /home/mike/kiss_ce folder. Unpack with this command:

gzcat kiss_ce-1.0.tar.gz | tar xvf - 

Confrigure

As a minimum you must configure the encoding queue folders.
Following the above example and assuming the kiss has the IP address 10.0.0.90 you must change the following in kiss_ce.conf:

path_input='/home/mike/kiss_ce/input'
path_output='/home/mike/kiss_ce/output'
path_error='/home/mike/kiss_ce/error' 
...
remote='ENABLED'
remote_address='10.0.0.90'

you might want to change other settings in kiss_ce.conf. But this is the essential.

Test that it work by running the script:

./kiss_ce


Cron

To make the script run regularly, you must add it to the cron job list.
KiSS CE will output a message if an error occur. You can tell cron to mail it to your regular mail address by adding the MAILTO directive:

crontab -e
Add this:
MAILTO="mike@some.domain.tld"
1-59/10 * * * * /home/mike/kiss_ce/kiss_ce

This will make it run every 10 minutes.

Now you just need to test that it's working. (leave it alone for a day and you will know)