Linux Windows搭建基于nginx的视频点播服务器

首先给大家推荐一下我老师大神的人工智能教学网站。教学不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵黄段子!点这里可以跳转到网站

Demo: http://download.csdn.net/detail/akeron/9752215

1. nginx安装

Linux

     $./configure --with-http_ssl_module  --add-module=../nginx-rtmp-module-master          
     $make         
     $sudo make install 
  • 如果没有报错,则已经安装成功,
  • 启动nginx: $ sudo /usr/local/nginx/sbin/nginx
  • 停止nginx: $ sudo /usr/local/nginx/sbin/nginx -s stop
  • 重载nginx: $ sudo /usr/local/nginx/sbin/nginx -s reload
  • 查看加载的模块: $ sudo /usr/local/nginx/sbin/nginx -V
  • 启动后打开浏览器,输入localhost,如果出现Welcome to nginx的页面则已经成功安装。

————————————————————–

Windows

  • 在windows下由于官方已经编译好的nginx是不带nginx_rtmp_module的,故直接使用已经编译好的,
  • 一个是github上的(https://github.com/illuspas/nginx-rtmp-win32
  • 一个是nginx for windows(http://nginx-win.ecsds.eu/download/nginx%201.7.12.1%20Lizard.zip,注意这是最后一个支持rtmp的版本,再高的非商业版本不会支持rtmp),nginx-rtmp-win32是一个较好的demo。
  • 打开命令行,进入文件夹,启动nginx.exe。
  • 同样打开浏览器,输入localhost,出现欢迎界面则成功。关闭nginx.exe命令nginx.exe -s stop.

2. 配置文件nginx.conf

  • nginx.conf在主目录下的conf文件下,配置如下:
worker_processes  1;

error_log  logs/error.log debug;

events {
    worker_connections  1024;
}

rtmp {
    server {
        listen 1935;

        application vod {
            play video; #这是一个目录的名称,如果是linux,则写具体位置如/opt/video
        }
    }
}

http {
    server {
        listen      80;

        location / {
            root html;
        }

        location /test.flv {
            root video;
        }


        location /stat {
            rtmp_stat all;
            rtmp_stat_stylesheet stat.xsl;
        }

        location /stat.xsl {
            root html;
        }
    }
}
  • 重新加载nginx(nginx -s reload),放入想播放的文件在video文件夹(windows是nginx文件夹下新建video文件夹,linux下写具体路径即可),必须是mp4或flv文件,则此时可以测试了。 —————————————————————————- 3. 测试
  • 使用VLC播放器测试,打开VLC播放器,选择媒体–>打开网络串流,在地址栏里输入:
rtmp://localhost/vod/test.flv #这里的vod是上面nginx.conf中rtmp中定义的名称,后面跟的是视频文件的名称
http://localhost/test.flv #http协议
  • 也可以使用手机版本的VLC,或者OPlayer,如果播放视频,则成功。

4. flv文件加入metadata

  • 一般点播网站使用flv文件格式的视频,因为flv体积较小,故建议使用flv播放,在linux下可以使用ffmpeg来进行转换,在windows下可以使用格式工厂,其实也使用ffmpeg,则之后下载yamdi,用来加载metadata(备份存储地址:http://download.csdn.net/detail/akeron/9752208),这样在播放时便可以实现拖动,好像只限于http(目前不明白原因),yamdi的命令如下:
yamdi.exe -i input.flv -o out.flv #这样便已经加入了metadata

5. 使用JWPlayer播放视频

  <div id='my-video'  >  </div>
  <script src="jwplayer.js"></script>
  <script type='text/javascript'>
    jwplayer('my-video').setup({ #其它的参数上网查询
      file:'jay.flv',#注意播放需要使用flash player,电脑版本chrome与
      fallback:'false',#edge都可不用flash,但firefox需要,安卓4.1上
      width: 512,#已经不使用flash了,iOS也不用,故使用手机浏览器播放不
      height: 383,#了。
      screencolor: '#ff0'
    });
  </script>

点这里可以跳转到人工智能网站

发表评论