mAirList & Powergold automation settings

Hi guys,

I am using Powergold as my scheduler but I need the correct settings for mAirList to generate automation playlists. I’ve played around with it and can’t seem to get it right at all!! Any help!!

Cheers,

Dub

It actually depends of your setup - do you have a mAirListDB running which is in sync with Powergold? Or do you use Powergold as a standalone scheduler?

Here’s a generic Powergold+mAirListDB recipe (requires mAirList 3.1 Professional Edition):

First, you need to edit two of the files in your Powergold data folder, adding a new section in either file:

TITemplates.tem:

[mAirList 3]
FieldDescs=0
Format=1
RecordLines=1
File=F:\nobackup\tmp\powergold\test.txt
Delimiter=,
Qualifier="
Ruler=
DateFormat=1
DateSeparator=/
ArtistDelim=/
ComposerDelim=
FType0=9999
FText0=Map 1
FType1=9999
FText1=Title
FType2=9999
FText2=Artist 1
FType3=9999
FText3=File Name
FType4=9999
FText4=RunTime: Milliseconds
AddFolderID=1
AddFolderOption=1
ModFolderOption=3

automation.aut:

[mAirList 3]
Name Of Automation System=mAirList 3
Type Of Automation File=Fixed Width
Use Command Scheduler=True
Use Voice Tracks=False
Extra Lines Below Songs=0
Apply Clock Note Line And Space Rules=False
Apply Clock Note Printing Rules=False
Notes On Separate Lines=False
Notes On Separate Lines Wrap=False
Output File Name Mask=YYYYMMDD
Output File Name Extension=ptm
Other Output File Name=
SkipNonMusic=1
UseCommandTimeSynch=0
Destination File Path=F:\nobackup\tmp\powergold
Header File=
Global Header File=
Footer File=
Traffic Default Media=
Traffic Default Hard Disk Location=
Traffic Default Source=
End Of Song Delimiter=
TransformModule=
Field 1 Name=Hour (00-23)
Field 1 Width=2
Field 2 Name=Time Separator
Field 2 Width=1
Field 3 Name=Minute (00-59)
Field 3 Width=2
Field 4 Name=Time Separator
Field 4 Width=1
Field 5 Name=Second (00-59)
Field 5 Width=2
Field 6 Name=Character String
Field 6 Character String="" ""
Field 6 Width=3
Field 7 Name=Map 1
Field 7 Width=15
Database Filename=music.txt
Hours To Create Monday=111111111111111111111111
Hours To Create Tuesday=111111111111111111111111
Hours To Create Wednesday=111111111111111111111111
Hours To Create Thursday=111111111111111111111111
Hours To Create Friday=111111111111111111111111
Hours To Create Saturday=111111111111111111111111
Hours To Create Sunday=111111111111111111111111

To synchronize the mAirListDB library with Powergold:

  • Open mAirListDB and save the library to a text file using “Database -> Export -> Export Entire Library”. Select “Powergold import file” as the file type.

  • Open Powergold and go to “Database -> Import -> From a Text File”

  • Under “Select Text File Playlist” choose “mAirList 3”.

  • Set a few options: “Select Text File Import Mode” to “Modify/Add if not existing”, “Match Field” to “Map1”. Leave all other options unchecked.

  • Click “Select Import File” and choose the .txt file you created from mAirListDB.

  • Click “Perform the Text File Import”

Importing logs created by Powergold into mAirListDB:

  • In Powergold, click “Automation” and go to the “Setup” tab.

  • Under “Name of Automation System”, select “mAirList 3”.

  • Choose an appropriate directory for the output files.

  • Go to “Date/Hour Selection” and select some period to export.

  • Click “Create File”. Powergold creates a *.ptm (“Powergold-to-mAirList”) file for each day you selected

  • Open mAirListDB, go to the “Playlist” tab and select “Import -> Multiple Playlists”.

  • Choose the *.ptm files you just created.

  • mAirListDB loads the playlists and displays the “Import Playlists” dialog.

  • In that dialog, select the first day and hour as needed, and set splitting to “Fixed time”.

  • Click apply/generate, and then OK to save the playlists into the database.

Thanks for the help! I’m using mAirList Community Addition though, will this work?

mAirListDB doesn’t exist in Community Edition.

You would need a Personal or Professional Edition licence to be able to use mAirListDB.

You can download a time-limited demo licence for those for free to allow you to evaluate mAirListDB, but to continue using it after that, you would need to pay for a licence.

BFN
CAD

But surely I can generate an m3u on Powergold that would work with mAirList??

Sure. But you need to maintain the filenames of all items within Powergold. (If I remember correctly, there is no “filename” field in Powergold, but you can use one of the custom fields, I guess.)

By the way: Please note that the Community Edition is for personal, non-profit use only.

An M3U within Powergold is quite simple, but you need to ensure your Note and Command fields are OK for adding the BREAK, COMMAND, DUMMY events alongside the music and jingles. I would suggest DUMMY items exist as Notes and everything else as a Command. There are 2 fields with regards to actual file locations: HardDiskLocation and FileName but the field sizes are quite small (50 chars, from memory). As Torben says, a Custom Song Field is a better place for a long-form filename (200 char): M3UPath is a good name to call it :slight_smile:

If you have a Powergold database that you need to append data to (such as the M3U path or Chart Year etc), you can set up a new import template and assign those fields. The Map1 or Cart field are the ones to compare against (using Add New/Modify). This is a very useful way of slipstreaming data into an existing library.

The following extract from automation.aut may be of use:

[mAirList] Name Of Automation System=mAirList Type Of Automation File=Other Delimiter= Use Command Scheduler=False Use Voice Tracks=False Extra Lines Below Songs=0 Apply Clock Note Line And Space Rules=False Apply Clock Note Printing Rules=False Notes On Separate Lines=False Notes On Separate Lines Wrap=False Output File Name Mask=DDMMYY Output File Name Extension=m3u Other Output File Name= SkipNonMusic=0 UseCommandTimeSynch=0 Destination File Path=C:\PLAYLISTS Header File= Global Header File= Footer File= Traffic Default Media= Traffic Default Hard Disk Location= Traffic Default Source= End Of Song Delimiter= TransformModule= Field 1 Name=Hard Disk Location Field 1 Width=0 Field 2 Name=Character String Field 2 Character String="\" Field 2 Width=1 Field 3 Name=Artist Field 3 Width=0 Field 4 Name=Character String Field 4 Character String=" - " Field 4 Width=3 Field 5 Name=Title Field 5 Width=0 Field 6 Name=Character String Field 6 Character String=".mp3" Field 6 Width=4 Note Field 1 Name=Character String Note Field 1 Character String="#mAirList DUMMY " Note Field 1 Width=16 Note Field 2 Name=Run Time Seconds Note Field 2 Width=0 Note Field 3 Name=Character String Note Field 3 Character String=" " Note Field 3 Width=1 Note Field 4 Name=Note Text Note Field 4 Width=99 Command Field 1 Name=Character String Command Field 1 Character String="#mAirList " Command Field 1 Width=10 Command Field 2 Name=Miscellaneous Field Command Field 2 Width=0 Database Filename=music.txt CID0=1 FID0=1 CID1=2 FID1=2 CID2=3 FID2=3 CID3=5 FID3=5 CID4=6 FID4=6 CID5=7 FID5=7 CID6=8 FID6=8 CID7=9 FID7=9 CID8=9 FID8=10 CID9=9 FID9=11 CID10=9 FID10=16 CID11=9 FID11=17 CID12=9 FID12=18 CID13=10 FID13=12 CID14=10 FID14=13 CID15=10 FID15=14 CID16=10 FID16=15 CID17=11 FID17=19 CID18=11 FID18=20 CID19=11 FID19=21 CID20=11 FID20=22 CID21=11 FID21=23 CID22=11 FID22=24 Hours To Create Monday=111111111111111111111111 Hours To Create Tuesday=111111111111111111111111 Hours To Create Wednesday=111111111111111111111111 Hours To Create Thursday=111111111111111111111111 Hours To Create Friday=111111111111111111111111 Hours To Create Saturday=111111111111111111111111 Hours To Create Sunday=111111111111111111111111

For the initial import of mAirList data, the following script may be of use: (sorry, it’s a v2 script!)

[code]// mAirList to Delimited File v1.2 - 21st September 2009
// by Charlie Davy
//
// This script exports the mAirList information to a delimited text file
// My delimiter is the ¬ character as there is no likelihood of it appearing in a song string!

// I use this script to merge my mAirList data into the ID3 tags of my songs via MP3Tag
// MP3Tag allows you to tag files from a text file, eg:
// %artist%¬%title%¬%cue%¬%intro%¬%SecTone%¬%segue%¬%end%¬%comment%
// The ARTIST, TITLE, CUE, INTRO and SEGUE fields are directly compatible with StationPlaylist (APE)
// The ARTIST, TITLE, INTRO, SecTone and END fields are directly compatible with AudioEnhanceDPS (ID3)

// This allows you not only to keep a fixed record of song timings within your MP3 file, but also allows
// the data to import into a couple of popular playout applications.

const
Delimiter = ‘¬’; // this character works best, I think!
MyFileName = ‘C:\mAirList\mAirList Export.txt’; // change this to reflect your own settings

var
CueIn: LongInt;
FadeOut: Int64;
i: integer;
Ramp: LongInt;
RampTest: LongInt;
SecTone: Int64;
sl: TStringList;

begin
sl := TStringList.Create;
for i := 0 to CurrentPlaylist.GetCount - 1 do

begin

// Checks the Ramp values and ensures that the highest Ramp is used

Ramp := CurrentPlaylist.GetItem(i).GetCuePosition(ptRamp1).GetValue;
RampTest := CurrentPlaylist.GetItem(i).GetCuePosition(ptRamp2).GetValue;

if RampTest > Ramp then
	Ramp := RampTest;
	RampTest := CurrentPlaylist.GetItem(i).GetCuePosition(ptRamp3).GetValue;

if RampTest > Ramp then
	Ramp := RampTest;

// Convert cue points into milliseconds

CueIn := CurrentPlaylist.GetItem(i).GetCuePosition(ptCueIn).GetValue / 10000
FadeOut := CurrentPlaylist.GetItem(i).GetCuePosition(ptFadeOut).GetValue / 10000
Ramp := Ramp / 10000
SecTone := CurrentPlaylist.GetItem(i).GetDuration - CurrentPlaylist.GetItem(i).GetCuePosition(ptFadeOut).GetValue
SecTone := SecTone / 10000

// Create the delimited string - CueIn is there twice as we want to import it into both the %cue% and %cue in% ID3 tags

// All details…

// sl.Add(CurrentPlaylist.GetItem(i).GetArtist + Delimiter + CurrentPlaylist.GetItem(i).GetTitle + Delimiter + IntToStr(CueIn) + Delimiter + IntToStr(CueIn) + Delimiter + IntToStr(Ramp) + Delimiter + IntToStr(SecTone) + Delimiter + IntToStr(FadeOut) + Delimiter + CurrentPlaylist.GetItem(i).GetEndType + Delimiter + CurrentPlaylist.GetItem(i).GetComment);

// Cue Points only…

sl.Add(IntToStr(CueIn) + Delimiter + IntToStr(CueIn) + Delimiter + IntToStr(Ramp) + Delimiter + IntToStr(SecTone) + Delimiter + IntToStr(FadeOut) + Delimiter + CurrentPlaylist.GetItem(i).GetEndType);

end;

// Save the file

sl.SaveToFile(MyFileName);
sl.Free;

SystemLog('Saved delimited file to ' + MyFileName + '...!');

end.[/code]

To dublinradio:

Just to clarify what Torben was saying, you do need to purchase a mAirList licence for any broadcast use, including any kind of club or mobile disco DJing, Internet-only streaming, and community/student/RSL radio stations.

If your station is in the latter category, Torben can probably offer you a reduced price if you can provide him with sufficient proof that you are not running any kind of ‘commercial’ operation.

BFN
CAD