本文介紹視頻理解(videorecog)類目下的視頻內(nèi)容理解UnderstandVideoContent的語法及示例。
功能描述
視頻內(nèi)容理解能力可以分析出視頻中的明星、素人、游戲畫面等各種元素。
應(yīng)用場(chǎng)景
互聯(lián)網(wǎng)廣告分析:可分析互聯(lián)網(wǎng)廣告的內(nèi)容和效果之間的關(guān)系,幫助客戶更高的提升廣告效果。
特色優(yōu)勢(shì)
支持分析各種復(fù)雜場(chǎng)景。如夾雜明星、素人等場(chǎng)景。
接入指引
1. 注冊(cè)阿里云賬號(hào):打開阿里云官網(wǎng),在阿里云官網(wǎng)右上角,單擊立即注冊(cè),按照操作提示完成賬號(hào)注冊(cè)。
2. 開通能力:
- 視頻內(nèi)容理解支持上海和呼和浩特地域(Region),默認(rèn)不顯示呼和浩特地域,如果您想使用呼和浩特地域,請(qǐng)?zhí)砑俞斸斎海?3109592)聯(lián)系技術(shù)支持開通呼和浩特白名單。
- 請(qǐng)確保您已開通視頻理解服務(wù),若未開通服務(wù)請(qǐng)立即開通。
3. 創(chuàng)建AccessKey:請(qǐng)確保您已創(chuàng)建AccessKey,如果您使用的是子賬號(hào)AccessKey,您需要給子賬號(hào)賦予AliyunVIAPIFullAccess權(quán)限,具體操作,請(qǐng)參見RAM授權(quán)。
4. 在線調(diào)試(可選):您可以通過OpenAPI Explorer在線調(diào)試能力,查看完整的調(diào)用示例代碼及SDK依賴信息,也可以下載完整的工程。
5. 開發(fā)接入步驟:
- 在SDK總覽中選擇您要接入使用的SDK語言。
- 在對(duì)應(yīng)語言的SDK文檔中找到AI類目為視頻理解(videorecog)類目的SDK包進(jìn)行安裝。
- 參考文檔中提供的示例代碼進(jìn)行適當(dāng)修改后調(diào)用。
6. 示例代碼:該能力常用語言的示例代碼,請(qǐng)參見視頻內(nèi)容理解示例代碼,常用語言查詢異步任務(wù)結(jié)果的示例代碼,請(qǐng)參見查詢異步任務(wù)結(jié)果示例代碼。
7. 客戶端直接調(diào)用:該能力常用的客戶端調(diào)用方式包括以下幾種。
輸入限制
- 視頻格式:MP4、AVI、FLV、MOV。
- 視頻大小:不超過1 GB。
- 視頻時(shí)長(zhǎng)限制:時(shí)長(zhǎng)不超過5分鐘,超過時(shí)只返回前5分鐘的分析結(jié)果。
- URL地址中不能包含中文字符。
計(jì)費(fèi)說明
關(guān)于視頻內(nèi)容理解的計(jì)費(fèi)方式及報(bào)價(jià),請(qǐng)參見計(jì)費(fèi)介紹。
調(diào)用步驟
該能力為異步能力,需分兩步進(jìn)行調(diào)用。
第一步調(diào)用UnderstandVideoContent接口提交任務(wù),請(qǐng)求成功后,得到一個(gè)任務(wù)ID。
第二步調(diào)用GetAsyncJobResult接口查詢結(jié)果,根據(jù)任務(wù)ID查詢?nèi)蝿?wù)執(zhí)行狀態(tài)和結(jié)果。如果任務(wù)還在處理中,可稍等一段時(shí)間后再進(jìn)行查詢。
調(diào)試
您可以在OpenAPI Explorer中直接運(yùn)行該接口,免去您計(jì)算簽名的困擾。運(yùn)行成功后,OpenAPI Explorer可以自動(dòng)生成SDK代碼示例。
請(qǐng)求參數(shù)
名稱 | 類型 | 是否必選 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | UnderstandVideoContent | 要執(zhí)行的操作。取值:UnderstandVideoContent。 |
VideoURL | String | 是 | http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/videorecog/UnderstandVideoContent/UnderstandVideoContent1.mp4 | 視頻URL地址。推薦使用上海地域的OSS鏈接,對(duì)于文件在本地或者非上海地域OSS鏈接的情況,請(qǐng)參見文件URL處理。 |
返回?cái)?shù)據(jù)
名稱 | 類型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 71EC3F13-F0CA-4558-AC7F-A351106F59F2 | 請(qǐng)求ID。 |
Data | Object | 返回的結(jié)果數(shù)據(jù)內(nèi)容。 該數(shù)據(jù)需要在異步任務(wù)執(zhí)行成功后,通過調(diào)用GetAsyncJobResult接口,對(duì)其Result字段進(jìn)行JSON反序列化之后得到。 |
|
TagInfo | Map | 標(biāo)簽。目前僅輸出 |
|
VideoInfo | Object | 視頻信息。 |
|
Width | Long | 720 | 視頻的寬度。單位:像素。 |
Height | Long | 1280 | 視頻的高。單位:像素。 |
Duration | Long | 43380 | 視頻的時(shí)長(zhǎng)。單位:毫秒。 |
Fps | Float | 25.0 | 視頻的幀率。單位:幀。 |
Message | String | 該調(diào)用為異步調(diào)用,任務(wù)已提交成功,請(qǐng)以requestId的值作為jobId參數(shù)調(diào)用同類目下GetAsyncJobResult接口查詢?nèi)蝿?wù)執(zhí)行狀態(tài)和結(jié)果。 | 提交異步任務(wù)后的提示信息。 |
TagInfo字段參數(shù)說明
TagInfo字段參數(shù)下會(huì)輸出sceneInfo(場(chǎng)景)和humanInfo(人),對(duì)應(yīng)場(chǎng)景包含字段參數(shù)請(qǐng)參見下表。
字段 |
類型 |
是否必須 |
示例值 |
描述 |
---|---|---|---|---|
TimeRange |
list |
是 |
[[0,0.1],[0.3,1.0]] |
表示視頻中的元素出現(xiàn)的時(shí)間相對(duì)位置。 例如整段視頻時(shí)長(zhǎng)為20秒,[[0,0.1],[0.3,1.0]]則表示該元素在整段視頻中出現(xiàn)了2次,第一次出現(xiàn)的時(shí)間段為0~2秒,第二次出現(xiàn)的時(shí)間段為6~20秒。 |
TimeProportion |
float |
是 |
80 |
表示視頻中的元素出現(xiàn)的時(shí)長(zhǎng)占比,輸出80則表示該元素在整段視頻出現(xiàn)的時(shí)間占總時(shí)長(zhǎng)的80%。取值范圍 [0,100.0]。 |
Number |
int |
是 |
1 |
如果為HumanInfo字段時(shí),當(dāng)識(shí)別為非明星時(shí)表示出現(xiàn)的人物數(shù)量,被識(shí)別為明星時(shí)顯示為1。 如果為非HumanInfo字段時(shí),可忽略此字段。 |
Category |
string |
是 |
human-real-celebrity-古天樂 |
標(biāo)簽名稱。具體分類如下圖所示。 |
Category標(biāo)簽取值
查詢結(jié)果
該接口為異步接口,當(dāng)前并未返回真實(shí)的請(qǐng)求結(jié)果,您需要通過返回的RequestId調(diào)用GetAsyncJobResult接口來獲取該接口的真實(shí)請(qǐng)求結(jié)果。詳情請(qǐng)參見GetAsyncJobResult。
SDK參考
阿里云視覺AI視頻理解類目下的視頻內(nèi)容理解能力推薦使用SDK調(diào)用,支持多種編程語言,調(diào)用時(shí)請(qǐng)選擇AI類目為視頻理解(videorecog)的SDK包,文件參數(shù)通過SDK調(diào)用可支持本地文件及任意URL,具體可參見SDK總覽。
示例代碼
該能力常用語言的示例代碼,請(qǐng)參見視頻內(nèi)容理解示例代碼,常用語言查詢異步任務(wù)結(jié)果的示例代碼,請(qǐng)參見查詢異步任務(wù)結(jié)果示例代碼。
示例
請(qǐng)求示例
http(s)://videorecog.cn-shanghai.aliyuncs.com/?Action=UnderstandVideoContent //更多關(guān)于訪問域名(Endpoint)信息,請(qǐng)參見:http://bestwisewords.com/document_detail/143103.html
&VideoURL=http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/videorecog/UnderstandVideoContent/UnderstandVideoContent1.mp4
&公共請(qǐng)求參數(shù)
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<UnderstandVideoContentResponse>
<RequestId>71EC3F13-F0CA-4558-AC7F-A351106F59F2</RequestId>
<Message>該調(diào)用為異步調(diào)用,任務(wù)已提交成功,請(qǐng)以requestId的值作為jobId參數(shù)調(diào)用同類目下GetAsyncJobResult接口查詢?nèi)蝿?wù)執(zhí)行狀態(tài)和結(jié)果。</Message>
</UnderstandVideoContentResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "71EC3F13-F0CA-4558-AC7F-A351106F59F2",
"Message" : "該調(diào)用為異步調(diào)用,任務(wù)已提交成功,請(qǐng)以requestId的值作為jobId參數(shù)調(diào)用同類目下GetAsyncJobResult接口查詢?nèi)蝿?wù)執(zhí)行狀態(tài)和結(jié)果。"
}
返回示例補(bǔ)充說明
//查詢結(jié)果:請(qǐng)求示例
http(s)://videorecog.cn-shanghai.aliyuncs.com/?Action=GetAsyncJobResult
&JobId=E75FE679-0303-4DD1-8252-1143B4FA8A27
&<公共請(qǐng)求參數(shù)>
//查詢結(jié)果:返回示例
{
"RequestId" : "43A0AEB6-45F4-4138-8E89-E1A5D63200E3",
"Data" : {
"Status" : "PROCESS_SUCCESS",
"JobId" : "186AC396-0EEC-46F1-AAA1-BF3585227427",
"Result" : "{\"tagInfo\":{\"humanInfo\":[{\"timeRange\":[[0.7272727272727273,0.9696969696969697]],\"timeProportion\":24.242424242424242,\"number\":2,\"category\":\"human-real-normal\"}],\"sceneInfo\":[{\"timeRange\":[[0,0.09090909090909091],[0.21212121212121213,0.6666666666666666],[0.696969696969697,0.7878787878787878],[0.8181818181818182,0.8787878787878788]],\"timeProportion\":69.6969696969697,\"number\":1,\"category\":\"gamescreen-screenshot\"},{\"timeRange\":[[0.09090909090909091,0.21212121212121213],[0.8787878787878788,1]],\"timeProportion\":24.242424242424242,\"number\":1,\"category\":\"liveaction\"}]},\"videoInfo\":{\"width\":664,\"height\":372,\"duration\":31050,\"fps\":23.976023976023978}}"
}
}
//Result反序列化
{
"tagInfo" : [ {
"humanInfo" : [ {
"timeRange" : [0.7272727272727273,0.9696969696969697],
"timeProportion" : 24.242424242424242,
"number" : 2,
"category" : "human-real-normal"
} ]
"sceneInfo" : [ {
"timeRange" : [0,0.09090909090909091],[0.21212121212121213,0.6666666666666666],[0.696969696969697,0.7878787878787878],[0.8181818181818182,0.8787878787878788],
"timeProportion" : 69.6969696969697,
"number" : 1,
"category" : "gamescreen-screenshot",
"timeRange" : [0.09090909090909091,0.21212121212121213],[0.8787878787878788,1],
"timeProportion" : 24.242424242424242,
"number" : 1,
"category" : "liveaction"
} ]
"videoInfo" : [ {
"width" : 664,
"height" : 372,
"duration" : 31050,
"fps" : "23.976023976023978"
} ]
} ]
}
錯(cuò)誤碼
關(guān)于視頻內(nèi)容理解的錯(cuò)誤碼,詳情請(qǐng)參見常見錯(cuò)誤碼。
安全聲明
- 請(qǐng)確保上傳的圖片或文件來源符合相應(yīng)的法律法規(guī)。
- 通過體驗(yàn)調(diào)試上傳的臨時(shí)文件有效期為1小時(shí),在24小時(shí)后會(huì)被系統(tǒng)自動(dòng)清理刪除。