go实现视频服务二

文章介绍了如何基于开源项目livego搭建直播服务,包括创建直播房间(串流秘钥)的HTTP请求,如获取串流秘钥的接口,以及推拉流管理和统计信息的相关接口。示例中展示了curl命令的使用,以及各种操作(如推流开始、播放状态查询)的接口响应。

go视频服务是基于开源项目livego
创建直播房间( 串流秘钥)

请求:http://你的服务器地址:8090/control/get?room=房间名字(即串流秘钥)
成功响应:{“status”:200,“data”:一段与房间名对应的MD5密文}
根据官网的例子,用curl命令:

curl http://127.0.0.1:8090/control/get?room=movie

返回结果:

{"status":200,"data":"L17LTlsVqMNTZyLKMIFSD2x28MlgPJ0SDZVHnHJPxMKi0tWx"}

实际应用中需要增加一个获取串流秘钥接口,可以保证每次秘钥的唯一性。

livego还提供了其他推拉流管理的接口和统计信息相关的接口(live对应livego.yaml里可以看到默认的app名字)
拉流开始查询接口


http://127.0.0.1:8090/control/pull?&oper=start&app=live&name= movie&url=rtmp://127.0.0.1:1935/live/movie

结果样例:


{ status: 400, data: "<h1>push url start rtmp://127.0.0.1:1935/live/movie ok</h1></br>" }

查询播放状态


http://127.0.0.1:8090/stat/livestat

结果样例


{ status: 200, data: { publishers: [ { key: "live/mPjVIUp97tQjNHJcaOAGeDZRvcMdGIASmHsVKxASAgqjn9FS", url: "rtmp://localhost:1935/live/mPjVIUp97tQjNHJcaOAGeDZRvcMdGIASmHsVKxASAgqjn9FS", stream_id: 1, video_total_bytes: 1940374, video_speed: 1465, audio_total_bytes: 206931, audio_speed: 161 } ], players: null } }

推流开始状态(这个接口返回数据还不太明白什么意思)

http://127.0.0.1:8090/control/push?&oper=start&app=live&name=movie&url=rtmp://127.0.0.1:1935/live/movie 

拉流结束状态


http://127.0.0.1:8090/control/pull?&oper=stop&app=live&name=movie&url=rtmp://127.0.0.1:1935/live/movie

可以理由GitHub项目中介绍文档的ffmpeg和ffplay配合测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值