go实现视频服务二

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: "

push url start rtmp://127.0.0.1:1935/live/movie ok


" }

查询播放状态


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配合测试

你可能感兴趣的:(go,视频服务器,音视频,ffmpeg)