Doch, dazu gibt es einen Haken in der Options-Liste der Playlist. Heißt auf Englisch “Include non-playable items in logging”; deutsche Übersetzung habe ich gerade nicht parat.
Als Befehl stelle ich mir das schwierig vor, da ja nicht ein einzelner String übergeben wird sondern in der Regel ein komplettes PlaylistItem-Objekt mit allen Metadaten, aus denen sich die Log-Interfaces dann die gewünschten Informationen rauspicken.
Per Script geht das jetzt schon, etwa so:
var
item: IPlaylistItem;
begin
item := Factory.CreateDummyPlaylistItem;
item.SetTitle('blabla');
item.SetArtist('blup');
Instance.GetLogger.StartLog(item, 0, '');
end.
Die beiden Parameter 0
und ''
sind die Region, auf der das imaginäre Element wiedergegeben wird (0 = nicht regionalisiert) sowie die ID der Soundkarte (wird intern vom Encoder dafür genutzt, Logeinträge der Player auf den normalen Soundkarten zu unterdrücken, wenn der “High Priority”-Eingang aktiv ist - kannst du einfach leer lassen).
Die Funktion liefert eine Interface-Referenz vom Typ ILoggingTicket
zurück. Die kann man theoretisch in einer Variable ablegen und irgendwann auf nil
setzen - in dem Moment wird dann automatisch der zugehörige Stop-Logging-Eintrag ausgelöst. Verzichtet man darauf, wie im obigen Beispiel, dann wird der Stop-Eintrag sofort ausgelöst.