我想並行處理下載實時流的命令。 因此,如果它有4個部分,並且PARTS
變量包含數字4,它應該打開4個新的cmd窗口並處理單個部分。使用管道命令進行並行處理
閱讀了很多關於我來到了以下解決方案並行處理後:
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"
)
似乎有與|
命令的問題雖然因爲這個腳本會打開啓動和輸出後隨即關閉窗口的管道命令ffmpeg -y -i pipe:0 -c:v copy -c:a copy -absf aac_adtstoasc "%NAME%p%%x.mp4
將顯示在執行腳本的初始cmd窗口中。
如何更改它,以便在新窗口中執行整個命令?
在整個命令行周圍放入另一對引號來執行:'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「」' – Stephan
這會拋出''\ Streamlink \ bin \ streamlink。 exe「在這一點上不能被語法處理。' – maddo7
對不起 - 關閉'''':start cmd/C」「C:\ Program Files(x86 ^)\ Streamlink \ bin \ streamlink.exe」-O「 %URL%/ %% x「最佳| ffmpeg -y -i管道:0 -c:v複製-c:複製-absf aac_adtstoasc」%NAME%p %% x.mp4「」' – Stephan