Skip to content

1 API列表

  1. smtStartPlayerProcess
  2. smtStartTranscoderProcess
  3. smtStopPlayerProcess
  4. smtStopTranscoderProcess
  5. smtSetServerConfig
  6. smtGetMediaList
  7. smtGetMediaInfo
  8. 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

描述:开始本地文件播放任务

参数:

参数名参数类型备注
paramsStrstd::stringjson形式的参数列表

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

描述:开始转码任务

参数

参数名参数类型备注
paramsStrstd::stringjson形式的参数列表

paramsStr示例如下:

cpp
{
  "secret":string,//鉴权码
  "pull_url":string, //需要转码的视频文件地址
  "out_url": string //转码文件输出地址
}

3. smtStopPlayerProcess

描述:停止并删除本地文件播放任务

参数

参数名参数类型备注
paramsStrstd::stringjson形式的参数列表

paramsStr示例如下:

cpp
{
  "secret":string,//鉴权码
  "id": string //视频文件播放任务的GUID,由本服务返回给上级服务的
}

4. smtStopTranscoderProcess

描述:停止并删除转码任务

参数

参数名参数类型备注
paramsStrstd::stringjson形式的参数列表

paramsStr示例如下:

cpp
{
  "secret":string,//鉴权码
  "id": string //转码任务的GUID,由本服务返回给上级服务的
}

5. smtSetServerConfig

描述:修改配置文件

参数

参数名参数类型备注
paramsStrstd::stringjson形式的参数列表

paramsStr示例如下:

cpp
{
  "secret":string, //鉴权码
  "http.port": string,
  "http.sslport":string,
  "http.apiDebug":string,
  "rpc.port":string
}

6. smtGetMediaList

描述:获取所有正在处理的媒体任务列表,播放或转码

参数

参数名参数类型备注
paramsStrstd::stringjson形式的参数列表

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

描述:获取指定任务的媒体信息,播放或转码

参数

参数名参数类型备注
paramsStrstd::stringjson形式的参数列表

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

描述:获取配置文件

参数

参数名参数类型备注
paramsStrstd::stringjson形式的参数列表

paramsStr示例如下:

cpp
{
  "secret":string, //鉴权码
}

返回的配置表信息

cpp
{
  "secret":string, //鉴权码
  "http.port": string,
  "http.sslport": string,
  "http.apiDebug": string,
  "rpc.port": string
}