Overview

GuidePlus is yet another guide enhancer with several extra features.

  • First, it's a guide enhancer: it takes a Schedules Direct XML file (may work with other XML guides as well) and writes a new XML file with several enhancements for NextPVR.
  • Second, it's a file renamer: if shows have season/episode tags, it groups those shows and renames the file of a show to include season episode info and episode title.
  • Third, it's a file mover/archiver: it moves series and movies of a certain age into their own directories (on any location on your network), while updating the NextPVR database.


Guide Plus does everything when you run your nightly EPG update. This means that files will not be renamed or relocated immediately after they are recorded, which some will find is a slight disadvantage. However, GuidePlus will do its thing (renaming, moving) for all files in the database, not just those recently created, which is a great advantage. Have 300 recordings of series you would like renamed? Run GuidePlus!

Guide Enhancement

GuidePlus enhances guide information for both movies and series.
With movie listings, GuidePlus will add the year the movie was made, the star rating (as (4+)), and, if it is new to the guide (meaning its likely the first time this movie was released on the air/cable) it adds (new). GuidePlus knows a movie is new to the guide by creating a guideHistory.txt (in your GBPVR or NPVR dir) where it records every movie seen in a guide file that is less than 2 years old.

Example movie result: Raiders of the Lost Ark (2002)(4+)(new)

With series listings, GuidePlus will do a lookup on manually specified series and on series that are pending recordings in GBPVR to add the season and episode number (with syntax sXeY) to the subtitle of a TV series. It saves lookups in showDetail.txt (in your GBPVR dir) to save time and internet traffic later. This file is also where you must put the title of the series you want episode information for it if it's not a pending or existing recording. The syntax for this file is as follows (in other words use a text editor to add to it):
SHOWFILE~~1.0}}
NEWSHOW~~Burn Notice~~2008~~n/a~~1}}
NEWSHOW~~Ugly Betty~~2006~~n/a~~3}}

Just use any year and number for the year entry and seasons entry--it will get corrected by GuidePlus later. To save time and bandwidth, GuidePlus does series lookups ONLY on series with their titles in this file and on series that are pending/existing recordings. If a series has been cancelled, it will only do the lookup once. If a series is active, GuidePlus will only do the lookup if the air date of an episode in the guide is greater than that in the showDetail.txt file (skipping internet updates when a show is dormant for a long period).

GuidePlus also ensures that the xml has a first run indicator and if desire adds a '*' or other character) at the end of the title if it is a new episode (aired within 3 days of its first air date), prepends the original air date to the description, and, if the description of the episode on TVRage/TVDb is larger than that from the XML file, it will replace it with the longer description.

Example series result: Title="Ugly Betty*" subtitle="s1e4: the one where betty isn't ugly" description="2009-01-03 A long description of Betty"

GuidePlus will alter GBPVR database entries of existing recordings as above, with the episode number and air date. This is necessary since shows already recorded will keep their data despite new information from a guide update.


Renaming

If the rename switch is on, it will also rename series files replacing NPVR/GBPVR's date in the file name with the episode string and subtitle. For example, from ugly_betty_20090101_201010.mpg to ugly_betty.s03e05.i_found_a_cat.mpg.

For GBPVR, GuidePlus also regroups shows that have a series string at the start of the subtitle (e.g. s05e01) with other shows with the the same title. This groups shows that have a '*' and no '*', so you don't have two series groups when you record older episodes, and also groups in episodes imported with vidImport assuming the Titles are the same and they have a series episode string using the s00e01 format. This is helpful when you miss recording an episode and you acquire it from another source and wish it to be grouped with the rest.

File relocation

GuidePlus will also move the shows files (and associated .edl, .txt, .xml) to one of two specified directories if desired. If a seriesDir is specified, all shows with a season string in the title (e.g. s00e00) will be moved to that directory. (This means you need to run with renaming on to add the s00e00 to the file for this to work). If movieDir is specified, all shows with uniqueIDs that do not start with "EP" will be moved to that directory. The GBPVR/NPVR directory will be updated to reflect these changes. Bonus: if you put files on a separate file server, GuidePlus will send a Wake On LAN (WOL) magic packet before doing the moves if specified. Note that guide info is not perfect, so some series may end up in the movie folder if they're not correctly tagged in the guide.

Usage

guidePlus.exe <xmlin=""> <xmlout=""> [showfile=""] [history=""] [rename=On|Off] [repeat=""] [movieDir=""] [seriesDir=""] [wol=""]
xmlin = the guide file you start with.
xmlout = the altered guide file (don't use the same name as in 'xmlin')
showfile = your showDetail file - optional, defaults to (gbpvr dir)\showDetail.txt.
history = your history file - optional, defaults to (gbpvr dir)\guideHistory.txt.
rename = [yes|no] - if yes, renames the files of series appending s00e00.subtitle - optional defaults to no
repeat = [string] - character used to indicate repeats - optional defaults blank
addExts = [string delimited by ~] - additional ~ delimited extension that guidePlus should consider as video
newShowInd = [string] - character used to indicate new shows - optional defaults blank
movieDir = [directory] - optional if included files the unique series IDs start with MV will be moved here
seriesDir = [directory] - optional if included files the unique series IDs start with EP will be moved here
wol = [max address] - optional if included a wol magic packet will be sent before any renames or moves
archiveAge = [days] - optional if included when archive GP will only archive files with an age of >= to the days specified
archiveOnly - optional if included guide plus will only archive - no rename or guide ops


Typical users will create an updateEpg.bat that uses at least two steps. Step 1: invoke XMLTV to download listings as an XML file from Schedules Direct. Step 2: invoke GuidePlus.exe to create an augmented .xml listings file. Point to this file when configuring sources in the NextPVR settings dialog.
Xmltv can be downloaded from Sourceforge.
Please note: to see the results the first time, you need to empty the EPG since NextPVR doesn't update show descriptions that already exist in the database.

Behavior

Warning: GuidePlus does not have a whole lot of error handling, so YMMV. Not sure how well it will work with non-English language file names.

Download

Download:guidePlus.zip (2225 downloads)

Requires Microsoft .NET Framework 3.5 and SQLite .dll (included in zip).

Possible ToDo's

  • Add a few command line switches or an .ini file
  • Include Schedules Direct download in utility

Version(s) / History

0.86 - Added vprj as legal extension for videos. Added new tag for showfile allowing user to specify a specific tvdb ID to use rather than search for a show. Added ability to add further extensions. 0.85 - Correct support for first run tag. Change default of newShowInd to "" (no indicator since TV listings will show one for you) 0.83 - added new tag for show file "exactMatchOnly" which causes guidePlus to only accept exact matches on a title from theTVDB or rage. 0.82 - added support for mc2xml
0.76 - added archiveAge and archiveOnly options, also updates playback position table when archiving.
0.74 - fixed an issue where a join between recorded_event and other table that used start time was not working by allowing a 5 minute difference. Also add season episode in XML recognizable by NPVR.
0.73 - new trigger syntax to fix an issue due to a change in an NPVR table.
0.72 - 2011-05-26 - Fixed an issue where renamed recordings were getting listed as failed in the NPVR database
0.71 - 2011-05-05 - Small bug fixes, added check for (US) in theTvdb.com lookups to improve accuracy, updated to latest sqlLite dll
0.70 - 2010-10-13 - GuidePlus now extracts hidden metadata into <filename>.xml
0.69 - 2010-10-12 - Fixed an issue where database entries were not being renamed when a file is moved
0.68 - 2010-10-11 - Added NPVR compatibility stuff, ability to move files to series and movie directories, plus WOL
0.65 - 2010-04-06 - Improved series lookups, improved lookup for series with multiple versions (e.g. Battlestar Galactica (1978) vs. Battlestar Galactica (2005)
0.64 - 2009-11-25 - Fixed bug where GuidePlus was adding "The " to shows with names that have very short lengths 0.61 - 2009-05-18 - Fixed bug where GuidePlus was writing multiple air dates to season descriptions
0.60 - 2009-04-20 - GuidePlus now regroups shows with the same name and a subtitle starting with a series string
0.58 - 2009-04-19 - Few more fixes with series - GuidePlus now adds a (us) to series search defaulting to US-based series first. Added two new features (file rename and altering of existing recordings descriptions.)
0.55 - 2009-03-26 - Fixed error handling shows with multiple runs (e.g. Battlestar Galactica (2008))
0.50 - 2008-12-18 - Improved HTML special character handling
0.40 - 2008-12-17 - Includes sqllite dll and reads GBPVR to get a list of shows that are recording - these shows are looked up on TVRage for seas/ep numbers
0.30 - 2008-12-11 - Fixed bug reading history file
0.20 - 2008-11-30 - First Version (beta)

Author(s)

carpeVideo


Category:Utility

Page last modified on May 11, 2013, at 04:39 PM