centos搭建流媒体服务器

要做流媒体服务,普通的web服务肯定是不行的,把视频文件丢到web目录里,只能做下载用,不能用来播放的,这是基本的概念。

搜了一下,centos用Darwin Streaming Server做流媒体服务器是比较多的,一致建议用5.5版本,下载安装配置如下:

yum -y install gcc gcc-c++ perl ld-linux.so.2 libstdc++.so.6
wget http://dss.macosforge.org/downloads/DarwinStreamingSrvr5.5.5-Linux.tar.gz
tar -zxvf DarwinStreamingSrvr5.5.5-Linux.tar.gz
cd DarwinStreamingSrvrlinux-Linux
./Install

安装完成后在命令行端会提示设置管理员和密码,按照提示输入就可以了,记住设置的用户名和密码,打开http://服务器ip:1220/可以访问到web管理端,按需配置就可以了,有一个配置,是否用80端口,不要勾选,否则肯定和web服务有冲突。

默认视频文件目录放在/usr/local/movies,播放地址是:rtsp://服务器ip/视频文件

接下来才是重点,如果用自带的视频文件播放,你不会发现有什么问题,但是你用自己制作或者网上下来的视频文件,就不对了,客户端无法播放。

问题出在一个叫hint track的东西,一般视频缺这个,需要下载一个叫mp4creator.exe的软件,做些处理,linux端也有,不过安装配置太麻烦,懒得去搞了。

下载mp4creator后,用命令行打开,对视频文件执行以下两个操作:

mp4creator hint=1 视频文件
mp4creator hint=2 视频文件

忽略任何提示和警告,处理完的视频文件再上传到/usr/local/movies目录,再用客户端播放,就没问题了。

max_input_vars对表单post的影响

先看一下php.ini里max_input_vars这个配置项的解释:

How many GET/POST/COOKIE input variables may be accepted

用来控制get、post、cookie的输入变量最大个数,默认值是1000,一般来说是够用了,也有些特殊表单,会超过1000个input,那么按顺序排1000以上的input就会被丢弃。

修改表单或者配置值解决这个问题