Midi-Out Script

Hello,

Have anybody a script, that sends midi-signals to the mixer?
My mAirlist receives signals from my mixer, but i’ll remote the mixer…
Thanks for any help…

year of course. i use midi too. it works brilliant !!

here for example a script, which sends the midi signal, when a player stops:

[code]procedure OnPlayerStop(PlayerControl: IPlayerControl; Item: IPlaylistItem; Duration: int64);

begin

if ((PlayerControl.GetState <> PS_PAUSED) and (PlayerControl.GetCaption = ‘A’)) then begin
MidiOut ( 03, 176, 73, 00 ) ;
end;

end;

begin
end.[/code]

mike

danke Thanks Mercie usw…

:wink:

hi,
short and really usefull script.

But now i have another question which is comming up to this function.
Until i use a single player to on fader the script works great, but how can i deal with cartwall players?
E.g.
start the first cartwall player-> Midi command set fader to fixed value -> Cartwall Player stop -> Midi close the fader channel.

But now i run two or more cartwall layer at same time.
The first stop command would close the fader channel.

So what i’m looking for is a function which get the actual status of a player so i can check for following condition:
If all cartwall players are stopped, then close the fader channel.

So is there a possibility to get the status from a player at each time (if i wanted) independing if this player has a status change or not?

Best regards

Peter

Hi…
ok, i do an work around by another way but it works well.
I count the events and if the result of the events is zero than i know that all cartwall players are stopped.

Here the whole script for all of us and if somebody can use…well, take it.


[sub]//Midi Control for Tascam DM3200 Mixer
//All USB interfaces must be switched on at Mixer Panel
//Tascam support 8 Midi devices where Midi device 4 is for fader control
//to find the correct Midi device number check this in MairList config by recording midi datas and check the device number. Then get the maximum device number out
//by running the Mididevice.mls from Mairlist (should be 6 with device number 8). This means that the MidiIn4 has the device number 6
//(this number can differ to different amounts of Midi devices and channels)

//To check which datas are used for whch fader it is the easiest to recod them in the config file and write down the numbers. Take care, this numbers are in hex, but later on needed in decimal system.
//Following values are specific to one system and should be rechecked
//06 = MidiOut4 (From Tascam Mixer, is the same numer as the MidiIn4)
//184 = Fader 25 (if faders are linked to stereo than it is for fader 25 and 26) (Status from MidiIn check)
//186 = fader 27 (if faders are linked to stereo than it is for fader 27 and 28) (Status from MidiIn check)
//03 = no idea what for, i don’t change it (Data1 from MidiIn check)
//95 = volume around Fader level “-1” (Data2 from MidiIn check)
//Remember: All values will set in deicaml system, but in MidiIn chekc you will see them as hex values.
//**********************************************************************************************************

var

C1: integer;
C2: integer;

//**********************************************************************************************************
//Start / stop normal player and fader control

procedure OnPlayerStart(PlaylistIndex: integer; PlayerIndex: integer);
begin
if PlayerIndex = 0 then
MidiOut ( 06, 184, 03, 95 ) ;
if PlayerIndex = 1 then
MidiOut ( 06, 186, 03, 95 ) ;
end;

procedure OnPlayerStop(PlaylistIndex: integer; PlayerIndex: integer; Duration: TTimeValue);
begin
if PlayerIndex = 0 then
MidiOut ( 06, 184, 03, 00 ) ;
if PlayerIndex = 1 then
MidiOut ( 06, 186, 03, 00 ) ;
end;

//**********************************************************************************************************
//Start cartwall and fader control (at least one cartwall player started then fader up)

procedure OnCartPlayerStart(PlayerIndex: integer);
begin
if (PlayerIndex = 0) or (PlayerIndex = 2) or (PlayerIndex = 4) or (PlayerIndex = 6) or (PlayerIndex = 8) or (PlayerIndex = 10) //Cartwall with odd numbers at GUI
then begin
c1 := c1 + 1;
MidiOut ( 06, 188, 03, 95 ) ; //Fader 29
end;

if (PlayerIndex = 1) or (PlayerIndex = 3) or (PlayerIndex = 5) or (PlayerIndex = 7) or (PlayerIndex = 9) or (PlayerIndex = 11) //cartwall with even numbers at GUI
	then begin
		c2 := c2 + 1;
		MidiOut ( 06, 190, 03, 95 ) ; //Fader 31
	end;

end;

//**********************************************************************************************************
//stop cartwall and fader control (if all cartwall player of one group (even / odd) are off then fader down)

procedure OnCartPlayerStop(PlayerIndex: integer; Duration: TTimeValue);
begin
if (PlayerIndex = 0) or (PlayerIndex = 2) or (PlayerIndex = 4) or (PlayerIndex = 6) or (PlayerIndex = 8) or (PlayerIndex = 10) //Cartwall with odd numbers at GUI
then begin
c1:= c1 - 1
end;
if (PlayerIndex = 1) or (PlayerIndex = 3) or (PlayerIndex = 5) or (PlayerIndex = 7) or (PlayerIndex = 9) or (PlayerIndex = 11) //cartwall with even numbers at GUI
then begin
c2:= c2 - 1
end;

if (c1 = 0)  then 
	MidiOut ( 06, 188, 03, 00 ) ;

if (c2 = 0)  then 
	MidiOut ( 06, 190, 03, 00 ) ;

end;

//**********************************************************************************************************

begin
end.
[/sub]

The script will continued with next functions e.g. recognize the last fader position if position was not off…

So long

Peter