Windows Batch- und VLC-Probleme

455
Miki Fox

Momentan versuche ich, eine Batchdatei zu schreiben, die alle .wav-Dateien in meinem Ordner rekursiv in .ogg-Dateien konvertiert und sie mithilfe der Befehlszeilenbefehle von vlc in einem Ordner auf einer anderen Festplatte ablegt. Bis jetzt funktioniert das Skript wie beabsichtigt, abgesehen von einem kleinen Problem, das vlc: // quit nicht funktioniert, Punkt.

@Echo Off SETLOCAL ENABLEDELAYEDEXPANSION for /f "tokens=*" %%f in ('dir /b /s "C:\Users\*\Music\Ultimate Game Music Collection\*.wav"') DO (  set file1=%%~nf.ogg echo "file :" !file1! set fic1=%%f echo "file :" !fic1! set destination=F:\myMusic\ogg\!file1! echo "Destination :" "!destination!"   CALL "C:\Program Files\VideoLAN\VLC\vlc.exe" --ignore-config -I dummy --dummy-quiet -vv "!fic1!" --sout=#transcode:std,mux=ogg,dst="!destination!"}" vlc://quit  )  echo . echo conversion finished pause 

Was geschieht, ist dies;

Ich führe die Batch-Datei aus, sie postet nur das, was als 'Echo' eingestellt ist (dh -vv zeigt nichts an), .wav wird in eine .ogg-Datei konvertiert und in das neue Ziel gestellt, vlc stoppt, keine weiteren Dateien werden konvertiert.

Wenn ich an dieser Stelle in den Task-Manager gehe und den Prozess von vlc.exe beende, wird er zur nächsten Datei weitergeleitet, aber mit mehr als 5000 zu konvertierenden Dateien ... Ich habe dies zu einem Start & Vergessen gemacht.

Ich habe überall gesucht und versucht, eine Antwort darauf zu finden, ohne Erfolg. Ich habe die --ignore-config ausprobiert, die nicht funktioniert hat. Ich habe sogar versucht, einen separaten Taskkill-Befehl nach dem Aufruf hinzuzufügen, was auch nicht funktioniert hat (auch mit / t und / f). Jede Hilfe oder Einsicht, die Sie alle geben können, warum vlc: // quit nicht funktioniert oder wie Sie es beheben können, wird sehr geschätzt.

2
Sind Ihre Anführungszeichen (das letzte) aus @, dst = "! Destination!"} "? Ist es ein zusätzliches oder sollten Sie eines zuvor hinzugefügt haben? Aulis Ronkainen vor 5 Jahren 0
`vlc: // quit` kann in Batchdateien lustiges Verhalten verursachen. Verwenden Sie stattdessen die Option "vlc --play-and-exit". harrymc vor 5 Jahren 0
@ harrymc, dein Vorschlag hat funktioniert. Wenn Sie es als Antwort hinzufügen, wähle ich es aus Miki Fox vor 5 Jahren 0
Erledigt wie gewünscht. harrymc vor 5 Jahren 0

1 Antwort auf die Frage

0
harrymc

vlc://quit ist in der Batch-Umgebung unzuverlässig und kann in dieser Umgebung lustiges Verhalten verursachen.

Verwenden Sie stattdessen die Option:

vlc --play-and-exit