文档首页 > > API参考> 媒资上传接口> 创建媒资:上传方式

创建媒资:上传方式

分享
更新时间: 2019/08/23 16:31

功能描述

上传方式创建媒资。

点播服务最终会将用户的媒资文件存放在华为云的对象存储服务中,视频封面等文件的上传都是直接上传到对象存储服务(OBS)中。如果您以直接上传的方式创建媒资,则需要将视频上传到点播服务的桶中,但因为所需要上传到的桶归属于点播服务,所以您没有权限直接对这些桶进行任何操作,因此在上传过程中,您进行的每一个操作都需要先调用点播服务的获取授权接口获取每个操作的授权信息。

该接口调用后会返回一个“video_upload_url”“cover_upload_url”, 这些URL是带有授权信息的,可以直接使用PUT方法进行媒资文件上传,然后调用确认媒资上传接口完成媒资创建。若视频文件超过20M,则建议采取分段上传,则每一个向对象存储服务(OBS)的请求都需要向点播服务获取授权

若您需要使用分段上传,需要调用一系列API来完成,如图1所示,具体请参见获取分段上传授权

图1 直接上传流程图

请求URI

POST /v1.0/{project_id}/asset

请求参数

表1 请求参数

参数

类型

说明

必选项(M)/可选项(O)

title

String

媒资标题,长度不超过128个字节,UTF-8编码。

M

description

String

视频描述,长度不超过1024个字节。

O

category_id

Integer

媒资分类ID。

您可以在视频点播控制台的“全局设置 > 分类设置”中查看分类ID。

您也可以使用查询分类及其子分类接口来获取分类ID。

O

video_name

String

音视频文件名,长度不超过128个字节。

文件名后缀可选。

M

video_type

String

上传音视频文件的格式。

取值如下:
  • 视频文件:MP4、TS、MOV、MXF、MPG、FLV、WMV、AVI、M4V、F4V、MPEG、3GP、ASF、MKV、HLS
  • 音频文件:MP3、OGG、WAV、WMA、APE、FLAC、AAC、AC3、MMF、AMR、M4A、M4R、WV、MP2

若上传格式为音频文件,则不支持转码,添加水印,添加字幕。

M

video_md5

String

视频文件MD5值。

O

cover_type

String

封面图片文件类型。

取值如下:
  • JPG
  • PNG

上传后的封面名称是固定的,后缀名为封面类型缩写。例如cover0.jpg,cover1.png

若不指定类型,则封面文件无后缀名。

O

cover_md5

String

封面文件MD5值。

O

tags

String

视频标签。

单个标签不超过16个字节,最多不超过16个标签。

多个用逗号分隔,UTF8编码。

O

auto_publish

Integer

是否自动发布。

取值如下:
  • 0:表示不自动发布。
  • 1:表示自动发布。

默认值:0。

O

template_group_name

String

转码模板组名称。

若不为空,则上传后使用指定的转码模板进行转码,模板名称可在视频点播控制台的“全局设置 > 转码设置”中查看。

O

auto_preheat

Integer

是否自动预热到CDN。

取值如下:
  • 0:表示不自动预热。
  • 1:表示自动预热。

默认值:0。

O

subtitles

Array of Subtitle objects

字幕信息。

O

auto_encrypt

Integer

是否自动加密。

取值如下:
  • 0:表示不加密。
  • 1:表示需要加密。

默认值:0。

若设置为需要加密,则必须配置转码模板,且转码的输出格式是HLS。

O

thumbnail

Thumbnail object

截图参数。

O

review

Review object

审核参数。

O

smart_cover

Integer

是否启用智能封面。

取值如下:
  • 0:表示不启用。
  • 1:表示启用。

默认值:0。

O

表2 Subtitle参数说明

参数

参数类型

参数说明

必选项(M)/可选项(O)

id

Integer

字幕id。

取值范围:[1,8]。

M

type

String

字幕文件类型,目前暂只支持“SRT”。

M

md5

String

字幕文件的MD5值。

O

language

String

字幕语音类型。

取值如下:
  • CN:表示中文字幕。
  • EN:表示英文字幕。

M

description

String

字幕描述。

O

name

String

字幕文件名。

O

originalUrl

String

原始字幕URL。

O

ObjectKey

String

字幕文件上传OBS桶路径。

O

UploadStatus

Integer

文件是否存在OBS桶中。

O

表3 Thumbnail参数说明

参数

类型

说明

必选项(M)/可选项(O)

type

String

截图类型。

取值如下:

time:每次进行截图的间隔时间。

dots : 按照指定的时间点截图。

M

time

Integer

生成截图的时间间隔值。

取值范围:[1,12]之间的整数。

单位:秒

O

dots

Array of integers

指定时间截图时的时间点数组。

O

cover_position

Integer

指定第几张截图作为封面。

默认值:1。

O

format

Integer

截图文件格式。

取值如下:

1:jpg。

默认值:1 。

O

aspect_ratio

Integer

纵横比,图像缩放方式。

取值如下:
  • 0:自适应(保持原有宽高比)。
  • 1:16:9。

默认值:0。

O

max_length

Integer

截图最长边的尺寸。

单位:像素。

宽边尺寸按照该尺寸与原始视频像素等比缩放计算。

O

表4 Review参数说明

参数

类型

说明

必选项(M)/可选项(O)

interval

Integer

截图的时间间隔。

取值范围:5或10。

默认值:5

单位:秒。

O

politics

Integer

进行政治人物检测时的置信度。

取值范围:[-1,100]之间的整数。

说明:
  • 未设置或设置为0时,表示不进行此项检测。
  • 设置为-1 时,表示采用默认的置信度53。

O

terrorism

Integer

进行暴恐元素检测时的置信度。

取值范围:为[-1,100]之间的整数。

说明:
  • 未设置或设置为0时,表示不进行此项检测。
  • 设置为-1 时, 表示采用默认的置信度80。

O

porn

Integer

进行涉黄内容检测时的置信度。

取值范围:[-1,100]之间的整数。

说明:
  • 未设置或设置为0时,表示不进行此项检测。
  • 设置为-1 时, 表示采用默认的置信度80。

O

请求样例

{
	"title": "Avatar test test",
	"description": "Avatar, test",
	"category_id": 1,
	"tags":"mytags",
	"video_name": "Avatar_480P.mp4",
	"video_type": "MP4",
	"video_md5": "a945d4b3d8fc317190a9332fe856f03d",
	"cover_type": "JPG",
	"cover_md5": "a655d4b3d8fc758691a9332fe387f26c",
	"auto_publish": 0,
         "subtitles":[
       {
	"id":1,
	"language":"CN",
       "type": "SRT",
       "md5": "SqcyFjJZoDZaP8oKIY6rgQ==",
       "description":"AAAAA"  
        }
    ]
}

返回参数

  • 处理成功时返回
    表5 处理成功返回参数

    参数

    类型

    说明

    asset_id

    String

    媒资ID。

    video_upload_url

    String

    视频上传地址。

    用于客户端上传不超过20MB的小视频文件(<=20MB)。该URL中携带了临时授权信息,当文件大于20MB时,需要采用分段方式上传。

    说明:

    您可以使用PUT请求向“video_upload_url”中上传视频文件。

    其中,“Content-Type”需要根据上传的视频文件类型进行设置,如下所示:

    视频文件:video/视频格式,如:“video/mp4”

    cover_upload_url

    String

    封面上传地址,用于上传封面文件。

    说明:

    您可以使用PUT请求向“cover_upload_url”中上传封面图片。

    其中,“Content-Type”需要根据上传的封面文件类型进行设置,如下所示:

    图片文件:image/图片格式,如:“image/png”

    target

    file_addr object

    文件上传地址。

    subtitle_upload_urls

    Array of strings

    字幕上传地址,用于上传字幕。

    说明:

    您可以使用PUT请求向“subtitle_upload_urls”中上传字幕文件。

    其中,“Content-Type”需要根据上传的字幕文件类型进行设置,如下所示:

    字幕文件:application/octet-stream。

    表6 file_addr参数说明

    参数名

    类型

    参数描述

    bucket

    String

    OBS的bucket名称。

    location

    String

    桶所在的区域名, 如“华北-北京四”的区域名为“cn-north-4”,创建的桶所在区域必须和点播服务所在区域保持一致。

    object

    String

    文件的存储路径。

  • 处理失败时返回
    表7 处理失败返回参数

    参数

    说明

    类型

    error_code

    错误码。

    String

    error_msg

    错误描述。

    String

返回样例

  • 处理成功返回(Https返回200OK)
    {
      "asset_id": "f488337c31c8e4622f1590735b134c65",
      "video_upload_url": "https://obs.myhwclouds.com:443/obs-vod-1/%7Bproject_id%7D/f488337c31c8e4622f1590735b134c65/Avatar_480P.mp4?AWSAccessKeyId=CBN2JOVSQVVUREU0RCSN&Expires=1518147618&Signature=kZYh0hEos2VJhjjdHC2zVAHGyXA%3D",
      "cover_upload_url": "https://obs.myhwclouds.com:443/obs-vod-1/%7Bproject_id%7D/f488337c31c8e4622f1590735b134c65/cover/Cover0.jpg?AWSAccessKeyId=CBN2JOVSQVVUREU0RCSN&Expires=1518147619&Signature=eVoLA54Qi6cG9vZbS3fuaIw1RDQ%3D",
    "subtitle_upload_urls": [
            "https://obs-vod-6.obs.myhwclouds.com:443/14ce1d4437164aba8b364ce15866154e/53a018d2dc53ca07eb5a07a839205c9d/subtitle/1.srt?AWSAccessKeyId=CBN2JOVSQVVUREU0RCSN&Expires=1534760131&Signature=twZPabMSf%2FO%2B2H3mpo3Gsqk1uIo%3D"
        ]
    }
  • 处理失败返回(Https返回值400)
    {
      "error_code": "VOD.10064",
      "error_msg": "媒资分类不存在,请检查。"
    }

错误码

错误码请参见错误码

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区