一、名词解释:
RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。
推流:为将直播内容推送至服务器的过程;
拉流:为服务器已有直播内容,用指定地址进行拉取的过程。
RTMP地址规则:
第一种(比较常见):
,则默认是1935)/应用名/串流名称
第二种(比较少见):
,则默认是1935)/串流名称
2、网络问题
A、推到服务器的媒体流码率超过当前推流所在环境的网络上传带宽;
解决方法:开播前用或测试下当前的网络带宽,然后再根据情况升级带宽或降低推流码率;
B、电脑使用的DNS服务器解析不了推流地址里的域名(编码器推流也类似);
解决方法:使用ping 命令,如无法ping通,说明DNS服务器无法解析,可网络搜索电脑所在地区的DNS服务器ip,然后填写到电脑中;还可以试试谷歌公开的DNS服务器ip:,或国内公开的DNS服务器ip:
CNNIC:和
南京信风:和(公共版),和(反木马版),和(校园版或绿色版)
阿里巴巴/中国万网:和
百度:
OneDNS:和
DNS派:和(电信),和(联通)
C、网络运营商限制或路由器限制了某些端口,导致推流失败;
解决方法:win7以上系统需要在【控制面板->程序和功能->打开或关闭windows功能】里打开telnet客户端:
解决方法:参照上面正确RTMP地址的填写方式进行填写。
C、拉流地址填写成推流地址,目前大部分直播平台的推流地址和拉流地址都是不一样的,极个别是一样的;
解决方法:填写前跟RTMP地址提供商沟通清楚需要填写的是拉流地址,而不是推流地址;
D、拉流地址为内网地址,不能被互联网上拉流服务器识别;
解决方法:及以上的新版本已经支持拉内网RTMP、RTSP流,旧版本不支持内网拉流,请确认你使用的Mshow版本,如想用此功能,请升级到新版本。
2、网络问题
A、网络运营商或提供流媒体的服务器出口路由器限制了某些端口,导致拉流失败(比较少见);
解决方法:可采样【telnet 服务器ip地址 RTMP端口】方式判断,如有限制,进行相应设置或解除限制;
B、提供直播内容的服务器和Mshow的拉流服务器的各自网络运营商之间网络不通(比较少遇到);
解决方法:可以联系Mshow官方技术人员和内容提供商进行沟通确认,Mshow支持的网络运营商有电信、联通、移动等;或者更换提供直播内容的服务器的网络。
C、网络使用高峰期,网络拥塞,导致拉流超时;
解决方法:将提供直播内容的服务器部署到网络带宽比较充裕、网络速度比较好的机房,Mshow的拉流服务器都分散处于各个核心机房,带宽充裕,网络速度比较好。
3、拉流限制
A、提供直播内容的流媒体服务器限制指定ip才可以拉流,需要添加拉流ip白名单才可以拉流;(一般有限制时,提供商会提前要求加拉流ip白名单)
解决方法:如遇到这种情况,请联系Mshow官方客服获取;
B、提供直播内容的流媒体服务器的音视频编码格式不被拉流服务器支持,导致解码失败;
解决方法:Mshow支持的RTMP流里带的视频编码为,音频编码为AAC-LC、AAC-HE v2(EAAC+)、MP3共3种,音频采样率要求为44100,不支持48000,需要设置源编码器的音频采样率为44100;不支持其他音视频编码格式;