• 【转】centos linux 上flv/swf视频服务器架设


    在互联网上播放视频有两种方式,一种是通过HTTP协议访问视频文件;另外一种就是采用专门的流媒体服务器如red5。以下为在centos 5服务器上支持拖放的视频服务器安装配置。 web服务器安装: wget http://sysoev.ru/nginx/nginx-0.7.65.tar.gz tar zxf nginx-0.7.65.tar.gz -C /usr/local/src cd /usr/local/src/nginx-0.7.65 groupadd www useradd -d /var/www/nginx -g www www ./configure –prefix=/usr/local/nginx –user=www –group=www –with-http_flv_module –with-http_gzip_static_module –with-http_stub_status_module –with-cc=gcc –with-cc-opt=" -O3" make && make install cd /usr/local/nginx/conf cat nginx.conf user www; worker_processes  1; error_log  logs/error.log; pid        logs/nginx.pid; events { worker_connections  1024; } http { include       mime.types; default_type  application/octet-stream; sendfile        on; keepalive_timeout  65; server { listen       81; server_name  localhost; root    /var/www/nginx; index   index.html; charset utf-8; # important! location ~ \.flv { flv; } error_page   500 502 503 504  /50x.html; location = /50x.html { root   html; } } } 启动 /usr/local/nginx/sbin/nginx 重启 /usr/local/nginx/sbin/nginx -s reload mkdir -p /var/www/nginx cd /var/www/nginx 其次,需要有一个能够播放Flv视频的播放器,很显然,它还需要能够嵌入到网页中。目前比较流行的,功能上也还比较完善的一个Flv播放器就是 JW FLV Media Player(也称为 jwplayer)。网址是: http://www.longtailvideo.com/players/jw-flv-player/ 下载mediaplayer-viral.zip并解压到/var/www/nginx 将播放器嵌入到你的视频播放网页中。嵌入的方式有两种: 直接嵌入,使用Object/Embed代码嵌入: cat  index.html <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"><title>veryi.com</title> </head> <body> <h3>start</h3> <p>click to play </p> <!– START OF THE PLAYER EMBEDDING TO COPY-PASTE –> <object id="player" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" name="player" width="400" height="315"> <param name="movie" value="player-viral.swf" /> <param name="allowfullscreen" value="true" /> <param name="allowscriptaccess" value="always" /> <param name="flashvars" value="file=snatch1.flv" /> <embed type="application/x-shockwave-flash" id="player2" name="player2" src="player-viral.swf" width="400" height="315" allowscriptaccess="always" allowfullscreen="true" flashvars="file=snatch1.flv" /> </object> <!– END OF THE PLAYER EMBEDDING –> </body> </html> 使用swfobject来嵌入Flash: swfobject是一个很小的JavaScript脚本(10k),该脚本引入了一个swfobject对象,用于在网页内嵌入Flash,并避免了上述的安全提示。swfobject已经得到了广泛的使用和好评。 swfobject在jwplayer包中也包含了一个,不过是很旧的1.5版,建议使用最新的版本。本文写作时,最新的版本是2.2。 swfobject可以从此下载(只需要其中的swfobject.js文件): http://code.google.com/p/swfobject/ 使用swfobject嵌入的代码如下: <html> <head> <script type="text/JavaScript" src="swfobject.js"></script> <script type="text/JavaScript"> function createPlayer() { var flashvars = { file:"snatch1.flv", type:"http", image:"preview.jpg", autostart:"false", streamer:"start" } var params = { allowfullscreen:"true",        allowscriptaccess:"always" } var attributes = { id:"player1",        name:"player1" } swfobject.embedSWF("player-viral.swf", "placeholder1", "320", "196", "9.0.115", false, flashvars, params, attributes); } </script> </head> <body onload="createPlayer();"> <div id="placeholder1"></div> </body> </html> 附,媒体转换: FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它包括了目前领先的音/视频编码库libavcodec,安装,使用http://dag.wieers.com/或者http://www.atrpms.net/的源: yum install ffmpeg -y yum install ffmpeg-devel -y 转换dvd的MPEG-2格式的音频和视频数据VOB格式文件: ffmpeg -i VTS_01_3.VOB -f flv -ar 22050 -s qvga -r 15 -y snatch1.flv 对ffmpeg无法解析的文件格式(wmv9,rm,rmvb等), 可以先用别的工具(mencoder)转换为 avi(ffmpeg能解析的)格式. ./mencoder /input/a.rmvb -oac lavc -lavcopts acodec=mp3:abitrate=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o /output/a.avi 然后执行./ffmpeg -i "/opt/input/a.avi" -y -ab 32 -ar 22050 -b 800000 -s 640*480 /opt/output/a.flv"就可以了。 如果运行ffmpeg出现错误 lame: output buffer too small (buffer index: 9405, free bytes: 387) 解决方法: wget http://dl.atrpms.net/all/lame-3.97-16.0.el5.i386.rpm wget http://dl.atrpms.net/all/libmp3lame0-3.97-16.0.el5.i386.rpm rpm -hUv –nodeps –oldpackage libmp3lame0-3.97-16.0.el5.i386.rpm  lame-3.97-16.0.el5.i386.rpm To prevent updating libmp3lame0 and lame again when running ‘yum update’, be sure to edit /etc/yum.conf and exclude these packages. Add the following line: exclude=lame* libmp3lame* (ffmpeg参数说明): 控制画面参数 -r <数值>     帧速率(非标准数值会导致音画不同步【标准值为15或29.97】) -b <比特率>     指定压缩比特率 控制声音参数 -ac <数值>     设定声道数:1为单声道,2为立体声 -ar <采样率>     设定声音采样率(8000,11025,22050) -ab <比特率>     设定声音比特率(-ac设为立体声时要以一半比特率来设置,比如192kbps的就设成96) -vol <百分比>     设定音量大小,比如设定200就会比原来的音量大2倍: ------------------------------------------------------------------------------------------------------------------------------------------------------------- 转载:http://veryi.com/w/287.html
  • 相关阅读:
    CentOS7.2中安装MongoDB
    django 面试题
    python pandas库——pivot使用心得
    归并排序
    python实现归并排序,归并排序的详细分析
    二分法查找
    二叉树的遍历
    RabbitMQ(python实现)学习之一:简单两点传输“Hello World”的实现
    邻接表存储图,DFS遍历图的java代码实现
    五、python使用模块
  • 原文地址:https://www.cnblogs.com/adodo1/p/4328054.html
Copyright © 2020-2023  润新知