|See TvTunes on the XBMC Forum for more information.|
TvTunes is equipped with powerful features that enable the fetching, organising and playing of themes whilst browsing your Kodi library, when used in conjunction with a compatible skin. (Special thanks to Ppic,Frost and ronie for their early work in developing TvTunes)
To install this add-on you must do so from the Add-on manager from within XBMC by going to:
- Get add-ons
- XBMC.org Add-ons
- Program Add-ons
2 Forum, Repository and Issue Report Pages
If you have any questions, found an issue to report or would just like to know a little more you can take part in the forum discussions at:
If you find any bugs or have an enhancement requests, these can be recorded at the following location:
3 Theme File Names and Locations
If you wish to store your own theme files with each video and have TvTunes play them for you then the naming of the theme is important. There can be multiple themes with each video, but they must all start with the word "theme" and be of one of the supported types configured in the settings menu.
The search order for themes is:
- Themes in the same directory as the video file
- (If no theme found) search for themes in the parent directory
This allows for nested directories where seasons of TV Series are in separate directories, but all wish to use the same theme. It is also possible to store themes in a "Series directory" under a given TV Show, this can allow you to have different themes for each series of a given show. (Note: the TvTunes downloaded will only fetch themes at an entire TV Show level, not a per series level, so series specific themes need to be added or relocated manually)
For Movie Sets, all Movies in the set will be searched for themes, and these themes played in a random order when the Movie Set is selected in the Movie List screen.
There is also a settings option to define a directory (e.g. Themes) under the Movie or TV Show directory to look for themes, if themes are not found in this directory, then the previously defined order will be followed. (Note: Setting this value will result in downloaded themes also being saved into sub-directories)
4 NFO File Support
The themes for TvTunes to play can also be configured via a "tvtunes.nfo" file. This file should take the following format:
<tvtunes> <file>tvtunes.mp3</file> <file>C:\XBMC\SingleTheme\anothertvtunes.flac</file> <directory>C:\XBMC\RemoteThemes</directory> <playlistfile>playlist.m3u</playlistfile> </tvtunes>
There can be any number of "file"/"directory"/"playlistfile" elements, where they represent:
- file - The name of a theme file in the same directory, or the full path if in a different directory
- directory - The name of a directory below the existing directory, or the full path to a remote directory
- playlistfile - Either the full path to a playlist file, a playlist file in the same directory or the name of an XBMC playlist file. (The extension "m3u" will be added if not already specified)
Smart Playlists: To make use of a Smart Playlist in XBMC you can supply just the name of the playlist file (No path) but including the extension ".xsp"
Inclusive behavior:The tvtunes.nfo files are non-exclusive to any other valid set up through which the audio themes will play in TVTunes, which means that a tvtunes.nfo will follow same location, search and play criteria as described for 'Theme File Names and Locations', e.g.; any spare audio themes located within the same directory of the tvtunes.nfo will be played along (and shuffled, if option selected) with the themes defined by the latter.
5 Theme Scraper
TvTunes has the ability to retrieve themes from the web for a given TV Show, Movie or Music Video. The websites currently supported are:
TvTunes will search for two specific terms (<title> and <originaltitle> of the video) and will try and automatically filter the results in order to display only the best matches. If you wish to view the un-filtered version of results, then you can make use of the "Manual Search" option within TvTunes.
Obs: As it searches, TvTunes will show a progress bar; please be patient since sometimes the results to be filtered are in the magnitude of thousands.
5.1 Understanding the Entries List
5.1.1 Prioritisation of the entries
The priorities in which the filtered results are shown on the entries list are:
- priority 1 = * (full match: most accurate match in relation to TvTunes' pre-defined soundtrack music tags/appendixes)
- priority 2 = ~ (album only match: only the album name (not the artist) contains one of the search terms)
- priority 3 = + (title only match: only the track title contains one of the search terms)
- priority 4 = (everything else: all which was filtered out)
Obs: priority 2 is currently only applicable to Grooveshark and Goear retrieved results.
5.1.2 Tags & Separators
Entries from each scraper are listed using their available tag identifiers (in angled brackets) and separators (in blue), in the following order (identifiers are not always available or properly tagged at the source):
- Televisiontunes: <title name> e.g., Jaws
- Soundcloud: <title name> [hh:mm:ss] | e.g., Jaws Theme Song [00:02:16]
- Goear: <title name> / <artist name> [mm:ss] (###kbps) | e.g., Jaws Overture / John Williams [2:55] (320kbps)
- Grooveshark: <title name> / <album name> — <artist name> [hh:mm:ss] | e.g., Jaws Theme / OST Jaws - John Williams [00:02:37]
5.1.3 International characters
People from all over the world share their themes and hence many different languages are used to tag them. If some of these tags had special characters not compatible with certain XBMC fonts, you would see blank spaces instead. If this happened to you (1st item below), all you have to do is switch to a font such as 'arial base' (2nd item below) and you will see the missing content:
- / (Nausicaä of the Valley) - Joe Hisaishi [00:03:54]
- 風の伝説 / 风之谷交响乐(Nausicaä of the Valley) - 久石讓 Joe Hisaishi [00:03:54]
This section details all the settings options for TvTunes
- Play theme in loop
- Will continue to play all themes in a loop
- Lower sound value
- Reduces the volume before stating to play the theme in the background
- Delay Theme Start (Seconds)
- Wait the set amount of time before starting to play the theme
- Fade out after playing for (minutes)
- Stop playing themes after a set amount of time
- Play themes when browsing Movie list
- When moving over items in the Movie list, play the theme if it remains selected
- Play themes when browsing TV Show list
- When moving over items in the TV Show list, play the theme if it remains selected
- Play themes when browsing Music Video list
- When moving over items in the Music Video list, play the theme if it remains selected
- Fade tune out when exiting
- When it is time to stop playing the theme, fade it out
- Fade in tune when starting
- When a theme starts playing, fade the it in so it starts very quietly
- Shuffle multiple tracks
- When there are multiple themes, play them in a random order
- Random start time
- When a theme starts, play it from a random point in the theme
- Limit track duration when multiple themes (seconds)
- Only play the given amount of a track before moving to the next track
- Automatically download if an exact match is found
- When searching for themes, if there is only one theme found them it will download it without prompting (Warning: This may not be the correct theme - just the only one listed)
- Always add additional themes (no overwrite)
- Will not overwrite additional themes, instead it will add to the existing list of themes
- Search for movie themes
- Allows download suport for Movies as well as TV Shows
- Show the TvTunes button on the Video Info screen
- Enables the Download TvTune button on the Video Information screen so that you can download themes on a per Movie/TV Show basis
- Theme Search Source
- Select the web site to search in order to retrieve themes, default value is televisiontunes.com.
- Browse Themes
- Will load the theme browser plugin to allow you to look for themes for your entire library
6.3 File System
- Use Protected SMB Share
- Allows you to define a username and password when accessing themes via an SMB share
- Store tunes in a custom path
- Allows you to specify a location where the themes will be stores (i.e. not embeded within your Video collection)
- Support themes in sub directories
- Allows you to define the name of a sub directory where the themes will be stored under each movie in the video library
- Enable debug logging
- Enables TvTunes debug logging (Required if reporting a problem) - for this to work, system-wide XBMC logging must also be enabled
6.4 File Types
- These settings are simply a list of types that can be supported by TvTunes. MP3's are always enabled, the remaining types (WMA,FLAC,M4A,WAV) can be toggled on or off.
7 Theme Browser
The "Theme Browser" enables you to look at which Movies/TV Shows/Music Videos already have themes available for. You can listen to them as it gives you the ability to download new themes. You can load the theme browser in the following ways:
- Via the TvTunes Settings screen "Download" -> "Browse Themes"
- From the Programs Menu -> TvTunes
- Videos -> Addons -> TvTunes
8 Skins With Build In Support
The following skins have built-in support for TV Tunes, so require no user skin modifications (Remember to enable TvTunes in the Skin Settings!):
- Aeon MQ 5
- Aeon Nox 5 (controls in custom_1119_ExtrasDialog.xml, line 93)
- Aeon Nox 4.1.9.x
- XBMC Immerse
- Cirrus Extended (V3)
- Confluence Modified
- Xperience1080++ (Fix for Gotham [])
Obs: due to a natural delay between the dates of release of possible latest features (and fixed issues too) and actual implementation of these updates in the supported skins, such as support for Music Videos, these skins may still require some manual changes as per item 9 in certain skins with built-in support.
9 Skin Changes
In order to fully support TvTunes a few alterations are required to the skin, the following show what is required to change in Confluence (Other skins will have similar changes)
Add to the top of the file [Triggers the start of the theme playing]:
<onload condition="Skin.HasSetting(ActivateTvTunes) + System.HasAddon(script.tvtunes)"> XBMC.RunScript(script.tvtunes,backend=True) </onload>
Add to the top of the file [Triggers the start of the theme playing]:
<onload condition="Skin.HasSetting(ActivateTvTunes) + System.HasAddon(script.tvtunes)"> XBMC.RunScript(script.tvtunes,backend=True)</onload>
Add to near the foot of the file after the last control statement [Allows download of theme on a video by video basis]:
<control type="button" id="100"> <description>Fetch TvTunes stuff</description> <include>ButtonInfoDialogsCommonValues</include> <label>31127</label> <onclick>XBMC.RunScript(script.tvtunes,mode=solo)</onclick> <visible>Skin.HasSetting(ActivateTvTunes) + System.HasAddon(script.tvtunes) + [Container.Content(TVShows) | Container.Content(movies) | Container.Content(musicvideos)] + IsEmpty(Window(movieinformation).Property("TvTunes_HideVideoInfoButton"))</visible> </control>
9.2.1 TvTunes-ready XML
Those who feel overwhelmed trying to add these changes themselves, can always get the following DialogVideoInfo.xml already containing the mods for TvTunes add-on and replace the stock one in Confluence skin.
9.2.2 Location of XML files
- OS X: /Applications/XBMC.app/Contents/Resources/XBMC/addons/skin.confluence/720p
- Windows 8.1: Program Files (x86)\XBMC\addons\skin.confluence\720p
9.3 Skin - TvTunes Active Detection
If a skin wishes to work out if TvTunes is currently playing a theme (and maybe not show something if TvTunes is running), then a check can be made to see if the TvTunesIsAlive value is set:
This can be useful if you wish to stop things like "Music Visualizations" while the theme is playing.
10 Skin - Custom Windows
By Default TvTunes will only activate when in the official "Videos" section. If you have a custom Window in a skin or Addon that you with a theme to be activated for, then you can add the following line to your window-xml file in addition to the previously detailed onLoad action.
For Movie Themes add:
For TV Themes add:
If you have an addon that is migrating between screens and you want to ensure that TvTunes does not have a break in playing, you can set a property on the home screen to force playing of an existing track continues. This can be done by:
xbmcgui.Window( 12000 ).setProperty( "TvTunesContinuePlaying", "True" )
But please ensure you also clear the property when the plugin no longer needs to force the theme to play
xbmcgui.Window( 12000 ).clearProperty( "TvTunesContinuePlaying" )
11 Known Issues
There is currently a known issue that can not currently be fixed, please do not raise an Issue on the google system for this, as there is currently nothing that can be done about this.
When the screensaver is about to start, TvTunes stops playing the theme. Unfortunately this is seen as "activity" so the screensaver time is reset and will not kick in again until the screensaver idle time as expired for a second time (This may be able to be resolved in the Gotham release)
In the official repository there is a fix that needed to be commented out in order to meet with the rules of the official repo. This means that strange behavious can occur if the screensaver starts while playing a TV Theme. There are two methods to resolve this:
- Uncomment the method "_loadScreensaverSettings" in tvtunes_backend.py
- [Recommended] Set the "Fade out after playing for (minutes)" to less than the screen saver value in TvTunes setting
12 Creating Your Own Theme
If a theme is not available on www.televisiontunes.com for your TV Show or Movie, then it is possible to create your own from your video file. You can do this in many ways, but detailed below is one that is free.
First download ffmpeg
Then play your video file and take note of the timestamps of where your TV Theme starts playing and where it stops. Then on the command line you can run the command:
ffmpeg -ss 00:02:00 -t 00:04:00 -i VideoFile.mkv theme.mp3
Where the value after -ss is the start time in the format hh:mm:ss and the value after -t is the duration to extract for. (You can use -to hh:mm:ss after the filename instead of the -t option to specify an explicit stop time)
Once you have generated the theme, then maybe uploading your newly generated theme to www.televisiontunes.com would be a nice thing to do so other users can benefit from it. You may email any songs that you have to their e-mail address email@example.com, including the exact name and year of the tv shows/movies.
If reporting a problem, please also provide a debug log. To do this you need to enable BOTH:
- XBMC logging from the main setting menu
- TvTunes debug from the TvTunes addon settings menu
Please do not paste the log into the forum thread, just link to it.
If you have found TvTunes useful and would like to help support future development and bug fixes, then please feel free to make a small donation. Any donations made will be put towards hardware to enable support and development on different platforms (I can currently only test Windows - however I would like to be able to verify changes on Android and Mac - and this is what donations would go towards)
Please use the link on the top of the TvTunes Forum
Note: Donations will not make any difference to the level of support I will give people on the forum - this project is Open Source - and is completely free!! Also, this plugin is built on top of XBMC - so please donate to that first.