rtmp与hls流媒体服务器搭建:ubuntu下Nginx搭建初探与rtmp-module的添加

关键词:Nignx(http服务器);rtmp,hls(流媒体服务)

前言:感谢开源,感谢战斗民族。现在在做流媒体服务的一些工作,流媒体服务器搭建的网上教程多入牛毛,但是细细查看,发现很多同志贴上来的教程都有些许问题,还有一些是爬别人的数据得来的,排版上也有问题,让新手无所适从。本文也是通过翻看一些优质的博文得到的这篇分享。以下分享的网址就是引用的博文,安利一下。

1. http://redstarofsleep.iteye.com/blog/2123752

2. http://blog.csdn.net/cjsafty/article/details/9108587

3. http://blog.chinaunix.net/uid-20639775-id-154556.html

教程:

1. 下载nginx, openssl, pcre, zlib到一个目录下,如(/home/user),用wget命令,具体可查看下面的各种版本。

nginx-1.8.0.tar.gz
openssl-1.0.1i.tar.gz
pcre-8.37.tar.gz
zlib-1.2.8.tar.gz

2. tar解压。

tar -zxvf nginx-1.8.0.tar.gz
tar -zxvf openssl-1.0.1i.tar.gz
tar -zxvf pcre-8.37.tar.gz
tar -zxvf zlib-1.2.8.tar.gz

3. git下nginx-rtmp-module(https://github.com/arut/nginx-rtmp-module),具体略。

4. 进入nginx内,配置好,再make和make install。

./configure --prefix=/usr/local/nginx --with-pcre=/home/user/pcre/pcre-8.37 --with-zlib=/home/user/zlib/zlib-1.2.8 --with-openssl=/home/user/openssl/openssl-1.0.1i  --add-module=/home/user/nginx-rtmp-module
make
make install

5. 进到(/usr/local/nginx/conf),配置好conf,下面来个简单完整版的

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}
[email protected]@@
rtmp {
    server {
        listen 1935;

        application myapp {
            live on;
        }
        application hls {
            live on;
            hls on;
            hls_path /tmp/hls;
        }
    }
}
[email protected]@@

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        [email protected]@@
        location /hls {
            types {
                application/vnd.apple.mpegurl m3u8;
                video/mp2t ts;
            }
            root /tmp;
            add_header Cache-Control no-cache;
       }
       [email protected]@@
        location / {
            root   html;
            index  index.html index.htm;
        }

}

加的部分已经在上面标出来了。

6. 进入(/usr/local/nginx/sbin)运行

./ngnix

7. 可以查看端口占用,80,1935是不是在监听

netstat -ltn

8. 更多测试

1)把rtmp流发给服务器

rtmp://ip/myapp/test

myapp是ngnix.conf里application设置的,stream为test则是自定义的。

2)接收hls流

http://ip/hls/test.m3u8

hls是http内的location设置的,访问的是Linux下的(/tmp/hls),test则是按照上面rtmp的test,如果上面是haha,下面也是haha。

3)ngnix主页

http://ip

后言:有教程说明在./configure时可以不需要zlib和pcre,这个我没有试过,真心不需要这两个模块的童鞋们可以不添加。另外,按照上述教程不能正确安装的可以联系我邮箱([email protected]),或者在下面评论。最后,有些步骤不能完成的,加sudo吧,这个的原因自己想 : )

时间: 2024-10-06 06:45:35

rtmp与hls流媒体服务器搭建:ubuntu下Nginx搭建初探与rtmp-module的添加的相关文章

Ubuntu下nginx+uwsgi+flask的运行环境搭建

选择web framwork是个很艰难的事情, 主要分为轻量级和重量级框架. 由于没有搭建网站这种需要, 所以回避SSH, Django这种框架, 而选择一个轻量级框架. 自己也比较青睐python这门语言, 就选择了flask框架, nginx代理服务器享誉盛名, 所以拿来使用咯. 一. 开发环境搭建 采用离线安装方式, ubuntu开发环境(centos等环境类似) nginx 安装 $ wget http://nginx.org/download/nginx-1.6.0.tar.gz #仅

nginx搭建支持http和rtmp协议的流媒体服务器之一

实验目的: 让Nginx支持flv和mp4格式文件,支持RTMP协议的直播和点播: 同时打开RTMP的HLS功能 ?资料: HTTP Live Streaming(缩写是 HLS)是一个由苹果公司提出的基于HTTP的流媒体网络传输协议. HLS只请求基本的HTTP报文,与实时传输协议(RTP)不同,HLS可以穿过任何允许HTTP数据通过的防火墙或者代理服务器. 它也很容易使用内容分发网络来传输媒体流. 使用ffmpeg来完成对flv.mp4.mp3等格式的转化(点播实验暂时不测试) 一.准备工作

Ubuntu下nginx流媒体点播服务器的部署

参考网址:http://blog.csdn.net/xiaoliouc/article/details/8363984 第一次弄linux的东西,对C和C++,也没什么基础,参照网上的资源,记录如下. 需要的软件和一些资源文件,上传至网址(http://download.csdn.net/detail/zuowen8605/7571901),csdn和博客园混着来吧.(:>) 使用的是Unbuntu-12.04.2-i386 链接中已包含以下内容: openssl-1.0.1c.tar.gz p

[Android]Samba服务器在Ubuntu下的配置与Windows系统间的数据共享

安装Samba 安装sambasudo apt-get install samba[编辑]Kubuntu 安装系统设置的共享模块sudo apt-get install kdenetwork-filesharing[编辑]配置 1.windows 访问 ubuntu 第一步创建共享目录: 比如要创建/home/用户名/share首先创建这个文件夹 (这个用户名就是你的用户名,为了方便易懂我才这样写的,到时记得自己改啊) 代码:mkdir /home/用户名/share (新建share文件夹)c

Ubuntu 下 vim 搭建python 环境 配置

在Windows下用惯了各种现成的工具,转到Linux下,一下没了头绪--好歹google出一些别人的心得,折腾来折腾去,也算是把开发环境配好了. 1. 安装完整的vim # apt-get install vim-gnome 2. 安装ctags,ctags用于支持taglist,必需! # apt-get install ctags 3. 安装taglist #apt-get install vim-scripts #apt-get install vim-addon-manager //

ubuntu下nginx+php5的部署

ubuntu下nginx+php5环境的部署和centos系统下的部署稍有不同,废话不多说,以下为操作记录:1)nginx安装[email protected]:~# sudo apt-get update && sudo apt-get upgrade[email protected]:~# sudo apt-get install libpcre3 libpcre3-dev zlib1g-dev libssl-dev build-essential openssl libssl0.9.

nginx上搭建HLS流媒体服务器

http://blog.csdn.net/cjsafty/article/details/7922849 简介:HTTP Live Streaming(缩写是 HLS)是一个由苹果公司提出的基于HTTP的流媒体 网络传输协议. 是苹果公司QuickTime X和iPhone软件系统的一部分.它的工作原理是把整个流分成一个个小的基于HTTP 的文件来下载,每次只下载一些.当媒体流正在播放时,客户端可以选择从许多不同的备用源中以不同的速 率下载同样的资源,允许流媒体会话适应不同的数据速率.在开始一个

LiveQing高性能RTMP、FLV、HLS流媒体服务器软件-支持与企业MySQL数据库对接

青柿流媒体服务解决方案 LiveQing云平台直播点播流媒体服务 -LiveGBS国标GB28181无插件流媒体服务 LiveNVR安防Onvif/RTSP流媒体服务: 支持本地.内网.私有云部署:为企业视频能力建设,提供了视频点播转码.手机直播推流.云端录像存储计划.RTMP拉流推流服务.RTSP拉流推流服务.设备GB28181接入.Onvif云台控制等等能力,同时提供性能强大稳定的RTMP/HLS/RTSP/HTTP-FLV分发,支持H5页面无插件直播,强大的后台管理,详细的二次开发接口文档

搭建Ubuntu下c/c++编译环境【转】

1.       安装Ubuntu. 2.       安装gcc 方法一: sudo apt-get  install  build-essential 安装完了可以执行 gcc--version的命令来查看版本,输出如下: gcc(GCC)4.2.3(Ubuntu4.2.3-2ubuntu7) Copyright(C)2007FreeSoftwareFoundation,Inc. 编译则使用Ubuntu gcc命令.要往下学习首先就得熟悉gcc命令的用法. Ubuntu gcc命令提供了非常