在使用 Azure AI Video Indexer 編索引影片時,如果您的影片檔案庫不斷成長,請考慮擴展。
本文可解答下列問題:
- 我需要考慮任何技術限制嗎?
- 有沒有智慧又有效率的作業方法呢?
- 如何防止在過程中花費過多金錢?
本文提供六個最佳做法,說明如何大規模使用 Azure AI Video Indexer。
考慮在上傳影片時使用 URL 而不是位元組陣列。
Azure AI 影片索引器可讓您選擇從 URL 上傳影片,或藉由將檔案傳送為位元組陣列,後者隨附一些限制。
首先,檔案大小有限制。 相較於使用 URL 時的 30 GB 上傳大小限制,位元組陣列檔案的大小限制為 2 GB。
其次,考慮一下可能影響您效能的一些問題,從而影響您擴展能力:
- 使用多部分的方式傳送檔案,意指依賴網路的程度很高。
- 服務可靠性、
- 連線能力、
- 上傳速度、
- 在全球資訊網某處遺失了封包。
大規模使用 Azure AI 影片索引器的首要考量圖表。
使用 URL 上傳影片時,您只需要提供媒體檔案位置的路徑,Video Indexer 就會負責處理其他工作 (請參閱videoUrl
API 中的 [] 欄位)。
提示
使用上傳影片 API 的 videoUrl
選擇性參數。 此外,您可以使用 AzCopy 以快速且可靠的方式,將內容提交至記憶體帳戶,以便使用 SAS URL 將內容提交至 Azure AI 影片索引器。 Azure AI Video Indexer 建議使用「readonly」SAS URL。
遵守節流
Azure AI 影片索引器是專為大規模處理索引而建置的。 當您想要充分利用它時,也應該注意系統的功能,並據此設計整合。 您不想發出一批影片的上傳請求,卻發現有些影片未成功上傳,而且還收到 HTTP 429 回應碼(請求太多)。 API 要求限制為每秒 10 個要求,每分鐘最多 120 個要求。
Azure AI 影片索引器會在 HTTP 回應中新增 retry-after
標頭。 標頭會指定何時應該嘗試下一次重試。 在提出下一個要求之前,請確保予以尊重。
使用回撥 URL
與其重複輪詢您請求的上傳狀態,不如新增回呼 URL,等候 Azure AI 影片索引器通知您更新狀態。 當您的上傳要求中有狀態變更時,您會收到您指定URL的POST通知。
您可以將回撥 URL 新增為上傳影片 API 的參數之一。 請參閱 GitHub 存放庫中的程式碼範例。
針對回呼 URL,您也可以使用 Azure Functions。 它是無伺服器事件驅動平臺,可透過 HTTP 觸發並實作下列流程。
回撥 URL 定義
回呼 URL 用於通知客戶 (透過 POST 請求) 下列事件:
索引狀態變更:
屬性:
名稱 描述 id
影片識別碼 state
影片狀態 範例: https://test.com/notifyme?projectName=MyProject&id=1234abcd&state=Processed
在影片中識別到的人員:
屬性
名稱 描述 id
影片識別碼 faceId
影片索引中出現的臉部識別碼 knownPersonId
臉部模型中唯一的個人識別碼 personName
人員名稱 範例: https://test.com/notifyme?projectName=MyProject&id=1234abcd&faceid=12&knownPersonId=CCA84350-89B7-4262-861C-3CAC796542A5&personName=Inigo_Montoya
使用適合您的正確索引參數
決定是否大規模使用 Azure AI Video Indexer 時,請了解如何使用符合您需求的正確參數來充分利用此功能。 請思考您的使用案例,藉由定義不同的參數以節省成本,並加快影片索引編製過程的速度。 例如,如果不打算觀看影片,請不要將預設設為串流;如果只需要音訊見解,請不要編製影片見解索引。
以最佳解析度而非最高解析度編製索引
您可能會問,編製影片索引需要怎樣的影片品質?
在許多情況下,索引編製效能在 HD (720p) 影片和 4K 影片之間幾乎沒有差異。 最後,您幾乎得到相同的見解與相同的信心。 您上傳的影片品質越高,檔案大小就越高,這會導致上傳影片所需的計算能力和時間更高。
例如,使用臉部偵測功能時,較高的解析度有助於處理有許多細小但對內容很重要的臉部的案例。 不過,它伴隨著運行時間的二次增加,以及假陽性風險的增加。
因此,建議您驗證使用案例是否得到正確結果,並先在本機進行測試。 在 720p 和 4K 中上傳相同的影片,並比較您取得的見解。