Encoder Titel Platzhalter

Hallo Zusammen
Wir haben zum teil Sendungen die vorproduziert sind und eine Stunde lang. Die Sendungen sind in der Datenbank mit Datum etc gesepichert als Titel. Also nichts was man als Titel übermitteln möchte. Darum haben wir die Titelübermittlung ausgeschaltet für die Objekte “Show”“Sendung”.
Ich würde aber trotzdem eigentlich gern einen Platzhalter oder sowas platzieren der das Programm nicht unterbricht aber dennoch einen Titel übermittelt. Damit nicht in der folgenden Stunde, eine Stunde lang der Titel des letzten Lieds angezeigt wird. Hatte das mit Platzhalter versucht. Klappt aber nicht. Gibt es da eine andere Lösung?
Info: Die Sendungen werden bei uns mit dem Werbeplaner tool eingeplant. Werbung Block 1 ist richtige Werbung, Block 2 sind Stunden Sendungen.
Danke Gruss

Ich benutze dazu “Stille” und trage die entsprechenden Daten ein sowie die Länge.
Olaf

Eine Verständnisfrage dazu, bitte:

Wenn das Objekt schon fest in der Datenbank besteht, dann kannst du es doch sauber und nach Wunsch taggen.
Worin genau liegt jetzt der Unterschied zwischen den Informationen, die in der Datenbank hinterlegt sind und denen, die du tatsächlich aussenden möchtest?

Der Dateiname (das dürfte das mit den Datumvariablen sein) hat doch zunächst nichts mit den Tags “Titel” und und “Intepret” zu tun, oder übersehe ich da was?

In der Datenbank speichern wir den Titel wie folgt:
Titel: 260 iischi Melodie 20210711
Artist: Vanessa Grand

Im Encoder würde ich gerne Übergeben
Iischi Melodie
Vanessa Grand

Entsteht mit jedem Upload der Sendung ein neues Element in der Datenbank oder wird das bestehende Element jedesmal überschrieben?

Immer neu. Ab und zu werden sendungen wiederholt welche vor einem jahr gemacht wurden. Darum haben wir das datum etc im titel. Macht es einfach beim suchen.

So ein ähnliches Problem habe auch ich gerade. Es ist ja keine Sache, den Titel eines Elementes bei dessen Start nach Belieben anzupassen. Jedoch scheint sich dieser geänderte Titel nicht auf das Logging auszuwirken, da offenbar erst geloggt wird und danach allfällige Änderungen im Titel greifen. Übrigens auch, wenn das Logging mit Verzögerung eingestellt wird. Es scheint so, daß der früh geloggte Inhalt nur bis zu dessen Aussendung zwischengespeichert und nicht dann erst erfasst wird.

Frage an @Torben: Kannst Du das bestätigen, und wenn ja, was könnte eine Abhilfe sein? Wenn nein: was mache ich verkehrt?

Jein.

Tatsächlich passiert alles gleichzeitig, in verschiedenen Threads. Sowohl das Logging als auch die Scriptausführung. Natürlich kann nur ein Thread gleichzeitig auf ein Objekt zugreifen (was mittels Locking sichergestellt wird). Wer aber die Nase vorn hat, ist nicht vorhersehbar.

Im Falle des verzögerten Loggings werden die Element-Eigenschaften schon vor dem Delay ausgelesen, das hast du korrekt beobachtet.

Beides lässt sich nicht ohne weiteres ändern.

1 Like

Eine Verzögerung vor dem Logger …?

“nicht ohne weiteres” = nur mit sehr viel Aufwand und grundlegender Änderung der aktuellen Architektur.

Oje.      

Ließe sich womöglich eine Logging-Variable einführen, die den Text um eine bestimmte Anzahl von Charactern vorne und/oder hinten abschneidet?

Oder gibt es einen Befehl den ich in der Playliste einplanen kann welcher das Logging bedient?

Ich würde sonst mal die Variante mit der Stille testen, wobei das quasi ein kurzes Sendeloch verursacht und nicht sehr schön ist.

Ich habe das mit einem Hintergrundskript gelöst:

var piType: TPlaylistItemType; 
var currentItem: IPlaylistItem; 
var
CurrentItemType: string;
var webtitle:string;
var dabtitle:string;
var updateurl:string;
var coverDownloadCommand:string;
var jsonStringCoverDownload:string;



procedure OnItemStart(Item: IPlaylistItem; Region: byte; OnAir: boolean; UniqueID: string);
begin

CurrentItemType := '';

currentItem := CurrentPlaylist.GetItem(0);
piType := currentItem.GetItemType(); 

case piType of
  pitMusic:        CurrentItemType := 'MUSIC';
  pitVoice:        CurrentItemType := 'VOICE';
  pitNews:         CurrentItemType := 'NEWS';
  pitAdvertising:  CurrentItemType := 'ADVERTISING';
  pitPackage:      CurrentItemType := 'PACKAGE';
  pitJingle:       CurrentItemType := 'JINGLE';
  pitSound:        CurrentItemType := 'SOUND';
  pitStream:        CurrentItemType :=  'STREAM';
  pitTrailer:      CurrentItemType := 'TRAILER';
  pitPromo:        CurrentItemType := 'PROMO';
  pitSponsorship:  CurrentItemType := 'SPONSORSHIP';
  pitSweeper:      CurrentItemType := 'SWEEPER';
  pitDrop:         CurrentItemType := 'DROP';
  pitStationID:    CurrentItemType := 'STATIONID';
  pitBed:          CurrentItemType := 'BED';
  pitInstrumental: CurrentItemType := 'INSTRUMENTAL';
  pitShow:         CurrentItemType := 'SHOW';
  pitOther:        CurrentItemType := 'OTHER';
  pitCustom1:      CurrentItemType := 'CUSTOM1';
  pitCustom2:      CurrentItemType := 'CUSTOM2';
  pitCustom3:      CurrentItemType := 'CUSTOM3';
  
end;



if (CurrentItemType = 'MUSIC') then
BEGIN
webtitle:=currentItem.GetArtist + ' - ' +  currentItem.GetTitle+' / ';

END
else 
if(CurrentItemType = 'STREAM') then
BEGIN
webtitle:='Sie h%c3%b6ren: '+currentItem.GetTitle+' / ';

END
else 
if(CurrentItemType = 'SHOW') then
BEGIN
webtitle:='Sie h%c3%b6ren: '+currentItem.GetTitle+ ' - ' + currentItem.GetArtist+' / ';

END
else 
if(CurrentItemType = 'CUSTOM1') then
BEGIN
webtitle:='fester Titel' + ' / ';

END
else
BEGIN
webtitle:='';


END;

updateurl:='http://DerStreamserver.de:11111/admin.cgi?pass=DasStreamPasswort&mode=updinfo&song='+webtitle + 'Ihr Radio fuer Musik';
HTTPGet(updateurl);

SystemLog('Webradio Titel aktualisiert mit: '+webtitle );


end;

EDIT (Mod) Formatierung

Kurze Frage am Rande: gibt es irgendwo ein Listing der Platzhalter für die Metadaten? Interpret und Titel hab ich, gibt es noch mehr?

https://wiki.mairlist.com/reference:logging_variables

1 Like

Ich hab irgendwie kein Glück bei der Suche im Wiki. Ich war zu sehr auf “Metadaten” fixiert, dass mir “logging” nicht in den Sinn gekommen ist.

Gute Anregung. Das lässt sich ändern. Ich prüfe das im Laufe des Abends.
Schönes Wochenende!