Uso con un conector de Logic Apps
La API REST de Video Indexer (VI) de Azure AI admite la comunicación de servidor a servidor y cliente a servidor. La API permite integrar información de audio y vídeo en la lógica de la aplicación.
Se admiten conectores de Logic Apps y Power Automate compatibles con Video Indexer API de Azure AI.
Puede usar los conectores para configurar flujos de trabajo personalizados con el fin de indexar y extraer información de una gran cantidad de archivos de audio y vídeo, sin necesidad de escribir una sola línea de código. El uso de los conectores para la integración proporciona visibilidad sobre el estado del flujo de trabajo y una manera de depurarlo.
Introducción
En el ejemplo de este artículo se crean flujos de aplicación lógica. Las funcionalidades logic App y Power Automate y sus editores son casi idénticas.
El enfoque de dos flujos, dos flujos que funcionan juntos, admite la carga asincrónica y la indexación de archivos más grandes de forma eficaz.
- El primer flujo se desencadena cuando se agrega o modifica un blob en una cuenta de Azure Storage. Este flujo carga el nuevo archivo en Video Indexer de Azure AI con una dirección URL de devolución de llamada para enviar una notificación una vez completada la operación de indexación.
- El segundo flujo se desencadena en función de la dirección URL de devolución de llamada y guarda de nuevo la información extraída en un archivo JSON en Azure Storage.
Las aplicaciones lógicas que cree en este artículo contienen un flujo por aplicación. En la segunda sección, Crear una nueva aplicación lógica de consumo de tipos se explica cómo conectar las dos. El segundo flujo es independiente y lo desencadena el primero.
Cuando se carga e indexa un archivo desde el primer flujo, envía una solicitud HTTP con la dirección URL de devolución de llamada correcta para desencadenar el segundo flujo. A continuación, recuperará la información generada por Video Indexer de Azure AI. En este ejemplo, se almacena la salida del trabajo de indexación en Azure Storage. Sin embargo, es decisión suya lo que haga con la salida.
Requisitos previos
- Si no tiene una suscripción de Azure, cree una cuenta gratuita de Azure antes de empezar.
- Cree una cuenta de Azure AI Video Indexer basada en ARM.
- Cree una cuenta de Azure Storage. Las cuentas de almacenamiento de VI deben ser una cuenta de almacenamiento estándar de uso general v2. Anote la clave de acceso de la cuenta de almacenamiento.
- Cree dos contenedores: uno para almacenar los archivos multimedia, segundo para almacenar la información generada por Video Indexer de Azure AI. En este artículo, los contenedores son
videos
yinsights
.
- Cree dos contenedores: uno para almacenar los archivos multimedia, segundo para almacenar la información generada por Video Indexer de Azure AI. En este artículo, los contenedores son
Generar token de acceso
- Genere un token de acceso mediante generateAccessToken. Presione Pruébelo para obtener los valores correctos de su cuenta.
- Copie y péguelo en el Bloc de notas para un paso posterior.
Flujo n.º 1: Configuración del flujo de carga de archivos
En esta sección se describe cómo configurar el primer flujo, carga de archivos. El primer flujo se desencadena cuando se agrega o modifica un blob en una cuenta de Azure Storage. Este flujo carga el nuevo archivo en Video Indexer de Azure AI con una dirección URL de devolución de llamada para enviar una notificación una vez completada la operación de indexación.
Los pasos de flujo son:
- Cuando se agrega o modifica un blob (solo propiedades) (V2)
- Creación de un URI de SAS por ruta de acceso (V2)
- HTTP
- Carga de vídeo e índice
Crear el paso Cuando se agrega o modifica un blog (solo propiedades)(V2)
Cree la aplicación lógica en la misma región que la región de la cuenta de Azure Video Indexer (recomendada, pero no necesaria).
Llame a la aplicación
UploadIndexVideosApp
lógica .- Seleccione Consumo para Tipo de plan.
- Presione Revisar y crear ->Crear.
- Una vez completada la implementación de la aplicación lógica, en Azure Portal, busque y vaya a la aplicación lógica recién creada.
- En la sección Configuración, en el panel de la izquierda, seleccione la pestaña Identidad.
- En Sistema asignado, cambie el estado de Desactivado a Activado (el paso será importante más adelante en este tutorial).
- Presione Guardar (en la parte superior de la página).
- Seleccione la pestaña Diseñador de aplicaciones lógicas, en el panel de la izquierda.
- Elija un flujo de la aplicación lógica en blanco.
- Busque "blob" en la hoja Elegir una operación.
- En la pestaña Todos, elija el componente Azure Blob Storage.
- En Desencadenadores, seleccione el desencadenador denominado Cuando se agrega o modifica un blob (solo propiedades) (V2).
Cree un desencadenador Cuando se agrega o modifica un blob (solo propiedades) (V2).
Establezca la conexión de almacenamiento en estos valores:
Llave Value Nombre de conexión <Asigne un nombre a la conexión>. Tipo de autenticación Clave de acceso Nombre de la cuenta de Azure Storage <Nombre de la cuenta de almacenamiento donde se almacenarán los archivos multimedia>. Clave de acceso de la cuenta de Azure Storage Para obtener la clave de acceso de la cuenta de almacenamiento: en Azure Portal -> my-storage -> en Seguridad y redes ->Claves de acceso -> copie una de las claves. - Seleccione Crear.
- Especifique el contenedor de Blob Storage que se supervisa para ver los cambios.
Llave Value Nombre de cuenta de almacenamiento Nombre de la cuenta de almacenamiento donde se almacenan los elementos multimedia Contenedor /videos
- Seleccione Guardar :>
Creación de un URI de SAS por ruta de acceso (V2)
Seleccione +Nuevo paso
Acción Crear URI de SAS por ruta de acceso.
- Selección de la pestaña Acción.
- Busque y seleccione Crear URI de SAS por ruta de acceso (V2).
Llave Value Nombre de cuenta de almacenamiento <Nombre de la cuenta de almacenamiento donde se almacenarán los archivos multimedia>. Ruta del blob En Contenido dinámico, seleccione Lista de rutas de acceso de archivos. Identificador de la directiva de grupo Deje el valor predeterminado. Permisos Leer Protocolo de acceso compartido (aparece después de presionar Agregar nuevo parámetro) HttpsOnly - Seleccione Guardar.
Seleccione + Nuevo paso.
Creación de una acción HTTP
Busque y cree una acción HTTP con los valores de la tabla siguiente:
Llave Value Notas método POST URI [Token de acceso](token de #generate-an-access) Body { "permissionType": "Contributor", "scope": "Account" }
Consulte el ejemplo de la documentación sobre REST y asegúrese de eliminar la línea POST. Agregar nuevo parámetro Autenticación - Rellene los parámetros necesarios para la autenticación según la tabla siguiente:
Llave Value Tipo de autenticación Identidad administrada Identidad administrada Identidad administrada asignada por el sistema Audiencia https://management.core.windows.net
- Seleccione Guardar.
Configuración de permisos
Configure los permisos entre la aplicación lógica y la cuenta de Video Indexer de Azure AI.
Configure la identidad administrada asignada por el sistema para el permiso en el recurso azure AI Video Indexer. En Azure Portal, vaya al recurso o cuenta de Video Indexer de Azure AI.
- En la izquierda de la hoja, seleccione Control de acceso.
- Seleccione Agregar ->Agregar asignación de roles ->Colaborador ->Siguiente ->Usuario, grupo o entidad de servicio ->+Seleccionar miembros.
- En Miembros, busque el nombre de Logic Apps que creó (en este caso,
UploadIndexVideosApp
). - Haga clic en Seleccionar.
- Haga clic en Revisar y asignar.
Creación de una acción cargar vídeo e índice
Seleccione Video Indexer(V2).
En Video Indexer(V2), seleccione Upload Video and index (Cargar vídeo e índice).
Establezca la conexión a la cuenta de Video Indexer con los parámetros de la tabla siguiente:
Llave Value Nombre de conexión <Escriba un nombre para la conexión>, en este caso aviconnection
.Clave de API Esta es la clave de API personal, que está disponible en Perfil en el portal para desarrolladores, ya que esta aplicación lógica es para las cuentas de ARM no necesitamos la clave de API real y puede rellenar un valor ficticio como 12345. Seleccione Crear.
Rellene los parámetros de la acción Cargar vídeo e índice.
Sugerencia
Si no se encuentra el identificador de cuenta VI y no está en la lista desplegable, use el valor personalizado.
Llave Value Location Ubicación de la cuenta de Video Indexer de Azure AI asociada. Id. de cuenta Identificador de cuenta de la cuenta de Azure AI Video Indexer asociada. Puede encontrar el id. de cuenta en la página de información general de la cuenta en Azure Portal. O bien, la pestaña Configuración de la cuenta, a la izquierda del sitio web de Azure AI Video Indexer. Token de acceso Use la expresión body('HTTP')['accessToken']
para extraer el token de acceso en el formato correcto de la llamada HTTP anterior.Nombre del vídeo Seleccione Lista de archivos en el contenido dinámico de la acción Cuando se agrega o modifica un blob. Dirección URL del vídeo Seleccione Dirección URL del sitio web en el contenido dinámico de la acción Crear URI de SAS por ruta de acceso. Body Se puede dejar como valor predeterminado. Seleccione Guardar.
Flujo n.º 2: Creación de una nueva aplicación lógica de consumo de tipo
Cree el segundo flujo, Logic Apps de tipo consumo. El segundo flujo se desencadena en función de la dirección URL de devolución de llamada y guarda de nuevo la información extraída en un archivo JSON en Azure Storage.
Los pasos de flujo son:
- Cuando se recibe una solicitud HTTP
- HTTP
- Obtener índice de vídeo
- Creación de blobs (V2)
Configuración del desencadenador
Busque y seleccione la opción Cuando se recibe una solicitud HTTP.
Para el desencadenador, hay un campo DIRECCIÓN URL HTTP POST. La dirección URL no se generará hasta que se guarde el flujo; sin embargo, la necesitará en el futuro.
Sugerencia
Volveremos a la dirección URL creada en este paso.
Generar token de acceso
Es posible que tenga que generar otro token de acceso en función de cómo configure el primero. Copie y péguelo en el Bloc de notas.
- Generar un token de acceso.
- Seleccione Guardar ->+ Nuevo paso.
Configuración de Obtención de conclusiones de Video Indexer
Busque un "Video Indexer".
En Video Indexer(V2), seleccione la acción Get Video Index (Obtener índice de vídeo).
Establezca el nombre de la conexión:
Llave Value Nombre de conexión <Nombre de la conexión>. Por ejemplo, aviconnection
.Clave de API Esta es la clave de API personal, que está disponible en Perfil en el portal para desarrolladores. Para más información, consulte Suscripción a la API. Seleccione Crear.
Rellene los parámetros necesarios según la tabla:
Llave Value Location Ubicación de la cuenta de Video Indexer de Azure AI. Id. de cuenta El id. de cuenta de Video Indexer se puede copiar de la página de información general de recursos o cuentas de Azure Portal. Id. de vídeo* En Id. de vídeo, agregue contenido dinámico de tipo Expresión y coloque lo siguiente: triggerOutputs()['queries']['id']. Token de acceso En el contenido dinámico, en la sección Analizar JSON, seleccione el accessToken que es la salida de la acción Analizar JSON. *Esta expresión indica al conector que obtenga el identificador de vídeo de la salida del desencadenador. En este caso, la salida del desencadenador será la salida de Cargar vídeo e indexar del primer desencadenador.
Seleccione Guardar ->+ Nuevo paso.
Cree un blob y almacene el elemento JSON de información.
Busque "Blob de Azure" en el grupo de acciones.
Seleccione Crear blob(V2).
Establezca la conexión al almacenamiento de blobs que almacenará los archivos de información de JSON.
Llave Value Nombre de conexión <Escriba un nombre de conexión>. Tipo de autenticación Clave de acceso Nombre de la cuenta de Azure Storage <* El nombre de la cuenta de almacenamiento donde se almacenará la información*>. Clave de acceso de la cuenta de Azure Storage Vaya a Azure Portal-> my-storage-> en Seguridad y redes ->Claves de acceso> y copie una de las claves. - Seleccione Crear.
- Establezca la carpeta en la que se almacenará la información.
Llave Value Nombre de cuenta de almacenamiento <Escriba el nombre de la cuenta de almacenamiento que contendrá la salida JSON (en este tutorial es el mismo que el vídeo de origen).> Folder path (Ruta de acceso a la carpeta) En el menú desplegable, seleccione /insights
Blob name (Nombre de blob) En el contenido dinámico, en la sección Obtener índice de vídeo, seleccione Nombre y agregue _insights.json
, el nombre del archivo "insights" será el nombre de vídeo + insights.json.Contenido del blob En el contenido dinámico, en la sección Obtener índice de vídeo, seleccione el cuerpo. - Seleccione Guardar el flujo.
Actualice la dirección URL de devolución de llamada para recibir una notificación cuando finalice un trabajo de indexación.
Una vez guardado el flujo, se crea una dirección URL HTTP POST en el desencadenador.
- Copie la dirección URL del desencadenador.
- Vuelva al primer flujo y pegue la dirección URL en la acción Cargar vídeo e indexar en el parámetro de la dirección URL de devolución de llamada.
Asegúrese de que ambos flujos se guarden.