chenzhao

  • java
  • iOS
  • IT
知识积累
不积跬步无以至千里
  1. 首页
  2. iOS
  3. 正文

本机架设一个RTMP直播流服务器

2017年 1月 13日 67点热度 0人点赞 0条评论

为了演示直播推流工程, 我们来自己快速架设一个简易的RTMP服务器,用OBS推流,并在播放器中播放,基于Nginx和rtmp模块。
步骤很简单:

  • 安装Homebrew包管理器,以便安装Nginx。
  • 配置服务器的rtmp端口和路径。
  • 用OBS来推流,安装VLC播放器来播放rtmp串流。

详细步骤如下:
1.①如果你安装过cocoapods,就应该会安装好Homebrew,那就跳过此步。如果不确定是否已经安装,可以在终端用man homebrew命令来确定,如果回馈一堆使用说明,那就是安装好了。 否则请用以下命令安装:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

卸载Homebrew:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

②下载Homebrew上的Nginx项目到本地:

brew tap homebrew/nginx

③安装rtmp模块:

\(brew install nginx-full --with-rtmp-module\)

④启动Nginx服务器:

nginx (终端)

⑤验证启动(在浏览器中打开以下网址)

http://localhost:8080

如果看到 Welcome to nginx字样,说明服务器启动成功了,成功了一半,oh,yeah!

注 第一个步骤内可能有权限不够,可以按照命令失败的提示修正一下。或者按照提示google 下都有答案

2.①显示nginx的的使用说明

brew info nginx-full

②修改 nginx.conf, 一般在

/usr/local/etc/nginx/nginx.conf

③配置rtmp:
用任意的文本编辑器打开

/usr/local/etc/nginx/nginx.conf

在文件的末尾加上以下并保存:

rtmp { 
 server { 
     listen 1935; 
     application rtmplive {
       live on;
     }
 }
}

这是一个最小化配置的,在端口1935监听的rtmp服务,名叫rtmplive,启用了直播(live on)。
详见
④重启服务器使配置生效:

/usr/local/Cellar/nginx-full/1.10.2/bin/nginx -s reload

这其中的1.10.2是当前的nginx版本. 可以用以下命令查看当前的版本:

nginx -v

3.①安装OBS Mac版本,在 设置 > 串流 > 自定义流媒体服务器 > URL 中填入

rtmp://192.168.166.172:1935/rtmplive/

确定后退出设置。设置直播场景后,点击“开始串流”,这时OBS状态栏应该可以看到连接状态和推流速率。
②百度一下VLC,安装Mac版本。
③菜单File > Open Network… > 输入:

rtmp://192.168.166.172:1935/rtmplive/

把这里的192.168.166.172替换成你自己电脑对外的IP,也就是其他电脑可以访问的IP。

不仅OBS可以用来推流, iPhone/安卓机也可以利用这个自建服务器来推流了。

测试环境搭建

转自这里

//2017-5-4 SRS 服务器搭建

下载

$ git clone https://github.com/ossrs/srs
$ cd srs/trunk
mac 下 和centos 下

编译

// 支持 hls,flv,rtmp转码,http-server,http-api
$ ./configure --with-ssl --with-http-api --with-hls --with-http-server  --with-nginx --with-ffmpeg --with-transcode && make

配置:

我用的是2.0 版本
参考https://github.com/ossrs/srs/wiki/v2_CN_Home
在查看
启动 :
先编辑配置文件,按照每个的单独的配置文件集成到conf/srs.conf
从hls.conf 和http.live.flv.conf 上获取配置数据.

检查配置文件
./objs/srs -t -c conf/xx.conf

启动
./etc/init.d/srs start

查看当前服务端stream列表

http:xxx:9090/api/v1/streams/
{
"code": 0,
"server": 12323,
"streams": [
  {
    "id": 12325,
    "name": "h5",
    "vhost": 12324,
    "app": "live",
    "live_ms": 1482371950909,
    "clients": 1,
    "send_bytes": 12576,
    "recv_bytes": 29070803,
    "kbps": {
      "recv_30s": 0,
      "send_30s": 0
    },
    "publish": {
      "active": true,             // 表示是否在线
      "cid": 166
    },
    "video": {
      "codec": "H264",
      "profile": "High(422)",
      "level": "Other"
    },
    "audio": null
  }
]
}
标签: 暂无
最后更新:2022年 11月 11日

陈昭

IT 程序员

打赏 点赞
< 上一篇
下一篇 >

文章评论

取消回复

COPYRIGHT © 2022 chenzhao. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang