This is a python based cli-app using the python-plex-api to control a plex-client and act like a real TV channel with show scheduling, commercial breaks, movie nights, etc. "Home-Brewed TV Channel(s) for Hackers"
A few more ideas for xml options for scheduling and random movie selection
xclude - basically the same options as xtra but instead of including those options, it excludes them, so xtra="genre:comedy" xclude="genre:christmas" would play a random comedy movie, but never a Chirstmas movie
greater than/less than support for numerical entries in xtra (or xclude) - Some example uses would be selecting a movie to fit within a certain length, say 2 or 3 hours) with duration, selecting a movie above or below a specified viewCount, or selecting a movie above or below a specified rating or audienceRating.
A few scheduling options that would be good to have as well:
nolaterthan=true/false - instead of strict-time this indicates that the scheduled item can start earlier, on interval, but not later than the scheduled time. this would primarily kick in after a variable length media type, such as a movie, allowing the next item to start soon after the movie ends, but not later than scheduled
noearlierthan=true/false - also instead of strict-time this would indicate that the scheduled item can start later on interval, but not earlier than scheduled. this would primarily kick in during cases of double-length tv show episodes pushing back the start time, but preventing it from starting any earlier than scheduled, no matter what time the previous item ends
overlap-max - okay, i know this one is in the xml but not hooked up, and probably on your radar, but i wanted to include it here as well. basically with this feature, if a show, set with either strict-time=false or the above noearlierthan=true would not be scheduled if it's start time, following the previous media and interval, exceeds the specified value. So if I have a movie that runs 25 minutes past the start of the next scheduled item, and the overlap-max value is set to 25 or lower, the script would instead not schedule that item.
Currently, if a movie runs long, and pushes back the next show, it may overlap with the next strict-time=true item, causing some issues (in one case, due to a long movie the non-strict scheduled item was scheduled 15 minutes after the next item, cutting it off and leaving a content gap at the end (because the item that moved around was shorter than what it cut off).
That's everything I've thought about recently in terms of scheduling.
A few more ideas for xml options for scheduling and random movie selection
xclude
- basically the same options asxtra
but instead of including those options, it excludes them, soxtra="genre:comedy" xclude="genre:christmas"
would play a random comedy movie, but never a Chirstmas moviegreater than/less than support for numerical entries in xtra (or xclude) - Some example uses would be selecting a movie to fit within a certain length, say 2 or 3 hours) with
duration
, selecting a movie above or below a specifiedviewCount
, or selecting a movie above or below a specifiedrating
oraudienceRating
.A few scheduling options that would be good to have as well:
nolaterthan=true/false
- instead ofstrict-time
this indicates that the scheduled item can start earlier, on interval, but not later than the scheduled time. this would primarily kick in after a variable length media type, such as a movie, allowing the next item to start soon after the movie ends, but not later than schedulednoearlierthan=true/false
- also instead ofstrict-time
this would indicate that the scheduled item can start later on interval, but not earlier than scheduled. this would primarily kick in during cases of double-length tv show episodes pushing back the start time, but preventing it from starting any earlier than scheduled, no matter what time the previous item endsoverlap-max
- okay, i know this one is in the xml but not hooked up, and probably on your radar, but i wanted to include it here as well. basically with this feature, if a show, set with eitherstrict-time=false
or the abovenoearlierthan=true
would not be scheduled if it's start time, following the previous media and interval, exceeds the specified value. So if I have a movie that runs 25 minutes past the start of the next scheduled item, and theoverlap-max
value is set to 25 or lower, the script would instead not schedule that item.Currently, if a movie runs long, and pushes back the next show, it may overlap with the next
strict-time=true
item, causing some issues (in one case, due to a long movie the non-strict scheduled item was scheduled 15 minutes after the next item, cutting it off and leaving a content gap at the end (because the item that moved around was shorter than what it cut off).That's everything I've thought about recently in terms of scheduling.