媒体上传的实质是将媒体资源注册到视频点播服务,因此也是使用其它视频点播服务(媒资管理、媒体处理、分发播放等)的前提。本文描述媒体上传需要关注的媒体说明、上传方式、上传相关设置以及上传后的注意事项等。

媒体说明

视频点播支持视频、音频、图片、辅助媒资(水印、字幕、素材文件)等媒体文件上传。文件可以是本地文件也可以是网络文件(网络文件采用URL拉取上传)。各类型文件的详细格式支持情况请参见下表。

说明 上传时需要包含文件扩展名,大小写都支持,如MP4和mp4等同。
媒体类型 支持文件格式
视频
  • MPEG格式:MP4、TS、3GP、MPG、MPEG、MPE、DAT、VOB、ASF等。
  • AVI格式:AVI。
  • Windows Media Video格式:WMV、ASF。
  • Flash Video格式:FLV、F4V。
  • Real Video格式:RM、RMVB。
  • QuickTime格式:MOV。
  • Matroska格式:MKV。
  • HLS格式:M3U8。
    注意 控制台上传场景下,M3U8格式的文件仅支持URL拉取方式上传,不支持本地文件上传。
  • 其它格式:DV、GIF、M2T、M4V、MJ2、MJPEG、MTS、OGG、QT、SWF、WEBM。
音频 MP3、WMA、WAV、AAC、RA、M4A、FLAC、APE、AC3、AMR、CAF、ACM。
图片 PNG、JPG、JPEG、GIF。
辅助媒资
  • 水印文件:PNG、GIF、APNG、MOV。
  • 字幕文件:SRT、ASS、STL、TTML、VTT。
  • 素材文件:JPG、GIF、PNG、MP4、MAT、ZIP。

文件相关限制

  • 本地文件:最大支持48.8 TB的单个文件。
  • 网络文件:最大支持5 GB的单个文件。
  • 控制台上传场景下,M3U8格式的视频文件仅支持URL拉取方式上传,不支持本地上传方式上传。

存储说明

存储地域

视频点播基于阿里云对象存储OSS(Object Storage Service)提供媒体资源存储服务。视频点播的存储节点遍布全球,每个存储节点为一个存储地域,每个存储地域由点播系统分配一个存储地址。

存储地址

开通视频点播服务会默认启用华东2(上海)地域的存储地址(点播系统Bucket)。其它地域的存储地址可根据业务需要选择启用或不启用。如果不启用其它地域的存储地址,系统将华东2(上海)的存储地址作为默认存储地址使用。启用多个存储地域的存储地址后,可修改默认存储地址。上传文件时可以指定存储地址或不指定存储地址,不指定时点播系统将选用默认存储地址。

视频点播的存储地域及存储地址启用情况如下。

说明 使用视频点播控制台或PC端上传工具上传时根据登录(或选择)的地域使用存储地址。使用SDK或API上传时,可通过参数(如URL拉取上传接口的StorageLocation参数)指定存储地址。
存储地域 存储地域标识 存储地址
华东2(上海) cn-shanghai 开通视频点播服务时默认启用。如不启用其它存储地址,本地址为默认存储地址。
华北2(北京) cn-beijing 默认不启用。可根据业务需要通过控制台启用。启用多个存储地址后,默认存储地址也可根据业务需要重新指定。启用及修改默认存储地址的操作指引,请参见存储管理
华南1(深圳) cn-shenzhen
日本(东京) ap-northeast-1
新加坡 ap-southeast-1
印度尼西亚(雅加达) ap-southeast-5
德国(法兰克福) eu-central-1
印度(孟买) ap-south-1

存储计费

视频点播存储服务支持按量付费(后付费)和资源包(预付费)两种付费方式。

上传方式

工具上传

为满足部分用户快速上传或在较低门槛的运营场景下上传大文件等需求,视频点播提供界面化的上传工具,包括视频点播控制台PC端上传工具。两种工具的说明如下:

上传方式 适用场景 使用说明
控制台 快速、便捷地将媒体资源上传到点播的场景。
  • 开通点播服务后,使用浏览器登录控制台即可进行上传。
  • 针对音视频媒体,控制台支持本地文件上传,也支持URL拉取上传。
PC端上传工具 大文件、长时间上传,以及低门槛的运营场景。
说明 控制台由于安全策略,长时间上传可能会登录失效导致大文件上传失败,PC客户端工具能有效避免此问题。
  • 需要下载并安装点播客户端工具,目前支持Windows、macOS客户端。
  • 仅支持本地文件上传。
  • macOS客户端仅支持上传到华东2(上海)地域。如需上传到其它地域请使用Windows端工具。

开发上传

为满足开发者用户的上传需求,视频点播提供SDK或API的上传方式,其基础流程为:
  1. 在视频点播服务内获取上传凭证和上传地址。
  2. 调用OSS上传能力上传媒体。
目前支持的开发者上传方式包括:
  • 上传SDK(含服务端与客户端):上传SDK封装了获取上传凭证及地址的逻辑和OSS上传的逻辑。开发者仅需要简单配置就可以实现上传功能,推荐使用
  • URL批量拉取上传:视频点播提供一个封装好的服务(URL批量拉取上传接口),帮助开发者将媒体文件通过公网访问的URL地址拉取并上传到视频点播的存储地址。这种方式可以免去先将文件下载到本地服务器或终端再使用上传SDK上传到点播的过程。
  • 基于OSS原生SDK:当上传SDK无法满足业务需求(如开发语言不匹配)时,开发者可以结合点播服务端SDK(获取上传凭证及地址)和OSS原生SDK(Base64解码获取到的上传凭证及地址,然后调用OSS接口)完成上传。
  • 基于OSS服务端API(不推荐):开发者也可以直接调用点播服务端接口获取上传地址和凭证,再调用OSS原生API完成上传。考虑到上传效率和出错概率等因素,一般不推荐这种方式。
说明 关于如何选择上传方式,请参见如何选择上传方式

各开发者上传工具的说明如下:

上传方式 适用场景 使用说明

上传SDK(服务端)

  • 自动化上传、大批量迁移视频上传等场景。
  • 网络媒体文件上传。
说明 推荐使用上传SDK。如果上传SDK支持的语言不满足要求,还可以使用OSS原生SDK完成上传。
  • 服务端上传SDK封装了视频点播内获取上传凭证及地址的逻辑和OSS的上传能力,仅需要简单配置就可以实现上传功能。
  • 目前支持的开发语言包括:Java、Python、PHP、C/C++。

上传SDK(客户端)

UGC(用户生产内容)、PGC(专业生产内容)等场景。
  • 客户端上传SDK封装了OSS的上传逻辑。
  • 需要用户自行获取上传地址和凭证,推荐在应用服务器集成点播服务端SDK获取。获取后无需解码,直接下发给客户端即可。
  • 目前支持的客户端包括:Android端、iOS端、Web端(JavaScript)、微信小程序。

URL批量拉取上传

文件没有存储在本地服务器或终端,需要通过公网访问的URL地址上传的场景。
  • 仅支持上传到华东2(上海)新加坡地域。
  • 不适用于本地文件上传。

基于OSS原生SDK上传

  • 自动化上传、大批量迁移视频上传等场景。
  • 网络媒体文件上传。
  • 使用基于OSS原生SDK方式需要开发者用户自行实现所有上传逻辑,包括在点播服务获取上传地址和凭证、Base64解码上传凭证和地址和调用OSS能力完成上传。
  • 目前支持的开发语言包括:Java、Python、PHP、.NET、Go、Node.js、C/C++。
    说明 Java、Python、PHP、C/C++语言推荐使用点播上传SDK。

基于OSS API上传

不推荐

  • 自动化上传、大批量迁移视频上传等场景。
  • 网络媒体文件上传。
  • 调用视频点播相关服务端API获取上传地址和凭证。
  • Base64解码上传凭证和地址后再使用OSS能力上传文件。

上传设置

视频点播支持多种上传时的功能设置,如媒资管理、音视频转码、上传事件通知、上传控制等。

媒资管理(上传时)
  • 设置媒体标题:上传时设置音视频、图片的标题。
  • 指定媒体分类:创建好分类后,上传时指定媒体文件属于某个分类。
  • 设置媒体标签:上传时设置媒体标签。
  • 设置视频封面:上传视频时附带一张图片作为该视频的封面。

各上传方式支持上传时媒资管理的详情如下:

上传方式 设置媒体标题 指定媒体分类 设置媒体标签 设置视频封面
控制台 支持 支持 不支持 不支持
PC端上传工具 支持 支持 支持 不支持

上传SDK(服务端)

支持 支持 支持 支持

上传SDK(客户端)

支持 支持 支持 支持

URL批量拉取上传

支持 支持 支持 支持

基于OSS原生SDK上传

支持 支持 支持 支持

基于OSS API上传

支持 支持 支持 支持

音视频转码

上传音视频文件时设置转码(通过指定转码模板组或指定工作流),上传完成后自动触发转码。也可以设置不转码,但需要注意的是目前仅以下格式支持不转码直接播放:MP4、FLV、M3U8、MP3、WEBM。

  • 指定转码模板组转码:指定转码模板组是点播的默认处理方式,上传时选择转码模板组处理方式。上传完成后点播系统会自动触发转码。
  • 指定工作流转码:创建好含转码任务的工作流后,上传时选择工作流处理方式。上传完成后,点播系统会自动执行指定的工作流完成转码任务。
  • 不转码:如果上传时不需要转码,可通过选择转码模板组中的不转码模板实现。

各上传方式支持上传时转码的详情如下:

上传方式 转码模板组 工作流 不转码
控制台 支持 支持 支持
PC端上传工具 支持 不支持 支持

上传SDK(服务端)

支持 支持 支持

上传SDK(客户端)

支持 支持 支持

URL批量拉取上传

支持 支持 支持

基于OSS原生SDK上传

支持 支持 支持

基于OSS API上传

支持 支持 支持

上传事件通知

在媒体文件上传完成后,可通过事先配置的回调地址及时获取处理进展和状态。视频点播支持HTTP回调(兼容HTTPS)、MNS回调两种方式获取事件通知。了解回调配置请参见概述。完成回调配置请参见回调设置。所有上传方式均支持上传事件通知。上传相关的事件如下表所示。
说明 关于每个事件的内容详情,请参见事件详情
事件名称 事件类型 说明
视频上传完成 FileUploadComplete 点播服务端接收完上传的音视频文件后,会产生FileUploadComplete事件。
说明 对于不转码的音视频(或音频)接收到视频上传完成事件通知后方可获取播放地址播放。

如果上传时设置了不转码,接收到视频上传完成事件通知后,还可再调用提交媒体转码作业接口转码。

图片上传完成 ImageUploadComplete 点播服务端接收完上传的图片文件上传后,会产生ImageUploadComplete事件。
辅助媒资上传完成 AttachedMediaUploadComplete 点播服务端接收完上传的辅助媒资文件后,会产生AttachedMediaUploadComplete事件。
URL上传视频完成 UploadByURLComplete 调用URL批量拉取上传任务后,云端拉取视频上传完成会产生UploadByURLComplete事件。
单个清晰度转码完成 StreamTranscodeComplete 视频的某个清晰度、某种格式的流(如:标清的MP4格式)转码完成时会产生此事件。
说明 对于转码的音视频,接收到单个清晰度转码完成事件通知后方可获取播放地址播放。
视频转码完成 TranscodeComplete 视频所有流转码完成会产生TranscodeComplete事件。
说明 若要确保播放前所有清晰度都能获取到,可接收到视频转码完成事件通知后再处理。

上传控制

  • 分片上传:将待上传的文件分成多个碎片(Part)分别上传,上传完成之后将这些Part组合成一个Object。视频点播上传功能默认采用分片上传的方式上传文件。
    说明 使用分片上传时,若上传失败则可能会产生碎片文件,一般7天后会自动清除。开发者用户还可以调用删除上传中的碎片文件接口手动清除碎片文件。
  • 获取上传进度或状态。
  • 断点续传:如果上传过程中出现网络错误导致上传失败,视频点播支持从最后一块成功上传的碎片(Part)开始继续上传,从而实现断点续传效果。
    说明 上传SDK(客户端)内部会完成断点续传的功能,用户不需要关心任何断点和片段恢复,因为异常情况导致的视频上传失败重新上传都会从断点处开始上传。

各上传方式支持的上传控制详情如下:

上传方式 获取上传进度 断点续传 分片上传
控制台 支持
说明 上传页面的上传状态列显示进度。
不支持 默认启用
PC端上传工具 支持
说明 通过正在上传上传完成页面查看。
不支持 默认启用

上传SDK(服务端)

支持
说明 通过调用获取媒体上传详情接口查看。
仅Java上传SDK支持 默认启用

上传SDK(客户端)

支持
说明 通过调用获取媒体上传详情接查看。
支持 默认启用

URL批量拉取上传

支持
说明 通过调用获取URL上传信息接口查看。
不支持 默认启用

基于OSS原生SDK上传

支持 仅Java语言支持 默认启用

基于OSS API上传

支持 不支持 默认启用

上传授权

开发上传场景下,通过上传凭证和STS方式都能解决上传中的授权和安全问题,防止媒体文件被恶意上传和播放。

上传加速

功能说明

视频点播服务提供上传加速的功能,以提升远距离文件传输和GB、TB级大文件的上传性能。上传加速适用于跨区域(如跨海情况)上传,例如在中国大陆将视频上传到新加坡存储地域的存储地址。

开通方式

提交工单申请开通,需要提供阿里云账号UID和需要使用上传加速的存储地址

计费说明

上传加速是点播的增值功能,按使用情况收费。详细价格请参见阿里云产品定价
说明 只开通不使用不收费。

使用限制及支持的上传方式

上传加速仅限于上传视频。各上传方式的支持情况如下:

上传方式 上传加速
控制台 不支持
PC端上传工具 不支持

上传SDK(服务端)

支持

上传SDK(客户端)

支持

URL批量拉取上传

支持

基于OSS原生SDK上传

支持

基于OSS API上传

支持

上传之后

媒体上传完成后可使用的点播服务及后续分发播放的注意事项如下:

点播服务 描述 相关文档
媒资管理(上传后)

上传完成后,可使用点播服务管理媒体文件,如视频源文件、转码后的流文件、图片文件等。

媒资管理
媒体处理
点播支持媒体文件上传后的音视频转码、智能审核、云剪辑、AI处理等。
说明 上传到点播存储的音视频文件会默认提取Meta信息(如视频分辨率、时长、码率等),对视频也会默认截取封面图,且这部分预处理完全免费。
媒体处理
音视频播放
用户上传音视频完成后,并不代表音视频已准备就绪,还需点播服务端确认接收完成,可根据事件通知来确定上传的音视频何时能播放。
  • 对于不转码的音视频(或音频)接收到视频上传完成事件通知后即可获取播放地址播放。
  • 对于转码的音视频,接收到单个清晰度转码完成事件通知后即可获取播放地址播放。若要确保所有清晰度都能获取到,可接收到视频转码完成事件通知后再处理。