本文介紹視頻生產(videoenhan)類目下的視頻畫幅變換ChangeVideoSize的語法及示例。

功能描述

視頻畫幅變換能力可以對輸入視頻進行智能裁剪和填充,輸出任意分辨率的視頻。

說明
  • 您可以進入在線咨詢獲取在線人工幫助。
  • 當前能力可在視覺智能開放平臺有完整的免費產品體驗,您可以單擊立即試用對該能力進行更直觀試用以及在線購買。
  • 阿里云視覺智能開放平臺視覺AI能力API接入、接口使用或問題咨詢等,請通過釘釘群(23109592)加入阿里云視覺智能開放平臺咨詢群聯系我們。

接入指引

1. 注冊阿里云賬號:打開阿里云官網,在阿里云官網右上角,單擊立即注冊,按照操作提示完成賬號注冊。

2. 開通能力:請確保您已開通視頻生產服務,若未開通服務請立即開通。

3. 創建AccessKey:請確保您已創建AccessKey,如果您使用的是子賬號AccessKey,您需要給子賬號賦予AliyunVIAPIFullAccess權限,具體操作,請參見RAM授權。

4. 在線調試(可選):您可以通過OpenAPI Explorer在線調試能力,查看完整的調用示例代碼及SDK依賴信息,也可以下載完整的工程。

5. 開發接入步驟:

  • SDK總覽中選擇您要接入使用的SDK語言。
  • 在對應語言的SDK文檔中找到AI類目為視頻生產(videoenhan)類目的SDK包進行安裝。
  • 參考文檔中提供的示例代碼進行適當修改后調用。

6. 示例代碼:該能力常用語言查詢異步任務結果的示例代碼,請參見查詢異步任務結果示例代碼。

7. 客戶端直接調用:該能力常用的客戶端調用方式包括以下幾種。

輸入限制

  • 視頻格式:MP4、AVI、MOV、FLV。
  • 視頻大?。翰怀^1 GB。
  • 視頻時長:時長小于2小時,超出會被截斷。
  • URL地址中不能包含中文字符。

計費說明

關于視頻畫幅變換的計費方式及報價,請參見計費介紹。

說明 下方調試接口為付費接口。

調用步驟

該能力為異步能力,需分兩步進行調用。

第一步調用ChangeVideoSize接口提交任務,請求成功后,得到一個任務ID。

第二步調用GetAsyncJobResult接口查詢結果,根據任務ID查詢任務執行狀態和結果。如果任務還在處理中,可稍等一段時間后再進行查詢。

調試

您可以在OpenAPI Explorer中直接運行該接口,免去您計算簽名的困擾。運行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。

請求參數

名稱 類型 是否必選 示例值 描述
Action String ChangeVideoSize

系統規定參數。取值:ChangeVideoSize

VideoUrl String http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/videoenhan/ChangeVideoSize/ChangeVideoSize1.mp4

視頻URL地址。推薦使用上海地域的OSS鏈接,對于文件在本地或者非上海地域OSS鏈接的情況,請參見文件URL處理。

Width Integer 600

輸出視頻的寬度,單位像素,取值范圍32~2160。

Height Integer 1000

輸出視頻的高度,單位像素,取值范圍32~2160。

CropType String smart

裁剪方式,可選smart、fill、cut。具體含義如下所示。

  • smart(智能裁剪):根據主體位置智能決定填充還是裁剪,或者填充一部分,裁切一部分。
  • fill(填充):按最長邊進行畫幅調整,超出部分填充模糊背景或顏色,或者進行拉伸處理。
  • cut(裁剪):按最短邊進行畫幅調整,超出部分裁剪掉。
FillType String image

填充方式。包括image、color、stretch。具體含義如下所示。

  • image:填充視頻中間一幀的內容,填充前進行模糊處理。
  • color:指定填充顏色,表示RGB值的數組,例如紅色[255,0,0]。
  • stretch:通過拉伸進行填充。如果畫幅調整比例較大會導致畫面扭曲嚴重,不推薦使用。
Tightness Float 0.5

裁切框的緊湊度,取值范圍0~1。值越大裁掉的內容越多。默認值為0.6。

R Integer 0

當FillType取值為color時需要設置。表示RGB值中R的取值。

G Integer 0

當FillType取值為color時需要設置。表示RGB值中G的取值。

B Integer 0

當FillType取值為color時需要設置。表示RGB值中B的取值。

返回數據

名稱 類型 示例值 描述
RequestId String C00C5A32-9F54-44F0-9778-0968DD9BF22A

請求ID。

Data Object

返回的數據內容。該數據需要在異步任務執行成功后,通過調用GetAsyncJobResult接口,對其Result字段進行JSON反序列化之后得到。

VideoCoverUrl String http://vibktprfx-prod-prod-aic-vd-cn-shanghai.oss-cn-shanghai.aliyuncs.com/video-crop/2020-07-24-20/ZTZslWcU.jpg?Expires=1595597077&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=5cq1NNBEzS64U7RTXRBGlo7WPy****

輸出視頻封面URL地址。

說明 該URL地址為臨時地址,有效期為30分鐘,過期后將無法訪問。若需要長時間或者永久保存文件,請在30分鐘內訪問URL地址,下載文件轉存到自己的OSS或者其他存儲空間。
VideoUrl String http://vibktprfx-prod-prod-aic-vd-cn-shanghai.oss-cn-shanghai.aliyuncs.com/video-crop/2020-07-24-20/ZTZslWcU.mp4?Expires=1595597077&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=ZyvD9AXCT2IUFkVJngQdbXMwX6****

輸出視頻URL地址。

說明 該URL地址為臨時地址,有效期為30分鐘,過期后將無法訪問。若需要長時間或者永久保存文件,請在30分鐘內訪問URL地址,下載文件轉存到自己的OSS或者其他存儲空間。
Message String 該調用為異步調用,任務已提交成功,請以requestId的值作為jobId參數調用同類目下GetAsyncJobResult接口查詢任務執行狀態和結果。

提交異步任務后的提示信息。

查詢結果

該接口為異步接口,當前并未返回真實的請求結果,您需要通過返回的RequestId調用GetAsyncJobResult接口來獲取該接口的真實請求結果。詳情請參見GetAsyncJobResult。

SDK參考

阿里云視覺AI視頻生產類目下的視頻畫幅變換能力推薦使用SDK調用,支持多種編程語言,調用時請選擇AI類目為視頻生產(videoenhan)的SDK包,文件參數通過SDK調用可支持本地文件及任意URL,具體可參見SDK總覽

示例代碼

該能力常用語言查詢異步任務結果的示例代碼,請參見查詢異步任務結果示例代碼。

示例

請求示例

http(s)://videoenhan.cn-shanghai.aliyuncs.com/?Action=ChangeVideoSize      //更多關于訪問域名(Endpoint)信息,請參見:http://bestwisewords.com/document_detail/143103.html
&VideoUrl=http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/videoenhan/ChangeVideoSize/ChangeVideoSize1.mp4
&Width=600
&Height=1000
&CropType=smart
&FillType=image
&Tightness=0.5
&R=0
&G=0
&B=0
&公共請求參數

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<ChangeVideoSizeResponse>
    <RequestId>C00C5A32-9F54-44F0-9778-0968DD9BF22A</RequestId>
    <Message>該調用為異步調用,任務已提交成功,請以requestId的值作為jobId參數調用同類目下GetAsyncJobResult接口查詢任務執行狀態和結果。</Message>
</ChangeVideoSizeResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "C00C5A32-9F54-44F0-9778-0968DD9BF22A",
  "Message" : "該調用為異步調用,任務已提交成功,請以requestId的值作為jobId參數調用同類目下GetAsyncJobResult接口查詢任務執行狀態和結果。"
}

返回示例補充說明

 //查詢結果:請求示例
http(s)://videoenhan.cn-shanghai.aliyuncs.com/?Action=GetAsyncJobResult
&JobId=E75FE679-0303-4DD1-8252-1143B4FA8A27
&<公共請求參數>

//查詢結果:返回示例
{
  "RequestId" : "43A0AEB6-45F4-4138-8E89-E1A5D63200E3",
  "Data" : {
    "Status" : "PROCESS_SUCCESS",
    "JobId" : "186AC396-0EEC-46F1-AAA1-BF3585227427",
    "Result" : "{\"VideoCoverUrl\":\"http://vibktprfx-prod-prod-aic-vd-cn-shanghai.oss-cn-shanghai.aliyuncs.com/video-crop/2020-07-24-20/ZTZslWcU.jpg?Expires=1595597077&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=5cq1NNBEzS64U7RTXRBGlo7WPy****\",\"VideoUrl\":\"http://vibktprfx-prod-prod-aic-vd-cn-shanghai.oss-cn-shanghai.aliyuncs.com/video-crop/2020-07-24-20/ZTZslWcU.mp4?Expires=1595597077&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=ZyvD9AXCT2IUFkVJngQdbXMwX6****\"}"
  }
}

//Result反序列化
{
  "VideoCoverUrl" : "http://vibktprfx-prod-prod-aic-vd-cn-shanghai.oss-cn-shanghai.aliyuncs.com/video-crop/2020-07-24-20/ZTZslWcU.jpg?Expires=1595597077&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=5cq1NNBEzS64U7RTXRBGlo7WPy****",
  "VideoUrl" : "http://vibktprfx-prod-prod-aic-vd-cn-shanghai.oss-cn-shanghai.aliyuncs.com/video-crop/2020-07-24-20/ZTZslWcU.mp4?Expires=1595597077&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=ZyvD9AXCT2IUFkVJngQdbXMwX6****"
}

錯誤碼

關于視頻畫幅變換的錯誤碼,具體請參見常見錯誤碼。

安全聲明

  • 請確保上傳的圖片或文件來源符合相應的法律法規。
  • 通過體驗調試上傳的臨時文件有效期為1小時,在24小時后會被系統自動清理刪除。