Quick Sign In:  

Forum: German Forum

Topic: mit DOS: Aktuellen Titel zur Weiterverarbeitung in Datei exportieren

This topic is old and might contain outdated or incorrect information.


Gelegentlich wurde gefragt, wie man den aktuellen Titel in eine Datei exportieren kann (um ihn mit einer Software abzugreifen, zB um ihn anzuzeigen; bei uns wurde der aktuelle Titel als Datei benötigt, um ihn dann dort von einer RDS-Software abzugreifen um ihn dann in der RDS-Kennung eines Senders auszustrahlen).

Das Ganze ist mit einem kleinen "Hack", mit einer kleinen Batch-Datei auf fast jedem Windows-PC sogar mit DOS-Bordmitteln möglich, die einfach alle 10 Sekunden die letzte Zeile der Virtual-DJ-Datei Tracklist.txt ausliest (Virtual DJ erstellt dort eine laufend aktualisierte Liste aller gespielten Titel) und in eine beliebige andere Datei, zB hier: song.txt exportiert.

Zuerst: im Virtual DJ unter Einstellungen - Browser, dort "history delay" von 45 Sekunden (default) auf nur noch 1-2 Sekunden ändern.

Dann untenstehende Batch Datei kopieren (Pfade anpassen!) und starten (egal, ob Batch-Datei oder Virtual DJ zuerst startet):
(USERNAME muss der Name des tatsächlichen Users sein, bzw. man muss ein definiertes Vz einstellen, wo die Tracklist.txt zu finden ist)
hier die Batch-Datei:

@echo off
echo Abfrage der letzten Zeile von tracklist.txt alle 10 Sekunden
echo (ggfs. abzubrechen mit STRG + C)
:anfang
set "LetzteZeile="
for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "C:\users\USERNAME\documents\virtualdj\history\tracklist.txt"') do set "LetzteZeile=%%j"
set LetzteZeile=%LetzteZeile:~8,64%
echo\%LetzteZeile%> C:\users\USERNAME\song.txt
timeout /t 10 /nobreak > nul
goto anfang

(Funktionsweise: mit einer for-next -Schleife Letzte Zeile in tracklist.txt finden, diese komplett einlesen, die ersten 8 Zeichen weg (da ist nur Uhrzeit + Doppelpunkt drin, die stören meist nur) , den String in song.txt schreiben und dann nach 10 Sekunden wieder diese Routine durchlaufen.

Die Tracklist.txt und die anderen Dateien dort im Vz. sollte man gelegentlich mal löschen, ist eigentlich nur Datenmüll, der sich sonst dort ansammelt.

Viel Spass damit !

Viele Grüße,
Chris

www.radio101.de

 

Posted Sun 07 Oct 18 @ 7:10 pm
PS, wichtig:

for /f "tokens=1* delims=:" %%i in ('findstr /n "^" "C:\users\USERNAME\documents\virtualdj\history\tracklist.txt"') do set "LetzteZeile=%%j"

ist EINE EINZIGE Zeile ! (wird hier nämlich als 2 Zeilen wiedergegeben, dann gehts nicht)
 

Posted Sun 07 Oct 18 @ 7:14 pm


(Old topics and forums are automatically closed)