Add-on:LazyTV

From Official Kodi Wiki
Jump to: navigation, search

LazyTV

See this add-on on the kodi.tv showcase

Author: KodeKarnage
Website: link
Type: Program
Repo: Kodi.tv repo v19
Kodi.tv repo v18
Kodi.tv repo v17

License: GPL v3.0
Source: Source code
Summary: LazyTV
Home icon grey.png   ▶ Add-ons ▶ LazyTV
Attention talk.png Need help with this add-on? See here.

You have a huge library of TV shows and you havent viewed half of it. So why does it feel like such a chore to sit down and watch something?
LazyTV is here to free you from your battles with indecision, instead letting you lean back and soak up content. With one click you can be channel-surfing your own library, or have what you probably want to watch pop up in a single window.
Afterall, you know you want to watch TV, so why do you also have to decide what specifically to watch?

Unlike a smart playlist or skin widget, LazyTV doesnt just provide the first unwatched episode of a TV show. It provides the first unwatched episode AFTER the last watched one in your library. A small, but important, distinction.

LazyTV offers two main functions:
The first creates and launches a randomised playlist of the TV episodes. And not just any episodes, but the next episode it thinks you would want to watch. You also have the option to blend in your movies (both the watched and the unwatched) to complete the channel-surfing experience.
The second main function populates a window with the next available episode for each of your TV Shows. One click and your viewing menu is there, immediately.

Combine either of the main functions with a playlist of preselected shows to customise your experience even further.
Some TV shows, like cartoons or skit shows, can be viewed out of episodic order. So LazyTV gives you the ability to identify these shows and treat them differently. Those shows will be played in a random order.

LazyTV also offers two minor functions that extend beyond the addon itself:
The first is an option to be notified if you are about to watch an episode that has an unwatched episode before it. This function excludes the TV shows identified as able to be watched out of order.
The second option posts a notification when you finish watching a TV episode telling you that the next show is available and asks if you want to view it now.


LazyTV contains a service that stores the next episodes' information and monitors your player to pre-empt database changes. This is my attempt to make the addon more responsive on my Raspberry Pi. The Pi still takes a while to "warm-up"; a full refresh of the episode data (which occurs at start-up and on a library update) takes about 30 seconds for my ~100 show library*. However, the show list window opens and the random player starts in less than 2 seconds.

  • The same update takes 2 seconds on my laptop with its i5 processor.

1 Installing

To install this add-on you must do so from the Add-on manager from within Kodi by going to

  1. The home screen
  2. Add-ons
  3. Download
  4. Program Add-ons
  5. LazyTV
  6. Install

2 General Settings

2.1 Primary Function

This determines what the default action is when you launch the LazyTV addon. LazyTV maintains a record of the first unwatched episodes after the last watch episodes for every TV show in your XBMC library, or a sub-set that you have selected. This option lets you decide what LazyTV should do with those records. See Choose shows by ... for more information on creating that sub-set of TV Shows.

2.1.1 Create and launch randomised playlist

Select this option if you want to just start playing the next available episode of a random TV Show. This is the option you want if you want to watch something, but dont necessarily want to choose what that is. Not interested in the show that starts playing? Just click XBMC's Next Playlist Item button to jump to a new show. This will have the same feel as flicking through TV channels, looking for something to watch. Its a channel surfing function. Settings for this "Player" option can be found on the Player Options page in the Settings.

2.1.2 Produce a list of 'next episodes' for each TV series

Select this option if you want to view a list of the next available episodes of each TV show. This is the option you want if you want to watch something, and want to choose specifically what that is. Settings for this "List" option can be found on the List Options page in the Settings.

2.1.3 Let me choose on launch

Select this option if you want to choose between the two functions above when LazyTV is launched.

2.2 Only populate with selected TV Shows

LazyTV allows you to filter the TV Shows that will be shown in the List or played with the Player. Click this option to enable the filter.

2.2.1 Choose shows by ...

There are two methods to apply a TV Show filter.

2.2.1.1 Manual Selection

Choosing Manual Selection reveals the Click here to select TV Shows button. When you click this button a list of all your TV Shows will appear on screen and you can select the specific shows you want to use in the List or Player.

2.2.1.2 Smart Playlist

XBMC has an very good smart playlist function which allows you to apply a set of rules to limit the results from the video database. You can create rules covering everything from Genre to MPAA Rating. You are also able to stack rules to get even more sophisticated show lists. LazyTV can incorporate that show list into the List view and Player.

2.2.2 Playlist Selection Method

This option allows you to choose between two methods of smart playlist selection.

2.2.2.1 Choose a default Playlist

This allows you to set the default smart playlist for LazyTV to use. LazyTV will use this playlist automatically when the addon is launched.

2.2.2.2 Let me choose on launch

This option means that you will be asked which playlist you want to filter by when you launch LazyTV. If you have multiple playlists and want to alternative between them, then this is the option you may prefer.

2.3 Select random-order shows

Some TV shows, such as documentaries and cartoons, can be watched out of chronological order. This means that even if you have watched the last episode in the series, you could still want to view an unwatched episode from earlier in the season. By identifying some shows as suitable to watch out of order, you can make sure you are able to view them all. Click on this option to be presented with list of all the TV Shows in your library, and select the ones which can be shown out of order.

2.4 Create and maintain smart playlist

Selecting this option will instruct LazyTV to create and maintain a smart playlist with all of your next available episodes. LazyTV will keep the smart playlist synchronised with database and watched status updates. (Requires restart of LazyTV service.) This playlist can then be used on its own or in conjunction with other addons such as PseudoTV. The LazyTV smart playlist can also be used as a criteria in other smart playlists; simply include a rule in those playlists that says "Playlist IS LazyTV".


3 Player Options

These are the settings that specifically relate to the Player primary function.

3.1 Number of shows in playlist

Simply put, this option determines how many episodes you would like to add to your Player playlist. Once one show finishes, the next one will start automatically.

3.2 Allow multiple episodes of same TV Show

Selecting this option will permit LazyTV to add more than one episode of the TV Show to the playlist. Be careful though. While the episodes will be played in chronological order in the playlist, if you skip the first episode the second one is still in the list.

3.3 Include episodes from unwatched TV series

Select this option if you want to include Season 1 Episode 1 of TV Shows you havent started watching yet.

3.4 Begin partially watched episodes from their resume point

Normally when you start to watch an episode you have already partially viewed, XBMC will ask if you want to start from the beginning, or from where you left off. When an episode is played from a playlist, however, XBMC does not present you with this choice. Selecting this option partly reinstates that functionality by having the LazyTV service check whether the episode is partially watched and telling XBMC to always start from the resume point.

3.5 Display episode details when played

Selecting this option will mean that when an episode starts, LazyTV will post a notification on-screen to tell you the name of the show, and the season and episode numbers. This allows you to quickly see whether you are in the mood to watch that show, or want to see what else is on.

3.6 Include unwatched movies

This option allows you to "roll in" unwatched movies from your library. If you are channel surfing, you don't necessarily know if you want to watch a TV show or a movie. With this function LazyTV gives you that option.

3.7 Include watched movies

This option allows you to roll in watched movies from your library.

3.8 Start watched movies at random time

This function helps simulate the channel surfing experience. How many times have you been flicking through the channels and come across a movie already half way finished. You have seen the movies dozens of times, but you still end up watching that movie right through to the very end. (For me it always My Big Fat Greek Wedding.) (I dont know why.) (Shut up.)

3.9 Movie weight

While the playlist is always random, this option gives you some control over the proportion of movies to TV shows in the playlist.

3.10 Ignore TV shows (movies only)

And this last option change the LazyTV random TV Show player function into a random Movie player function.


4 List Options

These are the settings that specifically relate to the List primary function.

4.1 Limit the number of shows

On most systems the list will populate fairly quickly. But some lower end gear may struggle. If you prefer a snappy interface you can reduce the number of episodes shown in the list to help speed things up.

4.2 Number of Shows to display

Set the number of shows the List will display.

4.3 Sort by ...

LazyTV offers five different ways to order the episodes in the List.

4.3.1 Show Name

Sort the episodes alphabetically by the TV Show name.

4.3.2 Last Watched

Sort the episodes by the date that the previous episode was watched.

4.3.3 # Unwatched Episodes

Sort the episodes by the number of unwatched episodes are left in the TV Show.

4.3.4 # Watched Episodes

Sort the episodes by the number of episodes in the TV Show that have been watched.

4.3.5 Season

Sort the episodes by Season number.

4.3.6 Reverse Order

Reverse the order of sorting.

4.4 Exclude random play shows

Instructs LazyTV to not display the TV Shows that have been identified as suitable for being watched out of chronological order.


5 Other Settings

LazyTV has a number of pretty cool non-core functions. The next episode prompt and notification functions also apply to shows played outside of LazyTV.

5.1 Prompt to watch next available episode

This function waits until you have finished watching an episode, then checks to see whether a next available episode exists, and if it does LazyTV will ask if you want to watch it now.

5.2 Prompt duration (max = do not close)

Sets the number of seconds the prompt will be displayed. The prompt will automatically close when the time expires and will at that time execute the default action.

5.3 Default action

This option allows you to select what the default action of the prompt will be when the time expires.

5.4 Notify when previous episode is available

This function warns you when you are about to watch an episode of a TV Show that has an unwatched episode before it. This function aims to reduce the risk of spoilers from accidentally watching the wrong episode of a TV Show.

5.5 Enable logging for Testing

This option switches on LazyTV logging. This is necessary to be able to debug problems or script errors. If you experience a bug, switch on Logging, repeat the bug, grab the XBMC.log file and send it to the addons author.

5.6 Clone LazyTV Now

This option instructs LazyTV to create a copy of itself. It will prompt you for the name of the clone. You can create as many clones as you like, but they must all have different names. Importantly, the LazyTV parent and LazyTV clone can have different settings. Each clone is distinct, but shares the parents LazyTV service. Cloning also allows you to have multiple LazyTV entries in the Home menu or launcher of various skins.

5.7 There are a number of reasons why you might want to clone LazyTV:

  • One clone might have the random Player set as the primary function, while another has the List view.
  • One clone might be filtered using a specific smart playlist, while another clone is filtered using a specific show list.
  • One clone might play a random playlist of TV Shows, while another clone might play a random playlist of movies.

5.8 Copy LazyTV episodes to specified folder. (Script)

This function will instruct LazyTV to take the first 10 episodes that would otherwise populate the List view, and copy them to a folder you specify. The envisioned use case of this function is someone who is going out of town and want to take some of their TV Shows along with them.

5.9 Email +1 to the author (no data is sent)

It really is nice to know that people are using the addon on which I have spent so much time, energy, and hair. Clicking this option will send me an email from your installation of LazyTV that simply says +1, as well as a time stamp so my email client doesnt block them as duplicates. It would be even better if you are able to jump into the thread on the XBMC forums and let me know how you are using or enjoying the addon. Most of the best features and function in LazyTV have come from user suggestions.