1.前言
电脑上下载了一些电影,有的时候想用ipad在床上看,又懒的起床去开电源上的vlc播放器。vlc播放器是可以作为流服务器在网络中发布视频流的,用推流方式打开一个视频之后就可以在所有网络中vlc的播放器上看了。但懒,没有办法。
今天就想,这vlc功能这么强大,有没有命令行方式的视频流发布方法,不找不要紧,一找这才发现vlc果然不一般,什么工具都是全的。
因为怕写命令行麻烦,所以就用python写了一个小脚本,运行之后就可以在网络上播放vcl视频了。这样,所有设备就都可以看了。什么iphone,ipad,mac,linux,windows,只要装了这个播放器就可以了。
vlc支持所有主流操作系统,是一个不错的开源播放器,下边是官方的说明。
2.运行脚本
下边是我写的一个python脚本,可以参考一下。
#!/usr/bin/python
# -*- coding: utf-8 -*-
#coding=utf-8
importos,sysmoive2path ='/Users/woodcol/Downloads/XLDownload/xxxxx.wmv'
file1 ='file://localhost/Users/woodcol/Downloads/XLDownload/11_06_x.wmv'
vlc ='/Applications/VLC.app/Contents/MacOS/VLC>vlc'
httpx ='http://192.168.1.122:8080/'#cmd = vlc + ' -H'
cmd = vlc +" -vvv "+ moive2path +" --sout '#transcode:standard'"
os.system(cmd)
其实要运行命令行不用脚本写也行,只是个人习惯了。
到了这一步,其实还没有结束。想要远程控制就要架一个socket的python服务器,或者http服务器,然后再在ipad上写一个客户端,这样,想看电影的时候,只要打开ipad的客户端给服务器发一条命令,就可以让服务器打开vlc播放器播放想看的电影流了。
再打开ipad上的vlc播放器,就可以躺床上看电影了。
如果想要在地铁上,公车上看,只要把家里的电脑在路由器中设置为可以远程访问唤醒,这样想看电影在那里都可以了。岂不美哉。不过现在各大网络运营商会检测上行端口,发现有端口作为服务器端了,就会封掉。不过如果你有外网服务器,也可以使用自已的外网服务器作反向代理。微信的小程序和小游戏开发也是用的这种反向代理来调试程序的。
3.vlc帮助
下边是vlc的帮助:
./VLC --helpVLC media player2.1.4Rincewind (revision2.1.4--g2a072be)
用法: vlc [选项] [流] …
您可以在命令行中指定多个流。
它们将会被加入到播放列表队列中。
指定的首个项目将被首先播放。
1.选项样式:
—option 用于设置程序执行期间的全局选项。
-option 单符号版本的全局选项 —option。
:option 一个仅在流之前应用的选项,
且将覆盖之前的设置。
2.流 MRL 语法:
[[access][/demux]://]URL[#[title][:chapter][-[title][:chapter]]] [:option=value ...]
许多全局 —options 也可被用作 MRL 特定的 :options。
可指定多对 :option=value。
3.URL 语法:
file:///路径/文件#纯媒体文件
http://主机[:端口]/文件#HTTP URL
ftp://主机[:端口]/文件#FTP URL
mms://主机[:端口]/文件#MMS URL
screen:// #屏幕捕获
dvd://[设备]#DVD 设备
vcd://[设备]#VCD 设备
cdda://[设备]#音频 CD 设备
udp://[[]@[][:]]#流服务器发送的 UDP 流
vlc://暂停:#暂停播放列表一定时间
vlc://退出#指定退出 VLC 的项
未找到匹配的模块。使用 —list 或 —list-verbose 来列出可用模块。
领取专属 10元无门槛券
私享最新 技术干货