{Важно! Настроить запуск скрипта в Планировщике на 10 сек. раньше чем указано здесь!} var P : TPlayer; var Song : TSongInfo; var strFile, strPath, strJingle : String; {------------------------------------------------------------------------------} strPath := 'C:\CLOCK\'; // Путь к папке, где лежат отбивки часов strJingle := 'C:\CLOCK\start_hour.mp3'; // Путь и название джингла после отбивки часов {------------------------------------------------------------------------------} PAL.Loop := False; // Одноразовый цикл работы (потому, что используем Планировщик) {------------------------------------------------------------------------------} PAL.WaitForTime('XX:59:15'); // Запускаемся в конце каждого часа. {------------------------------------------------------------------------------} {--}ActivePlayer.FadeToPause; // Ставим активный плеер на паузу {------------------------------------------------------------------------------} {--Определяем название файла с нужными часиками. Формат имени файла XX-XX.mp3--} strFile := strPath + FormatDateTime('hh', now+1/24) + '-00.mp3'; {------------------------------------------------------------------------------} P := Aux1; // через что играть if P <> nil then begin {--}Queue.AddFile(strJingle, ipTop); {--}Queue.AddFile(strFile, ipTop); {--}Aux1.QueueSong(Queue.NextInQueue); {--}Aux1.Play; end; {------------------------------------------------------------------------------} {--}PAL.WaitForTime('+00:00:22'); // 10-22 сек. настроить задержку под длину джингла {------------------------------------------------------------------------------} {--Включение трека в ожидании, через DeckA или DeckB--} {--}DeckA.FadeToPlay; // плавное воспроизведение DeckA {--}DeckB.FadeToPlay; // плавное воспроизведение DeckB {------------------------------------------------------------------------------} {После выполнения, скрипт останавливается до последующего запуска через Планировщик}
strPath := 'd:\Music MP3\iradio\Zastavki\'; // Путь к папке, где лежат отбивки часов strJingle := 'd:\Music MP3\iradio\Zastavki\tchas_otbivka.mp3'; //Путь и название джингла после отбивки часов PAL.Loop := True; P := SoundFX; // Проигрывание файлов **-00.mp3 через SoundFX, а не через деки. PAL.WaitForTime('XX:59:15'); //запускаемся в конце каждого часа. 45 сек - время буферезации, подбираем по свом параметрам, вкусам //strFile := strPath + FormatDateTime('hh', now+1/24) + '-00.mp3'; //определяем название файла с нужными часиками. Формат имени файла XX-XX.mp3 P := Aux1; if P <> nil then begin
if (now >= T['19:59:00']) and // запуск в 20:00 вечера ((DayOfWeek(Now) = Friday)) then PAL.WaitForTime(T['+02:00:00']); // задержка 2 часа от повторного запуска
// ----------------------------------------------------------------- (7-8 сек. фоновый джингл - Желательно из ударных инструментов) Queue.AddFile('C:\hiparad\silent-jingl.mp3',ipTop); // джингл - для красивого эффекта перехода от трека к треку end;
<mount> <mount-name>/ваш_моунт.mp3</mount-name> <password>xxxxxxxx</password> <charset>UTF-8</charset> <fallback-mount>/ваш_моунт.mp3</fallback-mount> <fallback-override>1</fallback-override> </mount>
<?php require("config.php"); // настройка конфигурации $db->open("SELECT songlist.*, historylist.listeners as listeners, historylist.requestID as requestID, historylist.date_played as starttime FROM historylist,songlist WHERE (historylist.songID = songlist.ID) AND (songlist.songtype='S') ORDER BY historylist.date_played DESC",1); $history = $db->rows(); reset($history); list($key, $song) = each($history); PrepareSong($song); //-------------------------------------------------------------------------------------------------- // комбинированные данные: смена переменных на более короткие $artist_title = $song["combine"]; // сейчас играет артист - композиция $picture = $song["picture"]; // данные картинка (Альбом) //-------------------------------------------------------------------------------------------------- echo '<img src="'.$picture.'" alt="'.$artist_title.'" width="160" height="160" />'; // вывод картинки echo "<br>".$artist_title; // сейчас играет: артист - композиция вывод результата на страницу ?>
var Song : TSongInfo; // для функции выключателя по типу S const Filesongtitle = 'C:\www\htdocs\samPHPweb\recordsms.txt'; // Путь к текстовому файлу var UpdSong : TSongInfo; var Banners : TStringList; var LinePos : Integer; {------------------------------------------------------------------------------} var P : TPlayer; var URL : String; // эту строчку пока отключаем //URL := 'http://192.168.0.02/samPHPweb/recordsms.php'; // Путь к файлу PHP {------------------------------------------------------------------------------} PAL.Loop := True; PAL.WaitForPlayCount(1); // запуск скрипта после завершения очередного трека PAL.WaitForTime(T['+00:00:01']); // 1-3 сек. задержка выполнения {------------------------------------------------------------------------------} {функция выключателя сценария по типу S} if ActivePlayer <> nil then begin Song := ActivePlayer.GetSongInfo(); if Song['songtype'] = 'S' then begin // начало выполнения сценария {------------------------------------------------------------------------------} {-- загрузка URL страницы (PHP скрипта) для записи в текстовый файл --} P := SoundFX; // через что играть if P <> nil then begin {--}Queue.AddFile(URL, ipTop); {--}SoundFX.QueueSong(Queue.NextInQueue); {--}SoundFX.Play; // Воспроизведение через Aux1 или SoundFX end; {------------------------------------------------------------------------------} end; end; // конец выполнения сценария {------------------------------------------------------------------------------} // второй сценарий PAL.WaitForTime(T['+00:00:06']); // 6-7 сек. задержка выполнения {функция выключателя сценария по типу S} if ActivePlayer <> nil then begin Song := ActivePlayer.GetSongInfo(); if Song['songtype'] = 'S' then begin // начало выполнения сценария {------------------------------------------------------------------------------} // создаём вывод баннера в эфир {--}UpdSong := TSongInfo.Create; {--}Banners := TStringList.Create; {------------------------------------------------------------------------------} {-- загрузка текстового файла --} {--}if FileExists(Filesongtitle) then // чтение {--}Banners.LoadFromFile(Filesongtitle); // загрузка {--}UpdSong['title'] := Banners[LinePos]; // текст из файла {--}Encoders.SongChange(UpdSong); // вывод через радио-поток {------------------------------------------------------------------------------} end; end; // конец выполнения сценария {------------------------------------------------------------------------------} Banners.Free; // Очистить информацию после кодирования UpdSong.Free; // Очистить информацию после кодирования {------------------------------------------------------------------------------}
var Song : TSongInfo; PAL.Loop := True; Queue.AddFile('C:\jingl.mp3',ipTop); // путь до джингла Song := CAT['CAT (New)'].ChooseSong(smRandom,NoRules); Queue.Add(song,ipTop); PAL.WaitForTime('+00:20:00'); //ожидаем до повтора
// PAL скрипт ничего не выводит, он нужен для очистки, сканирования и заполнения // Настройка: имя категории, путь к папке, время и дату запуска изменить на свои. var P : TPlayer; var OldTime : DateTime; OldTime := Now; PAL.Loop := True; {------------------------------------------------------------------------------} // 1 сценарий время запуска на 1 минуту раньше чем второй if (now >= T['11:43:00']) and (now <= T['11:43:30']) and ((DayOfWeek(Now) = Monday)) then // запускается только в понедельник днём begin {--}Cat['new-music'].Clear; // очистка категории от треков {--}SubDir['C:\new-track'].Rescan; // сканирование папки на наличие треков {------------------------------------------------------------------------------} {--}PAL.WaitForTime(T['+00:01:00']); // 1 мин. ожидания от повторного запуска {--}End; {------------------------------------------------------------------------------} // 2 сценарий время запуска на 1 минуту позже чем первый if (now >= T['11:44:00']) and (now <= T['11:44:30']) and ((DayOfWeek(Now) = Monday)) then // запускается только в понедельник днём begin {--}Cat['new-music'].AddDir('C:\new-track\',False,ipTop); // если найдены треки, заполнить ими категорию //{--}Cat['new-music'].Shuffle; // перемешать треки если нужно {------------------------------------------------------------------------------} {--}PAL.WaitForTime(T['+00:01:00']); // 1 мин. ожидания от повторного запуска {--}End;