我要一段在线播放RMVB格式的代码

来源:百度知道 编辑:UC知道 时间:2024/05/22 02:57:53
我想做个页面.是在线播放的,没办法,因为是盗链别的人资源,是RMVB格式的!

请不要说盗链不好..俗语有说,有头发谁想做光头?~~

本文介绍的Mplayer在线播放的方法,不是指在浏览器中安装Mplayer插件这种方法,而是在命令行中操作,利用Mplayer的可以从Stdin中播放的原理实现的。其原理是利用支持Stdout的下载软件(如Wget和Curl),将文件下载到Stdout中;再用Mplayer从Stdin读取数据并播放。由于所有数据都只临时存在于Stdin/Out中,从而可以做到不用在本地硬盘保存,在线播放影音文件。这个方法可以通用于各种发行版。关于Stdin/Out的更多信息,请在网上查阅,我并不是很清楚。

下面,以使用Wget和Mplayer为例,介绍几种比较常见的在线播放的例子。

1、在线播放rmvb文件

这个是最简单的,因为rmvb文件不牵涉到字幕问题。请先确定你已经安装realcodecs。假设我想看某一电影ftp里的某个rmvb电影,那么命令行格式为:
wget -ftp://username: password@ftpserver/directory/movie.rmvb -O - | mplayer -cache 8192 -

解释一下,wget的参数“-O”是指另存为,后面的“-”就是指输出到StdOut;“|”是管道符,-cache 8192设置mplayer的缓冲区大小为8192K,最后的“-”告诉Mplayer从StdIn读数据。一般来说,流畅播放需要的带宽为60KB/s左右。如果网速飞快的话,Mplayer会自动控制wget降速,以保持缓冲区在49%左右。

2、在线播放avi文件

这种文件一般都有单独的字幕文件。字幕文件是需要下载到本地硬盘的,把字幕文件放到StdIn中是不可以的。字幕一般有两个格式,srt和sub。对于srt字幕,假设存放位置为tmp/movie.srt,则总的命令行格式为
wget ftp://username: password@ftpserver/directory/movie.avi -O - | mplayer -cache 8192 -sub tmp/movie.srt -font /usr/share/fonts/simsun.ttf -subcp cp936 -