mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2024-11-22 19:00:01 +08:00
增加实用restful接口 (#1183)
This commit is contained in:
parent
573dc2e67a
commit
5a04575cb9
@ -944,6 +944,98 @@
|
|||||||
},
|
},
|
||||||
"response": []
|
"response": []
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "设置录像速度(setRecordSpeed)",
|
||||||
|
"request": {
|
||||||
|
"method": "GET",
|
||||||
|
"header": [],
|
||||||
|
"url": {
|
||||||
|
"raw": "{{ZLMediaKit_URL}}/index/api/setRecordSpeed?secret={{ZLMediaKit_secret}}&vhost={{defaultVhost}}&app=live&stream=obs&speed=2.0",
|
||||||
|
"host": [
|
||||||
|
"{{ZLMediaKit_URL}}"
|
||||||
|
],
|
||||||
|
"path": [
|
||||||
|
"index",
|
||||||
|
"api",
|
||||||
|
"setRecordSpeed"
|
||||||
|
],
|
||||||
|
"query": [
|
||||||
|
{
|
||||||
|
"key": "secret",
|
||||||
|
"value": "{{ZLMediaKit_secret}}",
|
||||||
|
"description": "api操作密钥(配置文件配置),如果操作ip是127.0.0.1,则不需要此参数"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "vhost",
|
||||||
|
"value": "{{defaultVhost}}",
|
||||||
|
"description": "虚拟主机,例如__defaultVhost__"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "app",
|
||||||
|
"value": "live",
|
||||||
|
"description": "应用名,例如 live"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "stream",
|
||||||
|
"value": "obs",
|
||||||
|
"description": "流id,例如 obs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "speed",
|
||||||
|
"value": 2.0,
|
||||||
|
"description": "要设置的录像倍速",
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"response": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "设置录像流播放位置(seekRecordStamp)",
|
||||||
|
"request": {
|
||||||
|
"method": "GET",
|
||||||
|
"header": [],
|
||||||
|
"url": {
|
||||||
|
"raw": "{{ZLMediaKit_URL}}/index/api/startRecord?secret={{ZLMediaKit_secret}}&vhost={{defaultVhost}}&app=live&stream=obs&stamp=1000",
|
||||||
|
"host": [
|
||||||
|
"{{ZLMediaKit_URL}}"
|
||||||
|
],
|
||||||
|
"path": [
|
||||||
|
"index",
|
||||||
|
"api",
|
||||||
|
"seekRecordStamp"
|
||||||
|
],
|
||||||
|
"query": [
|
||||||
|
{
|
||||||
|
"key": "secret",
|
||||||
|
"value": "{{ZLMediaKit_secret}}",
|
||||||
|
"description": "api操作密钥(配置文件配置),如果操作ip是127.0.0.1,则不需要此参数"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "vhost",
|
||||||
|
"value": "{{defaultVhost}}",
|
||||||
|
"description": "虚拟主机,例如__defaultVhost__"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "app",
|
||||||
|
"value": "live",
|
||||||
|
"description": "应用名,例如 live"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "stream",
|
||||||
|
"value": "obs",
|
||||||
|
"description": "流id,例如 obs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "stamp",
|
||||||
|
"value": 1000,
|
||||||
|
"description": "要设置的录像播放位置",
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"response": []
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "停止录制(stopRecord)",
|
"name": "停止录制(stopRecord)",
|
||||||
"request": {
|
"request": {
|
||||||
|
@ -1037,6 +1037,45 @@ void installWebApi() {
|
|||||||
val["code"] = result ? API::Success : API::OtherFailed;
|
val["code"] = result ? API::Success : API::OtherFailed;
|
||||||
val["msg"] = result ? "success" : "start record failed";
|
val["msg"] = result ? "success" : "start record failed";
|
||||||
});
|
});
|
||||||
|
|
||||||
|
//设置录像流播放速度
|
||||||
|
api_regist("/index/api/setRecordSpeed", [](API_ARGS_MAP) {
|
||||||
|
CHECK_SECRET();
|
||||||
|
CHECK_ARGS("schema", "vhost", "app", "stream", "speed");
|
||||||
|
auto src = MediaSource::find(allArgs["schema"],
|
||||||
|
allArgs["vhost"],
|
||||||
|
allArgs["app"],
|
||||||
|
allArgs["stream"]);
|
||||||
|
if (src) {
|
||||||
|
bool flag = src->speed(allArgs["speed"].as<float>());
|
||||||
|
val["result"] = flag ? 0 : -1;
|
||||||
|
val["msg"] = flag ? "success" : "set failed";
|
||||||
|
val["code"] = flag ? API::Success : API::OtherFailed;
|
||||||
|
} else {
|
||||||
|
val["result"] = -2;
|
||||||
|
val["msg"] = "can not find the stream";
|
||||||
|
val["code"] = API::OtherFailed;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
api_regist("/index/api/seekRecordStamp", [](API_ARGS_MAP) {
|
||||||
|
CHECK_SECRET();
|
||||||
|
CHECK_ARGS("schema", "vhost", "app", "stream", "stamp");
|
||||||
|
auto src = MediaSource::find(allArgs["schema"],
|
||||||
|
allArgs["vhost"],
|
||||||
|
allArgs["app"],
|
||||||
|
allArgs["stream"]);
|
||||||
|
if (src) {
|
||||||
|
bool flag = src->seekTo(allArgs["stamp"].as<size_t>());
|
||||||
|
val["result"] = flag ? 0 : -1;
|
||||||
|
val["msg"] = flag ? "success" : "seek failed";
|
||||||
|
val["code"] = flag ? API::Success : API::OtherFailed;
|
||||||
|
} else {
|
||||||
|
val["result"] = -2;
|
||||||
|
val["msg"] = "can not find the stream";
|
||||||
|
val["code"] = API::OtherFailed;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// 停止录制hls或MP4
|
// 停止录制hls或MP4
|
||||||
api_regist("/index/api/stopRecord",[](API_ARGS_MAP){
|
api_regist("/index/api/stopRecord",[](API_ARGS_MAP){
|
||||||
@ -1399,4 +1438,4 @@ void unInstallWebApi(){
|
|||||||
s_rtpServerMap.clear();
|
s_rtpServerMap.clear();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user