在 VLC 虚拟播放器中播放两个文件,并为它们提供 sout 参数

在 VLC 虚拟播放器中播放两个文件,并为它们提供 sout 参数

我想将多个文件添加到 VLC 的 Web 界面。下面的命令正是这样做的。两个文件被添加到 VLC 的 Web 界面的播放列表中。但正如您所见,这并不是我想要的全部 - “sout” 后面有参数告诉 VLC 将这两个文件流式传输到我的 STB。

如果我使用此命令,两个文件将添加到 Web 界面播放列表中,但只有“f24.ts”知道需要将其发送到 STB。当我播放“K2.ts”时,STB 不会显示此文件:
"C:\Program Files\VideoLAN\VLC\vlc.exe" -I dummy --dummy-quiet --extraintf=http --http-password testing --directx-volume=0.00 "C:\Users\user\Videos\K2.ts" "C:\Users\user\Videos\f24.ts" :sout=#duplicate{dst=udp{mux=ts,dst=239.9.14.2:1234},dst=dummy} :no-sout-rtp-sap :no-sout-standard-sap :sout-all :ttl=1 :sout-keep

当我使用相同的命令但切换文件位置时,“K2.ts”可以工作,但“f24.ts”则不行: "C:\Program Files\VideoLAN\VLC\vlc.exe" -I dummy --dummy-quiet --extraintf=http --http-password testing --directx-volume=0.00 "C:\Users\user\Videos\f24.ts" "C:\Users\user\Videos\K2.ts" :sout=#duplicate{dst=udp{mux=ts,dst=239.9.14.2:1234},dst=dummy} :no-sout-rtp-sap :no-sout-standard-sap :sout-all :ttl=1 :sout-keep

这意味着只有第二个文件获得“sout”参数,需要将其发送到 STB 的 239.9.14.2:1234 地址。但我想要两个都文件来理解,当我在我的 Web 界面播放它们时,它们必须被发送到 sout 中指定的 STB 地址。

谢谢你的帮助!
(VideoLAN 论坛上也有同样的主题:https://forum.videolan.org/viewtopic.php?f=4&t=119438

编辑:在 Google 上搜索“vlc 转码多个文件”找到了这个。有一个命令:
for %%a in (*.VOB) do "C:\Program Files\VideoLAN\VLC\vlc" -I dummy -vvv %%a --sout=#transcode{vcodec=h264,vb=1024,acodec=mp4a,ab=192,channels=2,deinterlace}:standard{access=file,mux=ts,dst=%%a.mpg} vlc://quit

我根据自己的情况对其进行了修改,制作了包含以下内容的 bat 文件。但这只会按字母顺序加载第一个 ts 文件,并将其放入网络播放列表中:
for %%a in (*.ts) do "C:\Program Files\VideoLAN\VLC\vlc" -I dummy --dummy-quiet --extraintf=http --http-password testing --directx-volume=0.00 %%a :sout=#duplicate{dst=udp{mux=ts,dst=239.9.14.2:1234},dst=dummy} :no-sout-rtp-sap :no-sout-standard-sap :sout-all :ttl=1 :sout-keep

当我终止 VLC 进程时,它会自动开始处理第二个文件。因此它基本上会等待前一个文件完成。但我想知道是否有办法同时“处理”两个文件。

相关内容