You need to enable JavaScript to run this app.
导航
确认上传
最近更新时间:2023.04.25 14:38:26首次发布时间:2021.02.23 10:42:38

此接口用于确认媒资上传到视频点播的结果。确认上传成功,将返回 Vid 以及媒资基础信息。了解完整上传流程可参考媒资上传概述。您可以配置开启视频上传完成回调通知,开启后当视频上传完成,您将收到事件回调消息,配置方法详见回调设置

请求说明

  • 接口名称:CommitUploadInfo
  • 接口地址:https://vod.volcengineapi.com/?Action=CommitUploadInfo&Version=2020-08-01

请求参数

参数类型是否必选描述
ActionString接口名称,取值:CommitUploadInfo
VersionString版本号:2020-08-01
SpaceNameString上传的空间名
SessionKeyString会话 ID。获取上传地址和凭证接口下发。
CallbackArgsString回调时回传参数。通常为客户端上传时,服务端希望透传客户端的一些信息。
FunctionsString上传的功能函数。

Functions 为可扩展的 json 数组,比如:

'Functions':[{
                "Name": "Snapshot", 
                "Input":{
                        "SnapshotTime": 2.0
                }},
                {
                "Name": "xxx",
                        "Input":{}
                }
        ]

Functions 列表

NameInput响应对应的信息描述
SnapshotSnapshotInputPosterUri截图功能。默认抽第一帧,可以指定视频时间点抽帧做封面图
AddOptionInfoOptionInfo添加媒资信息功能
StartWorkflowWorkflowInput触发工作流功能
GetMetaVideoMeta获取属性功能。若不传,上传成功与否不依赖抽取 Meta,可能取到 Meta 也可能没有 Meta;若传,则获取 Meta 与上传成功强绑定,当获取 Meta 失败的时候,上传失败。

注意事项

当素材上传时,需要注意 Function 的顺序。当有 GetMeta 的 Function 时,要放在最前面。代码示例如下所示。

Functions:[{"Name":"GetMeta"},{"Name":"Snapshot","Input":{"SnapshotTime":0}},{"Name":"AddOptionInfo","Input":{"Title":"测试素材","Tags":"test","Description":"测试素材:字幕文件","Category":"subtitle","RecordType":2,"Format":"vtt"}}]

SnapshotInput

参数类型描述
SnapshotTimeFloat截图的时间

OptionInfo

参数类型描述
TitleString标题
TagsString多个标签可用逗号隔开
DescriptionString描述信息

RecordType

Integer

类型。音视频和素材的定义详见:媒资上传概述。取值如下:

  • 1 为音视频。
  • 2 为素材。

Category

String

素材分类。当上传类型为素材时,可以指定素材的分类信息,必填。可选的取值如下:

  • video:视频
  • audio:音频
  • image:图片
  • dynamic_img:动图
  • subtitle:字幕
  • font:字体
FormatString格式。在素材上传的情况下,若传入 Format 的话,控制台展示以您传入参数为准,否则以系统识别出的 Format 为准。若遇到特殊文件无法识别,Format 可能为空。
ClassificationIdint64分类 ID,可在控制台系统设置 > 分类管理中查看或通过媒资分类OpenAPI 查询,素材不支持分类。

获取上传地址凭证中 FileType 取值和 Category 对应关系如下表所示。

FileType 取值类型对应 Category 取值
mediaStringvideo、audio
imageStringimage、dynamic_img
objectStringsubtitle、font

WorkflowInput

参数类型描述
TemplateIdString工作流模板 ID

返回参数

参数类型描述
ResponseMetadataResponseMetadata通用返回结构
ResultVodCommitUploadInfoResult返回结果

ResponseMetadata

参数类型描述
RequestIdString请求 ID
ActionString请求接口
VersionString版本
ServiceString服务
RegionString区域
ErrorResponseError异常信息

ResponseError

参数类型描述
CodeString错误码
MessageString详细错误信息

VodCommitUploadInfoResult

参数类型描述
DataVodCommitUploadInfoData返回信息

VodCommitUploadInfoData

参数类型描述
VidString视频 ID。RecordType1 音视频时返回此参数。
PosterUriString视频对应的封面图 URI ID
SourceInfoVodSourceInfo视频元信息
MidString素材 ID。RecordType2 素材时返回此参数。

VodSourceInfo

参数类型描述
FileIdString文件 ID
Md5Stringhash 值

FileType

String

文件类型。取值如下:

  • video:视频。
  • audio:音频。
CodecString编码格式
Heightint32视频高度,单位为 px
Widthint32视频宽度,单位为 px
FormatString文件格式
DurationFloat时长,单位为 s
SizeDouble文件大小,单位为字节。
StoreUriString存储地址
DefinitionString视频分辨率
Bitrateint32码率,单位为 Kbps
FpsFloat帧率
CreateTimeString创建时间
QualityString音频质量
VideoStreamMetaVodVideoStreamMeta视频流信息
AudioStreamMetaVodAudioStreamMeta音频流信息

VodVideoStreamMeta

参数类型描述
CodecString视频编码格式
Heightint32视频高度,单位为 px
Widthint32视频宽度,单位为 px
DurationFloat视频时长,单位为 s
DefinitionString视频清晰度
Bitrateint32视频码率,单位为 Kbps
FpsFloat帧率

VodAudioStreamMeta

参数类型描述
DurationFloat音频时长,单位为 s
SampleRateint32音频采样率
Bitrateint32音频码率,单位为 Kbps

示例

音视频上传

请求示例

https://vod.volcengineapi.com/?Action=CommitUploadInfo&Version=2020-08-01&SessionKey=ApplyUploadInfoReturnSessionKey&SpaceName=YourSpaceName&Functions=[{"Name": "GetMeta"},{"Name":"Snapshot","Input":{"SnapshotTime": 2.0}}]&CallbackArgs=""

返回示例

{
    "ResponseMetadata": {
        "RequestId": "2020110618300501022509205920011***",
        "Action": "CommitUploadInfo",
        "Version": "2020-08-01",
        "Service": "vod",
        "Region": "cn-north-1"
    },
    "Result": {
        "Data": {
            "Vid": "v0c255fa007abu0lc8a0oej77lbbv***",
            "SourceInfo": {
                "StoreUri": "tos-path-v-da1421/49ad5efabc3a4b32bed5df34fa7fd***",
                "Md5": "cf2b56eaa3fe3ec856ec4503a068a***",
                "Width": 960,
                "Height": 540,
                "Duration": 52.036,
                "Bitrate": 2068561,
                "Format": "MP4",
                "Size": 13454959,
                "FileType": "video"
            },
            "PosterUri": "tos-path-v-da1421/3108f4e3298248bda9e5658ae0a52***",
            "CallbackArgs": ""
        }
    }
}

素材上传-音视频

请求示例

https://vod.volcengineapi.com/?Action=CommitUploadInfo&CallbackArgs=my callback&Functions=[{"Name":"GetMeta","Input":null},{"Name":"AddOptionInfo","Input":{"Title":"素材测试视频","Tags":"test","Description":"素材测试,视频文件","Category":"video","RecordType":2,"Format":"mp4"}}]&SessionKey=ApplyUploadInfoReturnSessionKey&SpaceName=YourSpaceName&Version=2020-08-01

返回示例

{
    "ResponseMetadata":{
        "RequestId":"202105081616520102040500970B000***",
        "Action":"CommitUploadInfo",
        "Version":"2020-08-01",
        "Service":"vod",
        "Region":"cn-north-1"
    },
    "Result":{
        "Data":{
            "Mid":"v02a36g10000c2b4hr46u54rsoatp***",
            "SourceInfo":{
                "StoreUri":"tos-path-v-da1421/1b4df71b655b4e2c9612659adc685***",
                "Md5":"3845d3fb09755e551f2b7ffb2739c0b6",
                "Width":540,
                "Height":960,
                "Duration":36.16,
                "Bitrate":975999,
                "Format":"MP4",
                "Size":4411516,
                "FileType":"video"
            },
            "CallbackArgs":"my callback"
        }
    }
}

素材上传-图片

请求示例

https://vod.volcengineapi.com/?Action=CommitUploadInfo&CallbackArgs=my callback&Functions=[{"Name":"GetMeta","Input":null},{"Name":"AddOptionInfo","Input":{"Title":"素材测试图片","Tags":"test","Description":"素材测试,图片文件","Category":"image","RecordType":2,"Format":"jpg"}}]&SessionKey=ApplyUploadInfoReturnSessionKey&SpaceName=YourSpaceName&Version=2020-08-01

返回示例

{
    "ResponseMetadata":{
        "RequestId":"202105081731060102251070930A01B***",
        "Action":"CommitUploadInfo",
        "Version":"2020-08-01",
        "Service":"vod",
        "Region":"cn-north-1"
    },
    "Result":{
        "Data":{
            "Mid":"i00c1li97hy2c2b5kmjc77u5vb34udm0",
            "SourceInfo":{
                "StoreUri":"tos-path-v-da1421/33f809756c3549cbbc9f3b2214e7d***",
                "Md5":"e521c9e25296f10fd3ac996cfe930***",
                "Width":720,
                "Height":1280,
                "Format":"jpeg",
                "Size":93371
            },
            "CallbackArgs":""
        }
    }
}

素材上传-字幕/字体

请求示例

https://vod.volcengineapi.com/?Action=CommitUploadInfo&CallbackArgs=my callback&Functions=[{"Name":"GetMeta","Input":null},{"Name":"AddOptionInfo","Input":{"Title":"素材测试字幕","Tags":"test","Description":"素材测试,字幕文件","Category":"subtitle","RecordType":2,"Format":"vtt"}}]&SessionKey=ApplyUploadInfoReturnSessionKey&SpaceName=YourSpaceName&Version=2020-08-01

返回示例

{
    "ResponseMetadata":{
        "RequestId":"202105081734110102251070930A000***",
        "Action":"CommitUploadInfo",
        "Version":"2020-08-01",
        "Service":"vod",
        "Region":"cn-north-1"
    },
    "Result":{
        "Data":{
            "Mid":"s00c1ukl07ahc2b5m4rc77u5vb34u***",
            "SourceInfo":{
                "StoreUri":"tos-path-v-da1421/000d2e4070b542c69f8048921c0c9***",
                "Md5":"5cede5d5ef20c351873bc0273da1d***",
                "Size":1326
            },
            "CallbackArgs":""
        }
    }
}

错误码

下表列举了本接口特有的错误码。视频点播公共错误码,详见 公共错误码

错误码说明
InvalidParameter.InvalidAccessKeyErrorAK 错误
InvalidParameter.InvalidParamError参数错误,包括 Session 的各个部分错误
InvalidParameter.UserNotSupportTosError账号配置错误
RequestLimitExceeded.TooManyRequestError请求超过上限
InvalidParameter.InvalidSpaceErrorSpace 填写错误
ResourceNotFound.VideoNotFoundError未找到对应视频
InvalidParameter.InvalidTopAccountError账号无权限
InvalidParameter.CategoryMismatchError素材上传 Category 与 FileType 不匹配
InternalError.SaveDBError内部错误
InternalError.RunFunctionError内部错误,执行 Function 时失败
InternalError.GetSignError内部错误,获取上传地址签名失败
InternalError.RunPluginError内部错误,运行插件失败
InternalError.InternalError内部错误

SDK

点播 OpenAPI 提供了配套的服务端 SDK,支持多种编程语言,帮助您实现快速开发。建议使用服务端 SDK 来调用 API,此 API 各语言调用的示例代码,请参考如下: