Try Azure AI Video Indexer enabled by Arc
Azure AI Video Indexer enabled by Arc is an Azure Arc extension enabled service that runs video and audio analysis on edge devices. The solution is designed to run on Azure Arc enabled Kubernetes and supports many video formats, including MP4 and other common formats. It supports several languages in all basic audio-related models. It assumes that one Video Indexer resource is mapped to one extension.
This article walks you through the steps required to enable Video Indexer as an Arc extension on your current infrastructure.
Example deployment
Here is a block diagram showing Azure AI Video Indexer running on Azure Arc. There are three types:
- Store type A uses both vision and audio presets.
- Store type B uses only vision presets. It also has a custom model. For more information about using a custom model with Azure AI Video Indexer enabled by Arc, see Bring Your Own AI model.
- Store C uses only audio presets.
The extension is stored on each edge device and each device is associated with a single AI Video Indexer account that interfaces with Azure Arc and the cloud.
Prerequisites
Important
To successfully deploy the Azure AI Video Indexer extension, it is mandatory that your Azure subscription id is approved in advance. You must first sign up using this form.
- Create an Azure subscription with permissions for creating Azure resources.
- Create an Azure AI Video Indexer Account. Use the Create Video Indexer account tutorial.
- Create an Arc enabled Kubernetes cluster.
- Download the example video.
To use the Video Indexer extension, you need to have an externally facing endpoint, which can be either a DNS name or IP. The endpoint should be set as a secure transfer protocol (https:\\
) and is used as the extension API endpoint, formatted as https:\\{endpointUri}/swagger/index.html
. It's also used by the Video Indexer web portal to communicate with the extension. It's recommended that you use an ingress control to manage the endpoint.
Note
If the endpoint is not publicly accessible, you will not be able to perform actions on the extension from the web portal.
Important
The AKS cluster contains the Video Indexer extension must be in the East US region.
Minimum hardware requirements for this quickstart
This quickstart is designed to allow you to see the extension in action, so smaller resource sizes have been chosen for you to work with in a test environment. For this quickstart, the minimum hardware requirements are:
- CPU: 16 cores
- Memory: 16 GB
For the minimum hardware requirements in a production environment, see the Minimum hardware requirements in the overview article.
Minimum software requirements
Component | Minimum Requirements |
---|---|
Operating System | Ubuntu 22.04 LTS or any Linux Compatible OS |
Kubernetes | 1.26 |
Azure CLI | 2.48.0 |
Parameter definitions
Parameter | Default | Description |
---|---|---|
release-namespace | yes | The Kubernetes namespace that the extension is installed into |
cluster-name | The Kubernetes Azure Arc instance name | |
resource-group | The Kubernetes Azure Arc resource group name | |
version | yes | Video Indexer Extension version, leave empty for latest |
speech.endpointUri | Speech Service Url Endpoint (link) | |
speech.secret | Speech Instance secret (link) | |
translate.endpointUri | Translation Service Url Endpoint (link) | |
translate.secret | Translation Service secret (link) | |
ocr.endpointUri | OCR Service Url Endpoint (link) | |
ocr.secret | OCR Service secret (link) | |
videoIndexer.accountId | Video Indexer Account ID | |
videoIndexer.endpointUri | Dns Name or IP to be used as the extension external endpoint. |
Prepare for deployment
During the deployment, the script asks for environment specific values. Have these values ready so you can copy and paste them when the script asks for them.
Question | Value | Details |
---|---|---|
What is the Video Indexer account ID during deployment? | GUID | Your Video Indexer Account ID |
What is the Azure subscription ID during deployment? | GUID | Your Azure Subscription ID |
What is the name of the Video Indexer resource group during deployment? | string | The Resource Group Name of your Video Indexer Account |
What is the name of the Video Indexer account during deployment? | string | Your Video Indexer Account name |
- In the Azure portal, navigate to your Azure Arc-connected cluster.
- From the menu, select Extensions > + Add > Azure AI Video Indexer Arc Extension.
- Select Create. The Create an AI Video Indexer extension screen will appear.
- Configure the extension in Instance details:
- Select the subscription and resource group for your extension.
- Select the region and connected k8 cluster.
- Enter a name for your extension.
- Select the Azure AI Video Indexer Account that the extension will be connected to.
- Enter the cluster endpoint, either an IP or DNS Name to be used as the API endpoint.
- Provide the storage class you want to use for the extension that's supported by your Kubernetes distribution. For example, if you're using AKS, you could use
azurefile-cli
. For more information on predefined storage classes supported by AKS, see Storage Classes in AKS. If you're using other Kubernetes distributions, see your Kubernetes distribution documentation for predefined storage classes supported or the way you can provide your own.
- Select Review + create and then Create.
Sample
Sample script to deploy Arc enabled AKS cluster with Video Indexer extension
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for