okay, jetzt gibts 2 möglichkeiten, das script zu verändern:
das script so ändern, dass der player 3 vom logging ausgenommen wird.
das script so ändern, dass es das flag abfragt, und dann den titel nicht ins file schreibt. dann müsstest du halt immer das flag manuell (oder mmd oder sonstwie) setzen.
Bei Variante 1 müsste man zunächst dafür sorgen, dass die Beiträge auch nur in Player 3 gespielt werden. Am besten über das “Spezialelement”-Flag. Wenn man das erst setzen muss, dann kann man auch gleich NoLogging stattdessen setzen
erstmal vielen dank für eure mühen
ich habs selber gelöst bekommen. ich hab zwei scripte miteinander “vermischt”.
ich hab von flashlighter ein voriges script genommen, was hier im forum gepostet war. da ging es darum das wort “jingle” rauszunehmen. und ich hab da die entsprechenden zeilen rausgenommen und in das nowplaying.txt von torben eingefügt und es klappt wunderprächtig
hab unseren modis die anweisung gegeben ihre vorproduzierten sachen speziell zu benennen im “titel-bereich” der tags
, das wort wird durch das script gefiltert und der titel der vorher gespielt wurde bleibt solange im oddcast/player/auf der hp stehen, bis das nächste gestartet wird, was nicht gefiltert werden soll.
und jetzt das beste daran, nun ist es auch egal im welchen player das zu filternde steht*g
achso, ja, sorry.
obwohl ich es ja nur gemischt hab, gebaut haben es ja torben und du eigentlich
müsst halt nur die drei X in der if-zeile durch das wort ersetzen was gefiltert werden soll.
und halt den text dnach in einer mls-datei abspeichern
###########################################################
procedure OnPlayerStart(PlayerControl: IPlayerControl; Item: IPlaylistItem);
var sl: TStringList;
begin
if (pos(‘XXX’, Item.GetTitle) =0) then begin
sl := TStringList.Create;
sl.Add(Item.GetArtist + ’ - ’ + Item.GetTitle);
sl.SaveToFile(‘c:\NowPlaying.txt’);
sl.Free;
end;
end;
Vielen Dank für das Script. Ich habe es zwar noch nicht zum Laufen gebracht, aber das liegt erstmal daran, dass ich mich noch nicht in Ruhe damit beschäftigen konnte.
Kannst du zu der Cartwall-Instabilität noch etwas sagen, die ich weiter oben erwähnt habe? Wie gesagt, mairlist friert sofort ein, wenn ich in die Cartwall klicke. Musik wird zwar weiter gespielt, aber es ist keine Navigation mehr möglich. Ich verwende den letzten Snapshot, den du gemacht hast um das Datenbank-Problem zu beheben, und habe die Cartwall in einem separaten Fenster (auf dem rechten Monitor). Kann etwas getan werden, um die Cartwall benutzbar zu machen?
Du hast mir ja mal das Script gepostet, um die Datenbank-Playlisten automatisch auf die Stunde zu laden. Es funktioniert noch nicht, ich beschreibe mal was ich gemacht habe:
Ein Textfile mit dem Inhalt
begin
CurrentPlaylist.Assign(Database(0).GetNextPlaylist);
end.
Unter dem Namen loadNextHourPlaylist.mls in mairlist/scripts/database gespeichert
In mairlist den Button “Events” geklickt und dort “hinzufügen” gewählt. Dann
Als Titel “Datenbank-Playlisten automatisch laden” gewählt
Unter “Datum” “jeden Tag” gewählt
Unter “Zeit” “benutzerdefiniert” gewählt und Stunden 0-23 stehen lassen
Bei “Gültigkeitsdauer” “Event läuft ab” nicht angewählt
Bei “Geltungsbereich” “Automation” gewählt
Bei “Aktionen” “Hinzufügen > Script ausführen” gewählt und dort das oben erwähnte Scriptfile ausgewählt, “Variablen-Ersetzung durchführen” gewählt, “Zeitverschiebung” 120 angegeben (damit die Playliste 2 Min vor Ablauf der Stunde geladen werden soll) und bei “Playlist” die Playlist 1 ausgewählt.
Alles mit OK bestätigt, gespeichert und die Event-Verwaltung geschlossen.
Habe ich was vergessen? Es scheint überhaupt nichts zu geschehen, ich habe das Gefühl, dass der Event schon nicht ausgeführt wird, und es gar nicht unbedingt in erster Linie am Script liegt.
Die Variablenersetzung brauchst du hier nicht. Die ist für den Fall da, dass man Zeit-Variablen im Dateinamen verwendet, mAirList aber nicht die aktuelle Zeit, sondern eine “verschobene” nehmen soll, um diese Variablen aufzulösen.
Vermutlich hast du vergessen, die Minuten und Sekunden festzulegen, wann das Script laufen soll. Wen du “benutzerdefiniert” auswählst, musst du alle drei Felder - Stunde, Minute, Sekunde - von Hand ausfüllen.
Nimm doch stattdessen “jede Stunde” und trage ein “um 58 Minuten und 0 Sekunden”. Dann läuft das Event zwei Minuten vor jeder vollen Stunde.
Danke für den Tip, ich habe das entsprechend geändert, wahrscheinlich lag es daran, dass ich bei den Sekunden gar nichts eingetragen hatte. Jetzt scheint es super zu funktionieren.
Gäbe es weiterhin auch eine Möglichkeit
automatisch die aktuell gültige DB-Playlist laden zu lassen beim Wechsel von Assist zu Auto
beim Starten von mairlist automatisch die Eventliste zu laden
das wird wahrscheinlich schwieriger: für den Fall dass es eine Stromunterbruch gibt während der Rechner auf Auto läuft die Playlist zu laden und wieder auf Auto zu schalten
Dafür habe ich schon Verständnis, aber unser Projekt startet in 2 Wochen, wenns bis dann keine Lösung gibt wären wir ziemlich aufgeschmissen… Vielen Dank.
Ich werde sehen, was ich tun kann. Denk aber bitte daran, dass es sich bei mAirList 2.1 um den Entwicklungs-Release handelt, für den ich noch weniger Funktionsgarantie gewähren kann also ohnehin für meine Software.
Da die Cartwall bei allen anderen offenbar problemlos funktioniert (jedenfalls wurden keine Fehler berichtet), liegt das Problem wohl entweder an einer sehr speziellen Konfiguration oder sogar an eurer Hardware. Das erschwert die Fehlersuche ungemein.