今天给大家讲一下如何搭建最简单的音视频直播平台。
直播架构
图玩智能今天教给大家搭建的这个直播平台是一个实验平台与视频直播技术架构中介绍的最简单的架构还有些不同。必竟我们现在搭建的只是一个实验环境,并不能进行商用。
搭建流媒体服务端
商用的直播平台一般会包括信令服务器、流媒体服务器、客户端(共享端和接收端)三部分, 而我们的实验环境可以再简化,只包括流媒体服务器和端户端两部分。
在搭建直播平台之前,首先你要有一台Linux/Mac系统做rtmp流媒体服务器。之后我们按下列步骤搭建软件环境:
1.从 Nginx 官方网站上下载最新的代码 1.13.2, 并从 nginx-rtmp-module下载最新的 nginx rtmp 模块,从 openssl下载最新代码https://www.openssl.org/source/openssl-1.1.1.tar.gz(有可能需要VPN).
执行 ./configure --prefix=/usr/local/nginx --add-module=/path/to/nginx-rtmp-module --with-http_ssl_module --with-debug ,生成 Makefile 文件。
- prefix: 指定安装nginx服务目录地址。
- add-module: 在nginx服务器中增加 nginx-rtmp-module 模块。它用于处理 rtmp流信息和数据。
- http_ssl_module: ngnix 服务器中支持 ssl 功能。
- with-debug: 出输debug信息。
注意,在编码 nginx 时可能还需要其它基础库,根据 nginx的 configure 提示安装这些基础库就好了。
3.执行 make && make install ,编译 nginx 并将它安装到 /usr/local/nginx 目录下。
4.进入到 /usr/local/nginx/conf/ 目录下,修改nginx配置文件nginx.conf, 增加下列配置信息:
最后,执行 /usr/local/nginx/sbin/nginx 启动 nginx 服务。
至此,我们的流媒体服务器就算搭建好了。我们可以在 Linux 系统下执行 netstat -ntpl | grep 1935 看一下是否有 1935 这行,如果有的话说明端口1935已经打开了。
视频共享与观看
视频共享
大家可以到github 上去下载Android共享客户端。打开客户端后输入 rtmp://host:1935/live/test 地址,就可以将音视频流推送到nginx流媒体服务器上了。
host: 就是上面我们搭建流媒体服务器的IP地址。
观看
现在我们可以通过各种客户端进行观看了,在客户端输入rtmp://host:1935/live/test 地址就可以看到共享端共享的音视频了。这里向大家推荐几种客户端:
- flash客户端,http://bbs.chinaffmpeg.com/1.swf
- vlc, 点右侧的openmedia->网络->输入rtmp://host:1935/live/test
- ffplay rtmp://host:1935/live/test
小结
通过上面的步骤我们就将一个简单的视频直播平台搭建好了。图玩智能科技为企业提供专业的直播平台二次开发服务,欢迎随时咨询www.toivan.com。