AW: Sam PAL: Alle 3 Titel Jingle
Sweepers, jingles, and special programming
The default playlist rotation scheme in SAM provides for weighted rotation of musical selections using a mini-PAL script inside the "Category Playlist Rotation Logic Module." This can be viewed and changed under SAM's config menu, under "Playlist Rotation Rules." The default rules are as follows:
Cat.QueueBottom('Tracks',smLRP, prEnforceRules);
Cat.QueueBottom('Music (All)',smWeighted, prEnforceRules);
Cat.QueueBottom('Music (All)',smLemmingLogic, prEnforceRules);
In "Auto" Mode (unattended operation), SAM will run each line of this script in order to fill the queue with selections. Notice that the second and third lines do not restrict picking selections from the "Tracks" category. This explains why special programming assigned to a different category than "Tracks" will show up in the queue if one forgets to assign the selections a type besides the default "S" (for Songs == Music).
To play a jingle after every third song, first add all your station jingles to the playlist and assign them type "J". Next, add a line to the playlist rotation module config like this:
Cat.QueueBottom('Jingles (All)',smRandom, prNoRules);
This directs SAM to "grab a random jingle, ignoring any rotation rules, and place it in the queue."
If you have only a few jingles you will want to use the prNoRules directive or else a global rotation rule may prevent a jingle from being played. The default rotation rules are
Do not play the same artist within 120 minutes
Do not play the same song within 240 minutes
The GUI in SAM config makes adding to and changing the playlist rotation module logic really easy, and all kinds of creative things can be dreamt up using custom defined categories.
Oder so?
Cat['Tracks'].QueueBottom(smRandom, EnforceRules);
Cat['Tracks'].QueueBottom(smRandom, EnforceRules);
Cat['Tracks'].QueueBottom(smRandom, EnforceRules);
Cat['Jingles (All)'].QueueBottom(smRandom, NoRules);
oder so vielleicht?
cat['Station IDs (All)'].QueueBottom(smRandom,EnforceRules);
cat['2005'].QueueBottom(smRandom,NoRules);
cat['80'].QueueBottom(smRandom,NoRules);
cat['90'].QueueBottom(smRandom,NoRules);
cat['Station IDs (All)'].QueueBottom(smRandom,NoRules);
cat['2000'].QueueBottom(smRandom,NoRules);
cat['90'].QueueBottom(smRandom,NoRules);
cat['Station IDs (All)'].QueueBottom(smRandom,NoRules);
cat['80'].QueueBottom(smRandom,NoRules);
cat['2005'].QueueBottom(smRandom,NoRules);
cat['2000'].QueueBottom(smRandom,NoRules);
cat['Station IDs (All)'].QueueBottom(smRandom,NoRules);
cat['2005'].QueueBottom(smRandom,NoRules);
cat['80'].QueueBottom(smRandom,NoRules);
cat['90'].QueueBottom(smRandom,NoRules);
cat['Station IDs (All)'].QueueBottom(smRandom,NoRules);
cat['2000'].QueueBottom(smRandom,NoRules);
cat['80'].QueueBottom(smRandom,NoRules);
cat['Station IDs (All)'].QueueBottom(smRandom,NoRules);
cat['2005'].QueueBottom(smRandom,NoRules);
cat['80'].QueueBottom(smRandom,NoRules);
cat['90'].QueueBottom(smRandom,NoRules);
cat['Station IDs (All)'].QueueBottom(smRandom,NoRules);
cat['2000'].QueueBottom(smRandom,NoRules);
cat['80'].QueueBottom(smRandom,NoRules);
Reicht dir das als erstes?