Appearance
1 API列表
- smtStartPlayerProcess
- smtStartTranscoderProcess
- smtStopPlayerProcess
- smtStopTranscoderProcess
- smtSetServerConfig
- smtGetMediaList
- smtGetMediaInfo
- smtGetServerConfig
2 返回约定
返回值统一为json字符串
样式如下:
json
{
"code":int,
"msg":string,
"id":string
}其中,id为处理的视频流任务唯一ID,该ID会在调用API"SmastartProcess"时返回。Code的含义如下:
cpp
{
NotFound = -500,//未找到
Exception = -400,//代码抛异常
InvalidArgs = -300,//参数不合法
SqlFailed = -200,//sql执行失败
AuthFailed = -100,//鉴权失败
OtherFailed = -1,//业务代码执行失败,
Success = 0//执行成功
}msg为结果信息,API使用者只需要显示msg即可。
3 API详解
1. smtStartPlayerProcess
描述:开始本地文件播放任务
参数:
| 参数名 | 参数类型 | 备注 |
|---|---|---|
| paramsStr | std::string | json形式的参数列表 |
paramsStr示例如下:
cpp
{
"secret":string,//鉴权码
"pull_url":string, //需要播放的视频文件地址
"is_video_forward":string, //是否直接转发
"forward_push_url": string, //直接转发的推流地址
"is_video_live": string, //是否直播-有OSD的推流
"live_push_url": string, //直播的推流地址
}注(本文中所有接口以此为例):
http调用:
http://127.0.0.1:8080/index/api/smt/smtStartPlayerProcess;paramsStr放在body中以json传输。
mqtt调用:
topic为:/index/api/smt/smtStartPlayerProcess。
2. smtStartTranscoderProcess
描述:开始转码任务
参数
| 参数名 | 参数类型 | 备注 |
|---|---|---|
| paramsStr | std::string | json形式的参数列表 |
paramsStr示例如下:
cpp
{
"secret":string,//鉴权码
"pull_url":string, //需要转码的视频文件地址
"out_url": string //转码文件输出地址
}3. smtStopPlayerProcess
描述:停止并删除本地文件播放任务
参数
| 参数名 | 参数类型 | 备注 |
|---|---|---|
| paramsStr | std::string | json形式的参数列表 |
paramsStr示例如下:
cpp
{
"secret":string,//鉴权码
"id": string //视频文件播放任务的GUID,由本服务返回给上级服务的
}4. smtStopTranscoderProcess
描述:停止并删除转码任务
参数
| 参数名 | 参数类型 | 备注 |
|---|---|---|
| paramsStr | std::string | json形式的参数列表 |
paramsStr示例如下:
cpp
{
"secret":string,//鉴权码
"id": string //转码任务的GUID,由本服务返回给上级服务的
}5. smtSetServerConfig
描述:修改配置文件
参数
| 参数名 | 参数类型 | 备注 |
|---|---|---|
| paramsStr | std::string | json形式的参数列表 |
paramsStr示例如下:
cpp
{
"secret":string, //鉴权码
"http.port": string,
"http.sslport":string,
"http.apiDebug":string,
"rpc.port":string
}6. smtGetMediaList
描述:获取所有正在处理的媒体任务列表,播放或转码
参数
| 参数名 | 参数类型 | 备注 |
|---|---|---|
| paramsStr | std::string | json形式的参数列表 |
paramsStr示例如下:
cpp
{
"secret":string, //鉴权码
"player_or_transcoder": string //播放或转码
}返回的媒体列表信息
cpp
{
"code":int, //错误码
"data": {//本地文件播放
[
{
"pull_url":string, //拉流地址
"is_forward":string, //是否直接转发
"forward_push_url": string, //直接转发地址
"is_video_live": string, //是否直播-有OSD的推流
"live_push_url": string, //直播的推流地址
"id":string //任务ID
},
......
]
}
}cpp
{
"code":int, //错误码
"data": {//转码
[
{
"pull_url": string, //拉流地址
"out_url": string, //转码输出地址
"id": string //任务id
},
......
]
}
}7. smtGetMediaInfo
描述:获取指定任务的媒体信息,播放或转码
参数
| 参数名 | 参数类型 | 备注 |
|---|---|---|
| paramsStr | std::string | json形式的参数列表 |
paramsStr示例如下:
cpp
{
"secret":string, //鉴权码
"id": string, //指定的任务id
"player_or_transcoder": string //播放或转码
}返回的媒体列表信息
cpp
{
"code":int, //错误码
"data": {//本地文件播放
"pull_url":string, //拉流地址
"is_forward":string, //是否直接转发
"forward_push_url": string, //直接转发地址
"is_video_live": string, //是否直播-有OSD的推流
"live_push_url": string, //直播的推流地址
}cpp
{
"code":int, //错误码
"data": {//转码
"pull_url": string, //拉流地址
"out_url": string, //转码输出地址
}
}8. smtGetServerConfig
描述:获取配置文件
参数
| 参数名 | 参数类型 | 备注 |
|---|---|---|
| paramsStr | std::string | json形式的参数列表 |
paramsStr示例如下:
cpp
{
"secret":string, //鉴权码
}返回的配置表信息
cpp
{
"secret":string, //鉴权码
"http.port": string,
"http.sslport": string,
"http.apiDebug": string,
"rpc.port": string
}
