Tuesday, January 01, 2008

How To Convert Beyond TV Shows into SageTV


Beyond TV and SageTV are two competing Home Theater PC software programs that allow you to turn your home computer into a high octane TIVO-like device.  After using BeyondTV for several years and building up many recorded shows in BTV, I began testing SageTV and ran into one annoying stumbling block that has been bothering me for a while.  SageTV didn't recognize the metadata such as recorded date, show information etc.  To make matters worse, SageTV required me to import those shows into the video section under a separate menu from the recorded shows.  With the help of Fonceur on the Snapstream forums and Nielm on the SageTV forums we now have a simple solution to this problem for anyone migrating from Beyond TV to SageTV or even for those who might want to take SageTV for a test run.

Why not just leave your old recorded shows (recorded in Beyond TV) in the videos section of Sage?  Your shows that were recorded on other DVR programs don't import into SageTV as shows.  Instead you have to import them into the video section where movies reside.  While this is a workaround that is functional, it isn't convenient to have some recorded television shows in your video folder mixed in with all of your movies and other television shows in your recorded TV section.

To make SageTV recognize your recorded Beyond TV (BTV) shows as recorded shows in Sage follow these steps:

  1. Create an xml file with all of your recorded shows names and metadata:
    1. Close SageTV completely
    2. If running SageTV service, stop SageTV Service
    3. With SageTV closed, I usually back up SageTV by copying the sagetv folder to a backup location (just in case)
    4. With SageTV closed, run BeyondTV
      Download BTV Negociator 4.1a or newer.  The latest version can be found HERE (Note this feature was added to Fonceur's excellent add-on for BeyondTV.  Fonceur is one of the most talented non-Snapstream affiliated, BeyondTV developers.
    5. Run BTV Negociator (BTVN)
    6. Click on the "Browser" tab in BTVN
    7. Click on the "Library" sub-tab in BTVN 1 btvn1
    8. In BTVN, you should now see all of your recorded shows in your library.  Now select all of the shows you want to import by clicking with your mouse and holding either the shift or ctrl key
    9. Right-Click with your mouse to see the execute menu and select "Extract the infos to a file"2 btvn2
    10. Close BTV Negociator
    11. You will now have a file named ExtractedInfo.xml in BTV-Negociator's folder (same folder BTVN is located) - this single xml file includes all of the metadata for each recorded show from beyondtv that you selected.
    12. Next completely close Beyond TV.  Close BTV Viewscape and BTV Agent -  be sure you no longer have the BTV icon in your toolbar.
  2. Convert this BTV XML File into a format that SageTV can recognize:
    1. Download the "Translate BTV XML" created by Nielm HERE (thanks to Neilm for his work on this - I already appreciate the work Nielm has done and continues to do for SageTV users)
    2. To install "Translate BTV XML", extract the contents of the zipfile into any directory.
    3. Either double-click the JAR file, or start->Run Java -jar /path/to/nielm_translateBtvXml.jar
    4. From the "Translate BTV XML" program, click on "open BTV XML file4 BTVXML 2 (it will be located in the BTV Negociator directory).  Once you select "open", it should say something like "parsed 5 (or however many you have) shows in file" 5 BTVXML 3
    5. Click on the "save sage xml" button and select the name and directory to save it to.  Remember this name and location as you will need to import this file into SageTV. 81 Sagetv Webserver 419 Sagetv Webserver 5It should say "file written successfully" when completed.
    6. Click the "ok" button and close the "Translate BTV XML" program
  3. Next You'll need to import this newly converted XML file into SageTV using Nielm's Web User Interface:
    1. If you already have the SageTV Web User Interface version 2.21 20 or newer skip to step 3 below.
    2. If you haven't already, upgrade the SageTV web user interface to 2.21 20 or newer (by Nielm) HERE
    3. Re-open SageTV
    4. Open the webserver in a web browser (remember it must be 2.21 or newer)
    5. Under the SageTV menu item select "Import XML file" 6 Sagetv Webserver 2
      Now on this page, check 'Import TV files' and de-select all the other boxes.  7 Sagetv Webserver 38 Sagetv Webserver 4
    6. At the bottom of this "Import XML Files" page of the webserver, click the browse button and locate the xml file you converted using Nielm's "Translate BTV XML File" converter used above.
    7. You will now see each show being imported listed in your web browser and when it's finished it will say "imported # mediafiles".11 Sagetv Webserver 7
    8. You should now be able to open up the recorded shows in SageTV and all of your BeyondTV shows along with their metadata will be there just as they were in BeyondTV.  Below is an episode of "The War" along with all of its metadata showing in the SageTV recorded shows:12 sagetv recorded shows

While this may seem like a lot to go through to convert your shows over to SageTV, it is necessary given the way SageTV and BeyondTV maintain their metadata differently.  The solution works perfectly and only needs to be run one time if you're converting over from BeyondTV.  Thanks again to Fonceur and Nielm for your work to make this process possible.

CLICK HERE For other SageTV related content