Cues, Markers, Timings and Scripts

As Torben is now working on an SQL-based database/scheduler system for mAirList - I’m a little concerned that a lot of the features within mAirList will not be available for scheduling - be it from the custom scheduler or a 3rd party one using the #mairlist command.

StartNext - Whilst I understand it’s operation, it’s going to cause problems if used on specific files (instead of a “local” playlist segue) - This is due to mAirList not knowing what type of audio it’s playing and having no “rules” within regards to overlaying items between the various CueMarkers. The most obvious would be “never crash the intro/ramp marker” rule, common in most automation systems.

If custom segues were being created in a playlist, and saved to “local” - perhaps a graphical editor would be easier to use - ie: 3 waveforms or bars which can be dragged to visually adjust the segueway. Otherwise, you have to do sums in your head and work out the custom StartNext markers on the previous item…

For instance, if I wanted to customize various song/jingle/song mixes - I could do it very quickly using a visual editor. Having said that, writing my own BASS-enabled prog in VB to read the XML file wouldn’t be rocket-science, would it ?!

Timings
Looking and the new timing tab on the Properties window, I don’t see any way of scheduling a timed item, be it soft or fixed. I appreciate that it can be done in mAirList - but say you’re running 24/7 automated and wish to scheduled things like this ?

Not a whinge… Just some thoughts !

First of all, mAirList’s philosophy is to never adjust any cue markers on its own, unless explicitly told to, or by manual user interaction. This basic behavior will be continue even when mAirListDB is ready - all adjustments to cue markers, overlaps etc. should be done in the scheduler before loading the playlist. mAirList should only playback a fixed, pre-defined playlist. (Of course, you can also use custom scripts on mAirList’s side in order to re-adjust the markers later, but this counts as “user interaction”, I think.) I still believe that this philosophy is favorable, as it prevents unexpected behavior during playout.

When you want to overlap a voice track and the ramp of the subsequent song, this can now easily be accomplished by adjusting the Start Next marker of the voice track so that it conincides with the duration minus the length of the following ramp. Question is - who will perform this adjustment? mAirListDB will certainly be able to do this automatically (based on the track information stored in the database), but a third-party scheduler will certainly not. It would however be easy to write a script for this purpose, given that this script is able to tell a voice track from music. This could be done by the means of an entry in the user-defined properties, or according to a special “voice track” option I might introduce.

Talking about importing playlists from 3rd party schedulers, the problem is that those only support M3U playlists, which (at this time) cannot store all of the information found in mAirList XML files. You could still save all fixed properties in the ID3 tag or MMD file (both of which are read when importing from M3U), but playlist-specific cue points etc. cannot be implemented in this way. Perhaps we need to extended the #mAirList syntax for this purpose.

Torben

Edited: When you want to overlap a voice track and the ramp of the subsequent song, this can now easily be accomplished by adjusting the Start Next marker of the voice track so that it coincides with the duration minus the length of the following ramp. Torben

You’re right on the money with this comment, which is something I’m most interested in.

@ Charlie, re graphical interfaces, are you visualising something along the lines of Simian’s VT editor?

“Usual” rules about moving items and overlapping on other/most systems is: Segue according to in/out/ramp markers, but never cross a ramp/vocal point unless the segue is overridden. When scheduling dry/sweeper items (that would naturally play over an intro), one of the ways of determining how they overlap is to give that track a “segue code”, ie: 00 (no overlap), 01 (play over ramp), and 02 (play up to vocal)… These are just examples, but Code 02 would pose a problem with a 10s sweeper and song with a 59s ramp… It just wouldn’t sound right ;(

I would say that if the scheduler had a sweeper with an 02 code and a song with a long intro scheduled together, it should look at the timings and alter the segue-code to suit, perhaps a global “default” of 01 so that the sweeper and song both start together.

The other thing to remember is that currently, there are no provisions to level-duck within mAirList, so all StartNext markers would have to be wiped if there was nobody in the studio. I’m in favour of being able to create custom overlaps like this, but there needs to be a way of ensuring that all overlaps are clean and not “messy”.

Chris: Something along those lines, yes - Either bars or an actual waveform. The waveform view would be preferable as it would also allow edits by sight, and the placing of markers very quick - possibly without even listening to the audio :wink:

Well, basically, the script would look like this:

[code]var i: integer;

begin
for i := 0 to CurrentPlaylist.GetCount - 2 do
if “Element i is a voice track” then
CurrentPlaylist.GetItem(i).GetCuePosition(ptStartNext).SetValue(CurrentPlaylist.GetItem(i).GetDuration - CurrentPlaylist.GeItem(i+1).GetCuePosition(ptRamp).GetValue);
end.[/code]

We just need to fill that gap up there …

I’ve worked with the French Dalet system, it has a graphical mix edit function. It’s really cool but a feature you don’t find often in other automation (live assist) systems. Too bad, I think. I’m not a programmer, so don’t ask me how to create such a feature, but on the other hand I can’t imagine it’s really hard to do (compared to all the other programming work).
Correct me if I’m wrong :wink:

In fact it works a bit like multitrack editing. A good example of mix editing can be found at www.mixmeister.com. This is a DJ’ing program, but it’s capable of adjusting the mixes between audio items in real time using graphics of the audio signal (waves).

Too bad I can’t find a screenshot of the Dalet mix editor …

I wouldn’t say that Dalet is the only system with a graphical segue editor.

Off the top of my head, Myriad has one, and SAM2 Broadcaster has a ‘global’ one (rather than for individual segues).

I’d expect that most if not all of the Really Expensive systems like WinRadio and ScottSystems will all have graphical segue editors as well.

BFN
CAD

Continuing the segue editor topic. Here i have some screens from “Dyna Mix” - another automation system from Poland.

The concept of “how it looks” may be helpful for Torben. As you can see on Image 2, the “real” adjustments (ramp aka. intro, outro, mixpoints) are made in an additional window. All graphically and very easy.
The first image shows us graphically how the files will be mixed together.