RTMP动态地址生成方案

QQ截图20171117094820.jpg

 
RTMP推流地址生成方案

1,获取时间的HTTP API
方法
GET
格式:
http://[domain_name]/?cmd=gettime

返回值:
2017/03/07 03:11:11

参数说明
domain_name 是指服务器的URL
cmd=gettime  表示获取时间

举例
请求
http://api.v.wanglitiaoyi.cn/?cmd=gettime

返回
2017/03/17 10:30:59

2, 获取推流地址
方法
GET

格式
http://[domain_name]/?cmd=geturl&sid=xxx&stream=main&authkey=[md5(md5(md5(sid+ymdh)))]

返回值
ok:[推流URL] <br/>playurl: [预览播放URL]
error:[errno]

参数说明
domain_name: 服务器URL
cmd=geturl 表示获取推流地址
sid=xxx     xxx为摄像机序列号(摄像机自动获取)
stream=main  main为主码流,否则为子码流
authkey=   sid+ymdh的三次MD5值计算字符串

ymdh 产生的时间格式为 2017031715
年份为完整形式,时间为24小时制

举例
请求
http://api.v.wanglitiaoyi.cn/% ... 78f53

返回值
ok:rtmp://www1.qidun.cc/live/1231231231_main
playurl:http://test.qidun.cn/show/1231231231
或者
error:1101

错误号定义
1100 无效的设备序列号
1101 验证出错
1102 已过期(针对逾期用户).
1103 其它错误码



web服务器状态返回测试
测试工具:(见附件SocketTest.exe)
 
测试代码:
GET /?cmd=gettime HTTP/1.1
Accept: */*
Accept-Language: zh-cn
User-Agent: Mozilla/4.0
Accept-Encoding: identity
Host: api.v.wanglitiaoyi.cn
Connection: Keep-Alive







注意:api.v.wanglitiaoyi.cn换成您自己的host
若能返回类似如下代码即代表成功
HTTP/1.1 200 OK
Date: Fri, 05 Jan 2018 03:29:01 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.6.21
Vary: Accept-Encoding
Content-Length: 19
Connection: close
Content-Type: text/html; charset=UTF-8

2018/01/05 11:29:01
软件成功返回截图:
pic1.jpg

 
如果返回内容有其他字符,检查服务器配置,关闭transfer-encoding
微信图片_20180917161840.png


 

自主搭建动态获取推流地址服务器,demo(php版)参考附件
 
api.v.wanglitiaoyi.cn

0 个评论

要回复文章请先登录注册