pptp服务器搭建教程:RTMP服务器搭建
pptp服务器搭建教程:RTMP服务器搭建你可能会有个疑问:信令服务器是干嘛用的?用来处理分享端和观看端的一些信令指令,比如创建房间、加入房间等。详细1.2直播架构下面放几张图片,简单了解一下直播技术的基本架构。简单
1、流媒体
1.1基本概念
流媒体(Streaming media),也叫做:流式媒体。
- 是指将一连串的多媒体数据压缩后,经过互联网分段发送数据,在互联网上即时传输影音以供观赏的一种技术与过程
- 此技术使得数据包可以像流水一样发送,如果不使用此技术,就必须得先下载整个媒体文件才能进行观看
流媒体的一个非常典型、火爆的应用场景:直播。近几年,直播行业是蒸蒸日上。
1.2直播架构
下面放几张图片,简单了解一下直播技术的基本架构。
简单
详细
你可能会有个疑问:信令服务器是干嘛用的?用来处理分享端和观看端的一些信令指令,比如创建房间、加入房间等。
京东云
百度智能云
用文字总结一下基本流程是:
分享端(比如主播)-> 产生音视频 -> 编码压缩音视频 -> 推流到服务器
观看端(比如观众)-> 从服务器拉流-> 解码解压缩音视频-> 播放音视频
1.3推拉流
推流:通过流媒体协议,将音视频数据发送到流媒体服务器
拉流:通过流媒体协议,从流媒体服务器上拉取获得音视频数据
1.4流媒体协议
常见的流媒体协议有:rtmp、HLS等。
- RTMP(Real-Time Messaging Protocol)
译为:实时消息传输协议,由Adobe公司出品
默认基于TCP的1935端口
- HLS(HTTP Live Streaming)
基于HTTP的流媒体网络传输协议,苹果公司出品
参考:RFC 8216
本文主要介绍RTMP协议相关知识。
2、服务器环境
首先,要搭建好RTMP服务器环境,主要步骤如下:
- 安装虚拟机vmware或Parallels Desktop
我这里安装的是VMWare
- 在虚拟机上安装CentOS系统
CentOS是Linux系统的一种,这里用7.6版本,建议跟我的版本保持一致
- 在CentOS系统中安装nginx、nginx-rtmp-module
nginx:一款高性能的开源web服务器
nginx-rtmp-module:让nginx支持rtmp
- 配置nginx
- 启动nginx
2.1安装CentOS
2.1.1下载CentOS
推荐网站:centoschina,上面有CentOS的各种版本,这里下载CentOS-7-x86_64-DVD-1810.iso,大小是4G多。
2.2安装nginx
在nginx官网下载目前最新的稳定版:nginx-1.20.1.tar.gz。
2.3安装nginx-rtmp-module
在nginx-rtmp-module的github下载目前最新的稳定版:v1.2.2.tar.gz。
2.4配置nginx
2.5启动nginx
2.6一些步骤和命令整理
- 安装依赖
- 设置共享文件夹
查看共享成功与否
vmware-hgfsclient
挂载到对应目录(这里放mnt)
vmhgfs-fuse .host:/共享目录名称 /mnt/目录名称
- 解压ngnix相关内容
cp源目标
tar -zxvf 解压文件
- 进入nginx目录,执行configure进行配置
- 修改nginx配置
vim conf/nginx.conf
- 配置PATH
export PATH=$PATH:/usr/local/nginx/sbin
- 启动nginx
nginx
- 查看
端口占用:lsof -i:1935
杀死进程:kill -9 pid
- 如果远程连接不上rtmp服务器,有可能是因为防火墙把1935端口关掉了
- ffmpeg推流
- ffmpeg拉流