Uso de Zencoder con Azure

Zencoder puede cargar y descargar archivos (blobs) desde sus contenedores de Azure. Los detalles de la cuenta, el contenedor y el blob deben estar incrustados en la URL de las entradas del trabajo. & salidas.

Trabajando con Azure

 

Las URL de Azure deben usar el formato azure: // account-name: account-key @ container / blob. La siguiente solicitud de trabajo muestra cómo hacer referencia a ubicaciones de Azure para entradas y salidas:

{
    "api_key": "93h630j1dsyshjef620qlkavnmzui3",
    "input": "azure://account-name:account-key@container/file-name.avi",
    "outputs": [
    {
        "url": "azure://account-name:account-key@container/output-file-name.mp4",
        "width": "1280",
        "height": "720"
    }
    ]
}

La nombre de la cuenta y clave de cuenta debe ser CGI escapado. No es necesario escapar de nada más, como ocurre con otras URL en Zencoder. Se pueden encontrar en la interfaz de administración de Azure. El nombre de la cuenta es el nombre de la cuenta de almacenamiento (vinculada a la región, etc.). Las claves están disponibles en la parte inferior de la pantalla de descripción general de la cuenta.

Cada cuenta de Azure puede tener varios contenedores. La envase El campo en la URL debe definirse y configurarse en Azure antes de que pueda usarse en un trabajo de Zencoder.

La gota El campo en la URL representa el nombre del archivo. El blob es el único componente de la URL que no necesita configurarse previamente en Azure.

Compatibilidad con token SAS de Azure

Zencoder incluye soporte para autorizar transferencias de archivos de Azure. Actualmente, solo se admiten tokens SAS de cuenta y, como parte del token, se requieren al menos los parámetros "sv", "si", "sr" y "sig".

Ejemplo de token SAS:

sv=2019-10-10&si=sas-account&sr=c&sig=as87LKJHab87afjlghKJH654kjmasfRas02fabf34x8%3D

Hay dos formas de incluir el token SAS junto con una URL de Azure:

  • Agregue el token a la URL como un parámetro de cadena de consulta.
  • Proporcione el token por separado con la configuración "azure_sas".

Ejemplos de solicitudes de API

Ingresar URL

Versión de la cadena de consulta
{  "input": "azure://account-name@container/path/to/input.mp4?sv=2019-10-10&si=sas-account&sr=c&sig=as87LKJHab87afjlghKJH654kjmasfRas02fabf34x8%3D"}
Versión de parámetro independiente
{  "input": "azure://account-name@container/path/to/input.mp4",  "azure_sas": "sv=2019-10-10&si=sas-account&sr=c&sig=as87LKJHab87afjlghKJH654kjmasfRas02fabf34x8%3D"}

URL de salida

Versión de la cadena de consulta
{
  "outputs": [
    {
      "url": "azure://account-name@container/path/to/output.mp4?sv=2019-10-10&si=sas-account&sr=c&sig=as87LKJHab87afjlghKJH654kjmasfRas02fabf34x8%3D"
    }
  ]
}
Versión de parámetro independiente
{
  "outputs": [
    {
      "url": "azure://account-name@container/path/to/output.mp4",  "azure_sas": "sv=2019-10-10&si=sas-account&sr=c&sig=as87LKJHab87afjlghKJH654kjmasfRas02fabf34x8%3D"
    }
  ]
}

URL en miniatura

Para las miniaturas, la URL base normalmente no incluye un nombre de archivo. Al igual que con las URL de salida, esto se actualizará de manera que se conserven los parámetros de la cadena de consulta que incluyen un token SAS.

Versión de la cadena de consulta

{
  "outputs": [
    {
      "thumbnails": [
        {
          "label": "my-thumbs",
          "number": 10,
          "base_url": "azure://account-name@container/path/to/thumbs/?sv=2019-10-10&si=sas-account&sr=c&sig=as87LKJHab87afjlghKJH654kjmasfRas02fabf34x8%3D"
        }
      ]
    }
  ]
}

Versión de parámetro independiente

{
  "outputs": [
    {
      "thumbnails": [
        {
          "label": "my-thumbs",
          "number": 10,
          "base_url": "azure://account-name@container/path/to/thumbs/",
          "azure_sas": "sv=2019-10-10&si=sas-account&sr=c&sig=as87LKJHab87afjlghKJH654kjmasfRas02fabf34x8%3D"
        }
      ]
    }
  ]
}