我将其作为批处理文件工作但是当我尝试转换为Powershell时,我的文件不会像批处理文件中那样进行转码。它应该询问2个输入问题,视频链接和本地IP地址。一旦它有2个输入问题的答案,Vlc播放器应该打开视频链接,然后实时将文件从.flv格式转码为另一种格式,并开始在vlc上播放,因为它的转码。然后在同一时间,我开始通过本地网络上的chrome浏览器在vidcast上播放转换后的文件,然后转换后的视频也可以使用chromecast投射到电视上。
我认为问题出现在powershell脚本的粗体区域,但没有经验,并且不知道如何修复它。请有人帮帮忙。
批处理文件
@echo off
set /p input="Insert your Http link: "
set /p input1="Insert your Local IP address: "
rem VLC
cd "C:\Program Files\VideoLAN\VLC"
start vlc.exe %input% :sout=#transcode{vcodec=VP80,vb=2000,acodec=vorb,ab=128,channels=2,samplerate=44100}:http{mux=webm,dst=:8080/stream} :sout-all :sout-keep
cd "C:\Program Files (x86)\Google\Chrome\Application"
start chrome.exe "https://dabble.me/cast/?video_link=http://%input1%/stream"
exit
Power Shell
$link = read-host "Enter an Http Link "
$ip = read-host "Enter your Local Ip Address "
& "C:\Program Files\VideoLAN\VLC\vlc.exe" "$link" ":sout=#transcode{vcodec=VP80,vb=2000,acodec=vorb,ab=128,channels=2,samplerate=44100}:http{mux=webm,dst=:8080/stream}:sout-all :sout-keep"
& "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" "https://dabble.me/cast/?video_link=http://$ip/stream"
答案 0 :(得分:0)
您是否尝试ArgumentList
设置了Start-Process
?
Start-Process -FilePath 'C:\Program Files (x86)\VideoLAN\VLC\vlc.exe' -ArgumentList "$link",":sout=#transcode{vcodec=VP80,vb=2000,acodec=vorb,ab=128,channels=2,samplerate=44100}:http{mux=webm,dst=:8080/stream}:sout-all :sout-keep"
Start-Process
将文件路径(-FilePath
)作为要启动的进程。然后,它将一个String数组的参数(-ArgumentList
)与正在启动的可执行文件合并。
FilePath
应该是可执行文件的完整路径(如果您愿意,还应该是相对路径)
ArgumentList
应该是您所有的个人参数,以逗号分隔
总而言之,它应该是:
Start-Process -FilePath "C:\Where\VLC\Is\Located.exe" -ArgumentList "1stArg"[,"2ndArg"[,...]]