SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

You have a question or need an advice about how to do something? Ask it here!
Post Reply
inl_inc
Posts: 76
Joined: 12 Dec 2013 18:42
SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by inl_inc »

I can't figure out how to configure ProppFrexx to allow a program to start slightly ahead of its scheduled time. Screenshots attached with my Scheduler settings and my standard Program settings.

The other day I had an hour long show loaded using a script with a single LoadTrack line. The show was 30 seconds short of a full hour. At the 00:59:30 the track was reloaded and repeated from the beginning for 30 seconds. At which point my next top of the hour program took over.

What is the right combination of settings to allow the next program to start at 00:59:30 (or whatever threshold I set up). I have the early start option selected and show 300 seconds in advance set up in the program ....
pf_pgm_setup.jpg
pf_pgm_setup.jpg (58.14 KiB) Viewed 12611 times
pf_sched_setup.jpg
pf_sched_setup.jpg (105.67 KiB) Viewed 12611 times
User avatar
radio42
Site Admin
Posts: 9139
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by radio42 »

Any TimeUpdateSync is primarily using the given scheduled time.
Meaning the 'Allow StatrEarly' option is only used with regular start types, but not with TimeUpdateSync's.
As such, you can simply adjust the StartTime a bit in advance to allow that with a SoftTimeUpdateSync start type.
inl_inc
Posts: 76
Joined: 12 Dec 2013 18:42
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by inl_inc »

So in other words i should let the end and start time of two back to back programs overlap by a minute or two? Am I understanding this correctly? As an example, program1 runs 14:58 to 16:00 and program2 starts at 15:58 and runs to 17:00, etc?
User avatar
radio42
Site Admin
Posts: 9139
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by radio42 »

Yes, exactly.
A previous program is always stopped with the next one regardless of its defined end time.
inl_inc
Posts: 76
Joined: 12 Dec 2013 18:42
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by inl_inc »

Sorry to revive this topic - but the suggested solution of starting each program at 1 minute to the hour did not produce desired results. Mainly because TryEnsureExactLength function is too good - and the result was that 90% of my programs did end up starting at 1 minute to the hour.

I'm attaching a screenshot of the playlist that just happened. Each program is 1 hour long and starts at the top of the hour. In the example below, the script tried to find a track of 58 seconds long to place in the 20:59:02 position - which of course it couldn't find ... so the result was a 4 minute track being queued, throwing off the next hour's clock by 3 minutes. I would never cutoff a song once it started playing - that's out of the question for me (i.e. MaxStartDelay is set to 6 minutes to prevent this from happening).
example
example
program_scheduler.jpg (49.48 KiB) Viewed 12467 times
I would really love to have the ability to allow the next program to start early (based on user defined time threshold). In this case, a 1 minute early start threshold would have worked. When the script was not able to find a track of 58 seconds long to complete the hour it should have started the next program at 20:59:02 instead of pushing back the next hour by full 3 minutes. Again the threshold should be user defined (i think 1-2 minutes would work best given that most radio edits are around 3 minutes in length).

I'm a perfectionist when it comes to programming. Granted, this scenario occurs fairly rarely, however this time it really bothered me because it screwed up the next hour's playlist that was timed to be exactly 1 hour long (dropped the final track).
inl_inc
Posts: 76
Joined: 12 Dec 2013 18:42
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by inl_inc »

and here's an example 2 hours later where the scheduler worked perfectly. 2:56 track was queued to play at 22:59:59. However, even though the next hour is showing as being scheduled to start at 23:02:55 - it actually started at 22:59:59.
program_scheduler2.jpg
program_scheduler2.jpg (38.13 KiB) Viewed 12464 times
User avatar
radio42
Site Admin
Posts: 9139
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by radio42 »

The suggested solution was specific to the problem you described above! In which it seems you only used a single LoadTrack script-line.
Of course you could have defined more script-lines and set the Scripts Loop-Line to 2, so that the 1st LoadTrack script-line is not repeated.

Now it seems, that you are using the TryEnsureExactLength program option with a different script, and also use the TimeUpdateSync StartTime.

However, I am not sure how and what you defined with all the other program scheduler entry options?!
Note, that there is already an "Allow Start Early" option and a Max. Early and Max. Late option.
This should give you already all options you are asking for. So I am not sure what exactly is missing here?

Note, that in such case (when using the Allow Start Early option), there would be NO need to align the Start/End Time at all! As the idea of the Allow Start Early option with a Soft start type is actually, to define exactly how 'soft' a program might start.
I have attached the options below again...


Note:
That the TryEnsureExactLength option uses the program's End time to calculate the ensure exact length option!
As a result you might also adjust the program's End time.
E.g. the End time of the previous program might be 1 minute after the Start time of the subsequent program. However, in that case you might also simply omit the TryEnsureExactLength.

Maybe you can describe in more greater detail what exactly you want to achieve and what is currently not working or missing; as I am uncertain what you exact issue is.


Program's Allow Early Options:

Start/End Time:
The date and time when the program should start.

Mixing Time:
Is the segue time in milliseconds between the current program and the next program (mix in as well as mix out).
A positive value calculates the segue time from the end (cue-out) of the current track of the current playlist track.
Set to 0 to start the program with the 'Next' cue-point of the current track of the current playlist.
Use a negative value to define a fixed fade-out time (for the program's mix-in and mix-out), in this case the segue time is 40% of this fade-out time.

Max. Start Delay:
When a program is defined as soft start (so it doesn't have to start at exactly that time) it might be delayed by this maximum number of seconds.
When a program is about to be started the remaining time of the current track of the current playlist is checked. If the remaining time is less than this maximum delay time, the track will be played til the end before the program is started (which will then result in a delayed program start).
But if the remaining time is greater than this maximum delay time the current track is faded-out immediately and the program start will not be delayed (except a 'Max. Late' value is defined).
Note: Programs defined as fixed start will always start on time.

Show in Advance:
Defines the time in seconds the program is shown in advance of the actual start time (e.g. giving the user time to cancel, delay or edit the program).

Allow Start Early:
If checked the program might start earlier than the actual 'Start Time' if a current playlist track ends just before it, but no longer than the 'Show in Advance' time (resp. the 'Max. Early' time).

Max. Early:
If the program is allowed to start early, this value defines how much early it might start (in seconds).
When set to 0, the 'Show in Advance' time is used (as such, this value should be less).

Max. Late:
If the program is allowed to start Soft, this defines how soft it will start.
Setting the value to 0 is the default, which means, it starts at the end of the currently playing track, if its remaining time is less than the 'Max. Start Delay' - else it will start early immediately.
If the value is greater than 0, the program starts at latest this number of seconds late. This means, the 'Max. Early' and 'Max. Late' time frame define the soft starting time range and a currently playing track is at least playing this long and is only started early if it ends in that range - else it is started this late.
inl_inc
Posts: 76
Joined: 12 Dec 2013 18:42
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by inl_inc »

Thanks for your always prompt replies. You are correct, I have switched to using playlists for DJ shows instead of full mixed down shows in a single WAV file.

I'll try to better explain what I'm looking for. First some background: I use 1 hour long programs to fill the clock - so each day has 24 programs defined. I use Soft TimeUpdateSync as I like to see everything that was previously played + transitions between programs are a lot smoother this way. Screenshot below shows settings I'm using in the scheduler:
pgm_settings.JPG
pgm_settings.JPG (43.89 KiB) Viewed 12445 times
I want each program to start at HH:00 (or as close as possible) - this way top of the hour IDs are played on time. I want each program to be 1 hour long (or again as close as possible). With the exception of special show programmed playlists, the rest of the clock is filled by scripts that randomly select tracks. After you added the TryEnsureExactLength option - 95% of the time the programs are perfect hours and start exactly at the top of the hour.

The problem I'm running into (best illustrated on the previous screenshots) is when the Script is unable to find a short track to fill the hour (e.g. trying to get a song to start at 59:00). At this point the script just picks another track and the next program is pushed back. What I want to happen is that when TryEnsureExactLength track cannot be found have the next program automatically start a bit early. Maybe the problem lies with my settings? I thought that the Show ### seconds in advance setting would achieve that (have it set at 5 minutes) but that doesn't seem to do the trick.

The outcome I'm looking for is:
- script runs with TryEnsureExactLength option
- if the script is unable to find a final track to complete the hour (e.g. song that is selected overflows into the next hour), and the last song to be picked is being started within last 90 seconds of the hour (be great if this threshold was user adjustable) - i want the next program to take over and start slightly early
- alternatively, if TryEnsureExactLength option doesn't find the right track - then it should select the next shortest available track (this way the overrun into the next hour will be minimized)
inl_inc
Posts: 76
Joined: 12 Dec 2013 18:42
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by inl_inc »

Got it working - by adjusting Max. Early. Thanks Bernd.
User avatar
radio42
Site Admin
Posts: 9139
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: SoftTimeUpdateSync and Starting Program Ahead of Scheduled Time

Post by radio42 »

Please see the described setting options above!
What you describe can simply be achieved by these settings.
If the TryEnsureExactLength option doesn't find the right track, it already selects the next shortest track, just as you described it.
So I am not sure what issue you are having?

Just set the 'Show In Advance' value to 90 sec.
In addition you might play with the 'Max. Late' and 'Max. Start Delay' value.
As you don't want in any case a track to be cut off, you need to set both value high enough (e.g. to 600)!
But by using a shorter 'Max. Late' value you might define a better time frame.
E.g. as the program might start 90 sec. in advance, you might set 'Max. Late' value to 120 sec. in order to ensure, that the maximum delay is 120 sec.; and if that's the case, such overscheduled track is at least played for 3 minutes (90+120sec.).

So please play with the above settings and I am sure you might achieve exactly what you are looking for.

Post Reply