Ich möchte parallel den Befehl, der einen Live-Stream lädt, verarbeiten. Also wenn es 4 Teile hat und die PARTS
Variable die Nummer 4 enthält, sollte es 4 neue cmd Fenster öffnen und den einzelnen Teil bearbeiten.Parallele Verarbeitung mit Pipe-Befehl
Nach viel über den parallelen Verarbeitung Liest ich zu folgenden Lösung gekommen:
set /p URL=Enter video URL:
set /p NAME=Enter video name:
set /p PARTS=Enter Number of Parts:
for /l %%x in (1, 1, %PARTS%) do (
start cmd /C "C:\Program Files (x86)\Streamlink\bin\streamlink.exe" -O "%URL%/%%x" best | ffmpeg -y -i pipe:0 -c:v copy -c:a copy -absf aac_adtstoasc "%NAME%p%%x.mp4"
)
Es scheint allerdings ein Problem mit dem |
Befehl zu sein, da diese Skript Fenster öffnen würde, die direkt nach dem Start und dem Ausgang schließen des Piped-Befehls würde im ursprünglichen cmd-Fenster angezeigt, das das Skript ausgeführt hat.
Wie kann ich es so den ganzen Befehl ändern wird im neuen Fenster ausgeführt?
setzen ein anderes Paar von Anführungszeichen um den gesamten Befehlszeile ausgeführt werden: 'starten cmd/C "" C: \ Program Files (x86) \ Streamlink \ bin \ streamlink.exe "-O" % URL%/%% x“best | ffmpeg -y -i Rohr: 0 -c: v kopieren -c: eine Kopie -absf aac_adtstoasc "% NAME% p %% x.mp4" "' – Stephan
Dies wirft'" \ Streamlink \ bin \ Streamlink. exe "Kann nicht an dieser point.' verarbeitet syntaktisch werden – maddo7
leid - Flucht der Schließung)' ':' starten cmd/C "" C: \ Program Files (x86 ^) \ Streamlink \ bin \ streamlink.exe" -O" URL%%/%% x "best | ffmpeg -y -i Rohr: 0 -c: v kopieren -c: eine Kopie -absf aac_adtstoasc "% NAME% p %% x.mp4"" ' – Stephan