我设法将以下内容拼凑在一起,但没有效果。
@echo off
SET /p filename=Enter name of the file you want to convert: "%%PROGRAMFILES%%\VideoLAN\VLC\vlc.exe" -I dummy -vvv %%filename
--sout='#transcode{vcodec=x264,vb=1024,acodec=mp4a,ab=128,scale=1,channels=2,deinterlace}:std{access=file,mux=ps,dst=output.mp4}'
vlc://quit
错误:The system cannot find the path specified.
我不知道path
它指的是哪个。我尝试更改每个包含文件名的部分。
我还熟悉 VLC GUI,但直到现在从未使用过 CLI,因此我也愿意输入 VLC 语法。
更新
@s.brottes 帮我理清了%filename%
变量。我现在正在使用:
"%PROGRAMFILES%\VideoLAN\VLC\vlc.exe" -I dummy -vvv %cd%\%filename% --sout='#transcode{vcodec=x264,vb=1024,acodec=mp4a,ab=128,scale=1,channels=2,deinterlace}:std{access=file,mux=ps,dst=%CD%\output.mp4}' vlc://quit
但现在它没有输出任何东西,也没有出现输出文件。嗯......
答案1
@echo off && cd /d "%~dp0"
set /p "_filename=Enter name of the file you want to convert: "
"%ProgramFiles%\VideoLAN\VLC\vlc.exe" -I dummy -vvv ".\%_filename%" --sout "#transcode{vcodec=x264,vb=1024,acodec=mp4a,ab=128,scale=1,channels=2,deinterlace}:std{access=file,mux=ps,dst=.\output.mp4}" vlc://quit
1.确保 vlc.exe 的路径指向"%ProgramFiles%"
或%ProgramFiles(x86)%
2.将此字符替换'
为"
3.检查哪里需要空间
"[%ProgramFiles%]|or|[%ProgramFiles(x86)%]\VideoLAN\VLC\vlc.exe" -I dummy -vvv ".\%_filename%" --sout=[Add Space Here][Replace ' to "]#transcode{vcodec=x264,vb=1024,acodec=mp4a,ab=128,scale=1,channels=2,deinterlace}:std{access=file,mux=ps,dst=.\output.mp4}[Replace ' to "] vlc://quit