当前位置:首页 » 编程软件 » vlc脚本

vlc脚本

发布时间: 2024-08-10 09:17:26

Ⅰ 命令行下怎样远程控制VLC播放

开宗明义,在Headless ( i.e. without a monitor or input device)的服务器(例如,各类嵌入式“玩具板子”)上如果架起VLC进行多媒体播放,怎样才是最方便的控制方式?

同时,因为希望是可以脚本控制,所以最好是可以做到非互动式的指令。

如下是简单的步骤:

VLC实际上拥有灵活强大的控制方式,由于我们上来就限定了Headless,那么命令行显然是先决条件,VLC文档中已经列出了支持的几种Remote方式:

考虑到三者中rc应该是最强大和灵活的(ncurses需要configure,telnet更多的是互动型,何况rc本身就可以支持telnet访问),我们就focus在rc 接口上。

使能方法非常简单,调用vlc的时候,用:

cvlc -I rc --rc-fake-tty --rc-host <ip>:<port>

注意:如果需要局域网内访问,请填写本机ip,如果只要本机访问,用localhost就可以了

得到如下信息(忽略那些错误吧,毕竟Headless么,很多接口对VLC来说都缺失,但是不影响使用)

直接借助帮助文件, 可见还是非常强大的:

实际上,在一些 讨论 中看到,如果只是需要本机访问,更高效的办法是借助一个unix socket文件,从而通过socket文件来访问,简单说就是将上面提到的-rc-host选项变成-rc-unix然后用一个文件作为输入;

这样可以用类似于形如下面指令的方法来模拟socket访问 (作者以OSX为例,应当是没有问题的):

echo normal | nc -U /Users/vlc.sock

我的例子,Debian中,nc似乎是不适用,更多人推荐用socat (需要安装)

echo “pause” | socat – UNIX-CONNECT:/Users/vlc.sock

上面可以理解成将管道化之后的ECHO字符向这个Unix的Socket发送。可是在我这里死活都会遇到文件connection refused,作为菜鸟,实在无力解决,特别是看到有强者遇到类似问题交叉比较得出可能和特定版本的kernel stock存在bug有关之后,不管看不看得懂,我都理直气壮的放弃了——直接转向了上面提到的host:port的方案。

所以:

如果是互动式,直接 nc <host> <port> ,就可以进入这个接口界面了:

如果不需要互动:

参考上节:

echo status | nc -w 0 <ip> <port>

-w是指示说该命令之后,立刻退出,实际上OSX下并不一定需要,只是为了和下面linux对照一下。

大致相同,区别只是在非互动式下,

echo status | nc -q 0 <ip> <port>

两者区别只是一个用了' w ait'之意,另外一个是' q uit'罢了,想想还挺风趣....风趣个妹啊,这不是折腾跨平台用户吗?!

至此,该问题解决,不论是想在远程控制无输入(显示)设备上的播放,还是想用脚本对其他线程的VLC播放进行自动化的干预控制,都不成问题了。

——怪不得有那么多人喜欢用VLC啊,我恍然。

Ⅱ windows平台下vlc编译出现缺少avformat、codec、swscal、mad库的情况,这是为什么呢

这东西要在 cygwin 里面编译是肯定的。
你在 cygwin 里面编译时,有些函数库不是放在了标准位置,这样的话需要 configure 时手动添加参数指定这些解码器库的位置才行。

一个新手就玩这么高深的编译过程,你想干嘛?
其实要我说,直接去下现成的 windows 版本不就行了,自己编译干什么?

Ⅲ 如何使 vlc 支持 fdk-aac 编码windows平台

可能是由于fdk-aac开源协议的原因,VLC默认是不支持fdk-aac编码的,fdk-aac 是非常优秀的AAC编码库,并且支持AAC-LD AAC-ELD, 对于要求低延迟的场景下很有用。
可以通过修改VLC的编译脚本,并加入fdkaac库来使用VLC支持fdkaac编码器。
我是在64位的ubuntu16.04下编译的,vlc的编译方法参考VLC官网的编译文档。

1 修改vlc/extras/package/win32/configure.sh , 加入--enable-fdkaac, 这样VLC就会编译fdkaac这个模块。
执行make,会出现编译错误
as/package/win32/../../../moles/codec/fdkaac.c:56:32: fatal error: fdk-aac/aacenc_lib.h: No such file or directory
这是因为缺少fdk-aac库相关的头文件。

2 编译fdk-aac库
下载源码https://github.com/mstorsjo/fdk-aac.git
在terminal下进入源码目录,输入
mkdir winBuild
cd winBuild
../configure --host=i686-w64-mingw32 --prefix=VLCPATH/contrib/i686-w64-mingw32
make install

VLCPATH 替换成VLC代码的路径

3 编译VLC代码
make packag-win32-zip
这时应该可以编译通过了, 在mole/codec/ 目录下会生成libfakaac_plugin.dll文件。
还需要把这个模块依赖的VLCPATH/contrib/i686-w64-mingw32/libfdk-aac-1.dll动态库复制到这个目录下。

现在VLC就可以支持fdk-aac编码了。

Ⅳ 如何将Linux下的应用程序VLC设置为开机自启动

linux中设置自动启动可以编辑/etc/rc.d/rc.local文件,使用vim在/etc/rc.d/rc.local添加你需要启动的内容即可。
rc.local在在系统启动后执行,在用户登陆前执行
rc.local脚本是一个在各运行级别里衫拆到rc.d目录的rc.local脚本的软链接,编号最大,所以被rc脚本执行时在各运行级别的初始化末尾进行。
在rc.local里设置是系统级别而非用户级别,因为启动脚本的初始化与用户无关(启动脚本初始化完成后,或乎枣才进入用户登录界面)。与用户相关的设置顷明shell的配置文件如: ~/.bash_profile。

热点内容
qq访问问题 发布:2024-11-06 23:29:20 浏览:648
手机邮件接收服务器怎么设置 发布:2024-11-06 23:23:35 浏览:128
c语言循环例题 发布:2024-11-06 23:05:01 浏览:332
外星人m15r6选哪个配置 发布:2024-11-06 23:03:58 浏览:999
linuxmysql数据库安装 发布:2024-11-06 23:01:28 浏览:117
压缩器能干嘛 发布:2024-11-06 23:01:16 浏览:464
分布式存储算法 发布:2024-11-06 22:55:09 浏览:872
住宅区弱电有哪些强制配置规定 发布:2024-11-06 22:51:22 浏览:827
数据库绑定 发布:2024-11-06 22:50:31 浏览:651
巧饭巧算算法 发布:2024-11-06 22:44:49 浏览:853