ich versuche gerade meinem MIDI-Controller mit mairList das “Blinken” einer LED beizubringen.
Ich müsste dazu also eigentlich abwechselnd 0 und 127 rausschreiben.
var
sollBlinken: boolean;
istAn: boolean;
procedure OnTimer;
begin
if sollBlinken then begin
istAn := not istAn;
if istAn then
midiOut(blabla, 127)
else
midiOut(blabla, 0);
end;
end;
procedure OnLoad;
begin
sollBlinken := false;
EnableTimer(500);
end;
procedure OnPlayerStart(PlaylistIndex: integer; PlayerIndex: integer; Item: IPlaylistItem);
begin
sollBlinken := true;
end;
procedure OnPlayerStop(PlaylistIndex: integer; PlayerIndex: integer; Duration: TTimeValue; Item: IPlaylistItem);
begin
sollBlinken := false;
end;
begin
end.
Der Player-Start/Stop steuert also nicht direkt die LED, sondern setzt nur eine Variable - im Timer wird die ausgewertet und immer abwechselnd eine 127 und 0 geschickt.