服務端上傳,是指將應用服務器上的媒體文件上傳到點播存儲。視頻點播提供常用語言的服務端上傳SDK以及相應的使用Demo。服務端上傳SDK封裝了獲取上傳地址和憑證的邏輯,只需簡單配置即可進行上傳。本文介紹服務端上傳SDK的使用場景、上傳流程和操作指引。
使用場景
服務端上傳SDK適用于自動化上傳、大批量遷移視頻上傳等場景,也適用于網絡媒體文件上傳(原理是先下載到服務器本地再上傳到點播)。
功能點 | 說明 | 備注 |
支持語言 | 目前支持的開發語言包括:Java、Python、PHP、C/C++。 | 其它語言可基于OSS原生SDK上傳。詳情請參見基于OSS原生SDK上傳。 |
媒體說明 | 支持的媒體格式請參見媒體上傳概述。 支持本地文件上傳和網絡文件上傳(URL拉取方式)。 |
說明 設置URL上傳時需要將URL編碼后再傳入后使用,避免存在特殊字符導致無法上傳的情況。 |
存儲地址 | 支持使用默認存儲地址或指定存儲地址。 | 默認存儲地址可以修改。詳情請參見管理存儲Bucket。 URL上傳僅支持華東2(上海)地域。 可通過設置獲取上傳地址和憑證相關接口StorageLocation參數實現。 |
內網上傳 | 如果上傳腳本部署在ECS,可在上傳邏輯中指定上傳腳本部署的ECS地域。如果ECS地域和上傳的視頻點播存儲地域相同,則自動使用內網上傳,上傳更快且更省公網流量。 | 由于視頻點播API只提供外網域名訪問,因此部署上傳腳本的ECS服務器必須具有訪問外網的權限。 |
媒資管理 | 支持設置元數據,如媒體標題、媒體標簽、媒體分類、視頻封面等。 | 可通過獲取上傳地址和憑證相關接口的參數(如Title、Tags、CateId、CoverURL等)設置。 |
音視頻轉碼 | 支持通過指定轉碼模板或工作流設置轉碼。 也支持不轉碼。 | 可通過獲取上傳地址和憑證相關接口的參數(如TemplateGroupId、WorkflowId等)設置。 |
上傳控制 | 支持設置上傳進度條。支持默認進度回調和自定義進度回調。 Java語言支持斷點續傳,其它語言不支持。 | M3U8文件上傳暫不支持設置上傳進度條。 |
事件通知 | 支持設置回調獲取上傳事件通知。支持的事件通知請參見上傳設置。 | 配置回調請參見回調設置。 |
上傳授權 | 支持上傳憑證方式(使用阿里云賬號AK或經過授權的RAM用戶AK初始化)授權上傳。 支持STS方式(使用STS臨時AK初始化)授權上傳。 | STS方式需要用戶自行搭建服務獲取STS臨時AK。 |
上傳加速 | 開通后支持。開通上傳加速功能需提交工單。 | 申請開通后,可通過獲取上傳地址和憑證相關接口的 |
上傳地址和憑證相關接口包括:
上傳流程
服務端上傳SDK封裝了獲取上傳地址和憑證的邏輯和OSS上傳邏輯,只需簡單配置即可進行上傳。完整的上傳流程如下圖所示:
流程詳解
用戶在上傳應用服務集成點播服務端上傳SDK并完成上傳設置,如:AK信息、文件地址、存儲地址、媒資管理、轉碼設置、上傳控制等。
上傳應用服務器使用點播服務端上傳SDK調用上傳地址和憑證相關接口獲取上傳地址、上傳憑證及媒資信息。
說明您也可以構造HTTP/HTTPS請求獲取上傳地址和憑證,但需要自行構造簽名,出錯概率較高。上傳地址和憑證相關接口包括:
點播服務在請求結果中返回上傳地址(UploadAddress)、上傳憑證(UploadAuth)和媒體ID等信息。
說明點播服務在下發上傳地址和憑證時還會自動創建媒資信息,即媒體ID(MediaId),用于媒資生命周期管理或媒體處理。
獲取視頻上傳地址和憑證返回的
VideoId
即媒體ID。獲取圖片上傳地址和憑證返回的
ImageId
即媒體ID。獲取輔助媒資上傳地址和憑證返回的
MediaId
即媒體ID。請妥善保存媒體ID,作為媒資管理、音視頻播放、媒體處理等的輸入。
上傳應用服務器通過點播服務端上傳SDK封裝好的OSS上傳邏輯開始上傳。
OSS服務返回上傳結果。
說明上傳結果也可以通過提前配置回調接收上傳相關事件來監聽。
操作指引
不同語言的服務端上傳SDK的集成與使用方法不同。請根據需要點擊以下鏈接跳轉至具體的操作指引。
點播服務端上傳SDK與點播服務端SDK的區別
點播服務端上傳SDK與點播的服務端SDK是不同的概念。點播服務端上傳SDK封裝了完整的上傳邏輯,可直接集成使用。而點播服務端SDK集成了點播的全部功能,其中上傳功能僅僅提供獲取上傳地址和憑證部分的邏輯,需要結合具體的使用場景使用,也需要用戶自行實現上傳邏輯,包括在點播服務獲取上傳憑證和地址、Base64解碼上傳憑證和地址、調用OSS能力完成上傳等。關于點播服務端SDK的詳細信息請參見點播服務端SDK。