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>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章