Installing MythArchive Dependencies

From MythTV Official Wiki
Revision as of 21:14, 24 April 2006 by Mtrax (talk | contribs) (RPM installation of some of the packages)

Jump to: navigation, search

MythBurn is one of several solutions to the problem of getting video out of your MythTV box on to DVD-Video discs so you can play them in your DVD player.
The user interface for Mythburn integrates into Mythweb and allows you to select recordings to store on the DVD, graphics and sound for the DVD menu etc.
Mythburn can either create an ISO-image of the DVD, that you can burn on a different PC or it can burn the DVD directly, if you have a DVD-writer in the backend
If a recording is too large to fit on a DVD, Mythburn will automatically shrink (recompress) the recording, so that the resulting size is less than 4.7 GB.

MythBurn Installation

Dependencies

MythWeb depends upon a number of other software packages that have to be installed.

According to http://www.knoppmythwiki.org/index.php?page=MythTVBurn_Scripts_HowTo these are:

  • mjpegtools 1.6.2
  • dvdauthor 0.6.10
  • imagemagick 6.0.6
  • transcode 0.6.14
  • ProjectX 0.90.3.01
  • a Java JRE or JDK
  • cvs
  • mythBurn from CVS

In addition you need growisofs from dvd+rw-tools to write the ISO-file to the DVD.

Even though http://www.knoppmythwiki.org/index.php?page=MythTVBurn_Scripts_HowTo states that "dvdauthor<0.6.12 does NOT work with imagemagick>6.0.7.x", I have had success running dvdauthor 0.6.11-1.1 together with ImageMagick 6.2.2.0-2.

You also will need the X Virtual Frame Buffer (Xvfb).

RPM installation of some of the packages

If your system is rpm based, you can check the current installed versions with the rpm command:

  • rpm -q mjpegtools
  • rpm -q dvdauthor
  • rpm -q imagemagick or rpm -q ImageMagick
  • rpm -q transcode
  • rpm -q jre
  • rpm -q jdk
  • rpm -q dvd+rw-tools
  • rpm -q cvs
 rpm -q mjpegtools dvdauthor ImageMagick  transcode  jre jdk dvd+rw-tools cvs

Note that on some rpm-sites ImageMagick is called imagemagick (KnoppMyth) and on other it is called ImageMagick (freshrpms)

If your system is rpm based you can install some of the packages with apt-get or yum:

  • apt-get update
  • apt-get install mjpegtools
  • apt-get install dvdauthor
  • apt-get install ImageMagick (or imagemagick)
  • apt-get install dvd+rw-tools
  • apt-get install cvs

Maybe your apt-get or yum has not been set up to correct repositories to get these packages. So you might have to update your sources.list or yum configuration.

On Fedora Core 3 mjpegtools can be installed from atrpms.net, dvdauthor from apt.sw.be, ImageMagick and dvd+rw-tools from freshrpms.net.

transcode

Recent versions of transcode on atrpms (versions around transcode-1.0.2-24.rhfc3.at) are compiled in a way, so that it can not extract thumbnails for the DVD menu. If you use one of those versions, you will get green squares instead (but the menu will work). There are some details on this problem here: [1]

Instead you can compile transcode or you can download it from Greg Cope with:

Note that this is is home dsl connection. He wrote a note on this on the mythtv-users mailing list on april 21st 2006.

If you prefer to install from a wellknown repository instead you can install with the usual:

  • apt-get install transcode

But be aware that you will probably get the "green square feature"

Java

To install java, download either a JDK or JRE from http://java.sun.com/j2se/1.5.0/download.jsp. The JRE contains the runtime that ProjectX needs to run, while the JDK contains both the compiler that you need for compiling ProjectX and the runtime. So if you want to compile ProjectX on a different PC, then you only need the JRE.

The installation is very straight forward. If you have downloaded a file like jre-1_5_0_<version>-linux-i586-rpm.bin, then you need the following commands:

  • chmod a+x jre-1_5_0_<version>-linux-i586-rpm.bin
  • ./jre-1_5_0_<version>-linux-i586-rpm.bin

This will not set up the path to the Java bin folder or set any Java environment variable. It would be an advantage to do this, as scripts would be independent from the actual location and version of the Java jre, but I do not know how to set this up properly...

ProjectX

ProjectX needs to be version 0.90.3.01 or later, which is not available as precompiled package, so you need to compile it. However it can be compiled on any computer even on a Windows PC !

Download the source from http://sourceforge.net/project/showfiles.php?group_id=115063 (e.g the file ProjectX_Source_eng_0.90.4.00.zip), uncompress it (e.g to the folder /usr/share/projectx) and run the build.sh file. As I have not set up the path and environment correctly, that did not work for me, so I ran build.bat from a Windows PC with the JDK installed and then ProjectX was compiled.

Then create a script for starting projectx. That might be placed in /usr/bin or some other folder, where your path points to. Mine is placed in /usr/bin and called projectx and has the following content:

 #!/bin/sh
 /usr/java/jre1.5.0_06/bin/java -jar /usr/share/projectx/projectX.jar $@

If you have set up the java environment, then you can omit the path before java. Otherwise adjust it to where your java is installed.

Make the script executable (chmod a+x /usr/bin/projectx)

Also make sure that ProjectX is placed in an executable folder (chmod a+x /usr/share/projectx)
Test if ProjectX can be started from a command prompt. On a X terminal ProjectX should start, while on a ssh prompt, it should show some messages and end with the following error message:

Checking Commons-Net library access...
Loading AC3 frames...
Stopped! Can't start GUI, Classes not available...

If it does that, then ProjectX is probably properly installed. Note that Mythburn will run ProjectX as the user "apache" (it runs within MythWeb) and all access rights should be set to allow "apache" to run ProjectX.

You might run into an error message like the following:

Loading Basic Classes...
Reading CLI Switches...
Checking Commons-Net library access...
Stopped! An Error has occured...
java.lang.Exception:
commons-net library not accessible! see readme.txt [ii]
ensure the correct location/classpath, related to the executed .jar
    at net.sourceforge.dvb.projectx.common.Start.main(Unknown Source)

The reason for this is that ProjectX not only consists of the file ProjectX.jar, but also some .jar files in a subfolder called lib. In my version of ProjectX they are:

commons-net-1.3.0.jar
jakarta-oro-2.0.8.jar

Make sure that these .jar files are in the proper location and that all the .jar files and the lib folder itself are executable:

chmod a+x /usr/share/projectx/lib/*.jar
chmod a+x /usr/share/projectx/lib

MythBurn script

Previous versions of mythburn did not work with MythTV 0.19, but the current version should be fine. Before you proceed you might make a backup of your MythWeb scripts as MythBurn will modify them.

The MythBurn script has to be downloaded from CVS. You can do that with the commands:

  • mkdir /usr/share/mythburn
  • chmod a+x /usr/share/mythburn
  • cd /usr/share/mythburn
  • cvs -d:pserver:anonymous@cvs.sf.net:/cvsroot/mythburn checkout mythburn
  • ./install.sh

Check if any error messages are issued. I received one, because I already had MythStreamTV installed, so the init.php was modified compared to what the MythBurn installation script expected. The error message however indicated which lines I had to modify and that was easily done.

MythWeb is now modified and will have menu options for starting MythBurn.

If you later want to update to latest version of MythBurn, you can do that with:

  • cd /usr/share/mythburn
  • cvs update

tcrequant

Even though the Mythburn script asks where the application tcrequant is placed, some versions have a hardcoded path to /usr/local/bin/tcrequant. If your tcrequant is placed somewhere else, you could make a symbolic link from /usr/local/bin/tcrequant. On my system I had to create the following:

  • ln -s /usr/bin/tcrequant /usr/local/bin/tcrequant

If your system already has tcrequant in the correct place or if you have a Mythburn script without this bug, then you do not need the symbolic link.

Without tcrequant Mythburn will not be able of shrinking the size of a recording.

Screen shots of MythBurnWeb menus

MythWeb main menu with additional menu entries for starting MythBurn:

250px

First MythBurn page, where the recordings to be included on the DVD can be selected:

250px

Second MythBurn page, where the DVD menu is defined. Notice the last option "Show debug information?" which can be used for debugging. Selecting this will make the following page show the command line used to start the DVD creation script. If you copy that command line and start it in a terminal, you will better be able to follow the process and see any error messages issued.

250px

Third and last MythBurn page, where the last log messages can be shown:

250px

Example Screenshots from completed DVD

Intro screen for video:

Intro screen.jpg

Links

http://www.gossamer-threads.com/lists/mythtv/users/173060

http://www.knoppmythwiki.org/index.php?page=MythTVBurn_Scripts_HowTo