Aller au contenu

Besoin d'aide pour un script PAL complexe de prise d'antenne


radiochris

Messages recommandés

Bonjour à tous,

Je m'adresse aux habitués du codage de script PAL sous SAM3. J'aimerais creer un script pal pour creer une prise d'antenne fluide sous sam. Je commence :

J'aimerais que le script pal ecoute le lundi de 18h00 à 20h00 un stream audio et si il y a un volume audio suffisant qu'il diffuse son contenu à 18h00 jusqu'à 20h00 tout en ayant mis auparavant sur pause la musique en cours qui etait sur le deck a ou b.

Il faut ensuite que le script vérifie qu'il n'y ai pas plus de 5 seconds de blanc sur le stream sinon il relance la musique qu'il avait mis en pause. ENsuite il continu de verifier de 18h00 à 20h00 si le stream a de nouveau du volume sonore, alors il recommence l'opération.

J'espere m'etre bien expliqué et bien que je n'ai que très peu d'espoir de voir une réponse positive quand à cette demande, j'essaie quand même de le demander.

je vous en remercie par avance.

cordialement, chris

Lien vers le commentaire
Partager sur d’autres sites

j'ai trouvé sa :

{ ## Pause Queue on Live DJ Show ~ By Zefie Hosting.

If AutoReconnect is not enabled on the specified encoder,

this script is useless ^.^ ~ Enjoy. }

var P : TPlayer;

var Q : TPlayer;

var encIndex : Integer;

var encStatus : String;

var allEnc : TEncoders;

var ourEnc : TEncoder;

PAL.Loop := True;

PAL.LockExecution;

{ ## Set this to the encoder you want to monitor

This is the only thing you need to edit. Set this to 1 below

your encoder index. For example, if, in your encoder list, your

encoder is 2, set this to 1. }

ourEnc := allEnc[0];

encStatus := ourEnc.Status;

P := ActivePlayer;

Q := QueuedPlayer;

{ ## The encoder is back online, so lets start playing, we'll restart

the song that was playing when we got disconnected, from the

beginning. }

if (encStatus = 'Encoding') then

begin

if Q <> nil then

Q.Play;

end;

if not (encStatus = 'Encoding') then

{ ## The encoder isn't running, so a live DJ is on, or the

broadcast server is down, either way, we'll stop the queue

so that requests aren't lost. }

begin

if P <> nil then

P.Stop;

end;

{ ## Memory leak warning detected a leak here, so lets manually free

these objects, so we dont leak memory ^.^ }

ourEnc.Free;

allEnc.Free;

P.Free;

Q.Free;

PAL.UnlockExecution;

PAL.WaitForTime('+00:00:05');

Si quelqu'un pourrais m'expliquer le "PAL.lockExecution et PAL.UnlockExecution " ?

merci ;)

Lien vers le commentaire
Partager sur d’autres sites

Je ne sais pas si c'est possible ca... Lire une musique ou un message lors d'une déconexion c'est possible, mais reprendre la musique en cours...

Je ne pense pas que le lecteur auxiliaire puisse lire un streaming, auquel cas il serait plutot simple de faire comme suis :

(Ca fait longtemps que je n'ai plus codé en PAL, alors je ne suis plus sûr de l'exactitude des fonctions)

ActivePlayer.Pause;

Aux1.QueueURL("http://tonstream:tonport/");

Aux1.Play;

PAL.WaitForTime["20:00:00"];

Aux1.Stop;

ActivePlayer.FadeToNext;

ActivePlayer.Play;

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...