Eventos en directo de Media Services

Logotipo de Media Services v3


Advertencia

Azure Media Services se retirará el 30 de junio de 2024. Para obtener más información, consulte la Guía de retirada de AMS.

Azure Media Services permite entregar eventos en directo a los clientes en la nube de Azure.

Sugerencia

Si va a migrar desde las API de Media Services v2, la entidad de eventos en directo reemplaza Channel en v2 y la salida en vivo reemplaza el programa.

Eventos en directo

Los eventos en directo ingieren y procesan fuentes de vídeo en directo. Al crear un evento en directo, se crea un punto de conexión de ingesta. El punto de conexión de ingesta consume una señal activa desde un codificador remoto. El codificador en directo remoto envía la fuente al punto de conexión de entrada mediante el protocolo de entrada RTMP o Smooth Streaming (MP4 fragmentado). Con el protocolo de ingesta de RTMP, el contenido se puede enviar sin cifrar (rtmp://) o cifrado de forma segura en la conexión (rtmps://). Para el protocolo de introducción Smooth Streaming, los esquemas de dirección URL admitidos son http:// o https://.

La asignación predeterminada es 5 eventos en directo por cuenta de Media Services. Si desea aumentar este límite, presente una incidencia de soporte técnico en Azure Portal.

Tipos de eventos en directo

Un evento en directo se puede establecer en una codificación en directo o en una codificaciónbásica o estándar. Los tipos se establecen durante la creación mediante el tipo de codificación de eventos en directo.

  • Básico de paso a través: un codificador en directo local envía una secuencia de velocidad de bits múltiple. El tránsito básico se limita a una entrada máxima de 5 Mbps, una ventana DVR de 8 horas y no se admite la transcripción en directo.
  • Estándar de paso a través: un codificador en directo local envía una secuencia de velocidad de bits múltiple. El tránsito estándar tiene límites de ingesta más altos, una ventana DVR de 25 horas y compatibilidad con transcripciones en directo.
  • Estándar: un codificador en directo local envía una secuencia de velocidad de bits única al evento en directo y Media Services crea varias secuencias de velocidad de bits. Si la fuente de contribución tiene una resolución de 720p o más, el valor preestablecido Default720p codificará un conjunto de seis pares de velocidad de bits-resolución.
  • Premium 1080p: un codificador en directo local envía una secuencia de velocidad de bits única al evento en directo y Media Services crea varias secuencias de velocidad de bits. El valor preestablecido Default1080p especifica el conjunto de salida de pares de resolución-velocidad de bits.

Nota

La velocidad de fotogramas máxima es de 30 fps para la codificación estándar y prémium.

Evento en directo de paso a través

Cuando se usa el evento en directo básico o estándar de paso a través, se usa el codificador en directo local para generar una secuencia de vídeo de varias velocidades de bits y enviarla al evento en directo (mediante el protocolo RTMP o MP4 fragmentado). El evento en directo lleva a cabo las secuencias de vídeo entrantes sin ningún otro procesamiento. Un evento en directo de tránsito está optimizado para eventos en directo de larga duración o para el streaming en directo lineal 24x365. Al crear este tipo de evento en directo, especifique el tránsito "básico" o "estándar".

Puede enviar la fuente a resoluciones de hasta 4K y a una velocidad de fotogramas de 60 fotogramas/segundo, con códecs de vídeo H.264/AVC o H.265/HEVC (solo ingesta fluida) y códecs de audio AAC (AAC-LC, HE-AACv1 o HE-AACv2). Para obtener más información, vea Comparación de tipos de objetos LiveEvent.

Nota

El uso de un método de paso a través es la forma más económica de streaming en vivo cuando está realizando varios eventos en un largo período y ya ha invertido en codificadores locales. Consulte los detalles de los precios.

Evento en directo de codificación en directo

Al usar la codificación en directo, configura el codificador en directo local para enviar un solo vídeo de velocidad de bits al evento en directo (mediante rtMP o protocolo Fragmented-Mp4). A continuación, configura un evento en directo para que codifique la secuencia de velocidad de bits única entrante en una secuencia de vídeo de varias velocidades de bits. Esto hace que la salida esté disponible para la entrega para reproducir dispositivos a través de protocolos como MPEG-DASH, HLS y Smooth Streaming.

En este caso, puede enviar la fuente de contribución solo a resoluciones de hasta 1080p resolución a una velocidad de fotogramas de 30 fotogramas/segundo, con el códec de vídeo H.264/AVC y AAC (AAC-LC, HE-AACv1 o HE-AACv2). Para obtener más información, vea Comparación de tipos de objetos LiveEvent.

Opciones de streaming de HLS y DASH de baja latencia

Para obtener más información sobre cómo lograr una latencia baja con codificación de eventos en directo, consulte la guía de procedimientos recomendados de streaming HLS (LL-HLS) y DASH.

Resolución de salida de codificación dinámica y velocidades de bits

Las resoluciones y velocidades de bits de la salida resultante del codificador en directo se determinan mediante el valor preestablecido:

  • Cuando se usa el codificador en directo Estándar , el valor preestablecido Default720p especifica un conjunto de seis pares de velocidad de resolución/bits, pasando de 720p a 3,5 Mbps a 192p a 200 kbps.
  • Cuando se usa un codificador en directo Premium1080p , el valor preestablecido Default1080p especifica un conjunto de seis pares de velocidad de resolución/bits, pasando de 1080p a 3,5 Mbps a 180p a 200 kbps.

Para más información, consulte Valores preestablecidos del sistema.

Nota

Si necesita personalizar el valor predeterminado de codificación en directo, abra una incidencia de soporte técnico a través de Azure Portal. Debes especificar la tabla de resoluciones de vídeo y velocidades de bits deseadas. Comprueba que hay solo una capa a 720p y, como máximo, 6 capas para vídeo. Para el audio, puedes personalizar con las siguientes velocidades de bits de audio AAC discretas (96k, 112k, 128k, 160k, 192k, 224k, 256k, 320k, 384k, 448k, 512k). Se permiten varias pistas de audio en diferentes velocidades de bits y se pueden incluir en el valor preestablecido personalizado. Especifica también que solicitas un valor preestablecido personalizado en la incidencia de soporte técnico.

Consulte la API REST para LiveEventEncodingType o los SDK de .Net, Node.JS o Python . Además, puede probar el código de ejemplo de Live Event.

Opciones de eventos en directo

Al crear un evento en directo, puede especificar las siguientes opciones:

  • Nombre y descripción.
  • Para la codificación Estándar y Premium, puede elegir el modo extendido del vídeo codificado:
    • Ninguno: respeta estrictamente la resolución de salida especificada en el valor preestablecido de codificación sin tener en cuenta la relación de aspecto de píxeles o la relación de aspecto de visualización del vídeo de entrada.
    • AutoSize: invalida la resolución de salida y la cambia para que coincida con la relación de aspecto de visualización de la entrada, sin relleno. Por ejemplo, si la entrada es 1920x1080 y el valor preestablecido de codificación requiere 1280x1280, se invalida el valor en el valor preestablecido y la salida será de 1280x720, que mantiene la relación de aspecto de entrada de 16:9.
    • Autoajuste: rellena la salida (con cuadro de letras o cuadro de pilar) para respetar la resolución de salida, al tiempo que garantiza que la región de vídeo activa de la salida tenga la misma relación de aspecto que la entrada. Por ejemplo, si la entrada es de 1920x1080 y el valor preestablecido de codificación requiere 1280x1280, la salida será de 1280x1280, que contiene un rectángulo interno de 1280x720 con relación de aspecto de 16:9 y con regiones con formato pillarbox y 280 píxeles de ancho a la izquierda y derecha.
  • Protocolo de streaming RTMP o Smooth streaming. Nota: No se puede cambiar la opción de protocolo mientras se ejecuta el evento en directo o sus salidas en directo asociadas. Si necesita otros protocolos, cree un evento en directo independiente para cada protocolo de streaming.
  • Identificador de entrada que es un identificador único global para el flujo de entrada del evento en directo.
  • Prefijo de nombre de host estático que incluye ninguno (en cuyo caso se usará una cadena hexadecimal de 128 bits aleatoria), use el nombre del evento en directo o use un nombre personalizado. Si opta por usar un nombre de cliente, este valor es el prefijo de nombre de host personalizado.
  • Intervalo de fotograma clave de entrada, que es la duración (en segundos) de cada segmento multimedia en la salida de HLS. El valor debe ser un entero distinto de cero en el intervalo de 0,5 a 20 segundos. El valor predeterminado es de 2 segundos si no se han establecido los intervalos de fotogramas clave de entrada o salida. El intervalo de fotogramas clave solo se permite en eventos de tránsito.
  • Inicio automático. Cuando el inicio automático está establecido en true, el evento en directo se inicia después de la creación. La facturación comienza en cuanto el evento en directo empieza a ejecutarse. Debe detener explícitamente el evento en directo para detener la facturación adicional. También puede iniciar el evento cuando esté listo para iniciar el streaming.
  • Restricciones de IP en la ingesta y versión preliminar. Puede definir las direcciones IP a las que se permite ingerir un vídeo en este evento en directo. Las direcciones IP permitidas se pueden especificar como una dirección IP única (por ejemplo, 10.0.0.1), un intervalo IP que usa una dirección IP y una máscara de subred CIDR (por ejemplo, 10.0.0.1/22) o un intervalo de IP que usa una máscara de subred decimal con puntos; por ejemplo, 10.0.0.1(255.255.252.0).
    • Si no se especifica ninguna dirección IP y no hay ninguna definición de regla, no se permitirá ninguna dirección IP. Para permitir las direcciones IP, cree una regla y establezca 0.0.0.0/0. Las direcciones IP deben estar en uno de los siguientes formatos: Direcciones IpV4 o IPv6 con cuatro números o intervalo de direcciones CIDR. Para obtener más información sobre el uso de IPv4 o IPv6, consulte Restringir el acceso a la licencia DRM y la entrega de claves AES mediante listas de direcciones IP permitidas.
    • Si quiere habilitar determinadas direcciones IP en sus propios firewalls o quiere restringir las entradas en sus eventos en directo a las direcciones IP de Azure, descargue un archivo JSON de los intervalos de direcciones IP del centro de datos de Azure. Para obtener detalles sobre este archivo, seleccione la sección Detalles de la página.
  • Transcripción en vivo que está deshabilitada de forma predeterminada. Para más información sobre la transcripción en directo, lea Transcripción en directo.

Modo de espera

Al crear un evento en directo, puede establecerlo en modo de espera. Mientras el evento está en modo StandBy, puede editar la descripción y el prefijo de nombre de host estático, así como restringir la configuración de acceso de entrada y vista previa. El modo de espera sigue siendo un modo facturable, pero su precio es diferente al de iniciar streaming en vivo.

Para más información, consulte Estados y facturación de LiveEvent.

Salidas en directo

Una vez que haya configurado una secuencia desde un codificador local en un evento en directo, puede comenzar el evento de streaming mediante la creación de un recurso, una salida en vivo y un localizador de streaming. La salida en directo archivará la transmisión y la pondrá a disposición de los usuarios a través del punto de conexión de streaming.

Preguntas sobre la salida de eventos en directo

Consulte las preguntas frecuentes sobre eventos en directo. Para más información sobre las cuotas de eventos en directo, consulte Cuotas y límites de Azure Media Services.

Más detalles sobre cómo configurar eventos en directo

Reglas de nomenclatura

  • El nombre de evento en directo máximo es de 32 caracteres.
  • El nombre debe seguir este patrón de expresión regular: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$.

Consulte también la sección sobre convenciones de nomenclatura de los puntos de conexión de streaming.

Sugerencia

Para garantizar la exclusividad del nombre de evento en directo, puede generar un GUID y luego quitar todos los guiones y llaves (si los hubiera). La cadena será única en todos los eventos en directo y se garantiza que su longitud es 32.

Direcciones URL de ingesta de eventos en directo

Una vez que se crea el evento en directo, puede obtener direcciones URL de ingesta para proporcionárselas al codificador local en directo. El codificador en directo usa estas direcciones URL para introducir una secuencia en vivo. Para más información, consulte Recommended live streaming encoders (Codificadores de streaming en vivo recomendados).

Nota

A partir de la versión de API 2020-05-01, las direcciones URL mnemónicas se conocen como nombres de host estáticos (useStaticHostname: true).

Nota

Para que una dirección URL de ingesta sea estática y se pueda predecir su uso en una configuración de codificador de hardware, establezca la propiedad useStaticHostname en true y la propiedad accessToken en el mismo GUID en cada creación.

  • Nombre de host no estático

    Un nombre de host no estático es el modo predeterminado de Media Services v3 al crear un elemento LiveEvent. Puede obtener el evento en directo asignado algo más rápido, pero la dirección URL de ingesta que necesitará para el hardware o el software de codificación en directo se seleccionará de manera aleatoria. La dirección URL cambiará si detiene o inicia el evento en directo. Los nombres de host no estáticos solo son útiles en escenarios en los que un usuario final quiere realizar una transmisión mediante una aplicación que necesita obtener un evento en directo muy rápido y tener una dirección URL de ingesta dinámica no resulta un problema.

    Si no es necesario que la aplicación cliente genere previamente una dirección URL de ingesta para crear el evento en directo, permita que Media Services genere automáticamente el token de acceso del evento en directo.

  • Nombres de host estáticos

    La mayoría de los operadores prefieren el modo de nombre de host estático y preconfiguran su hardware o software de codificación en directo con una dirección URL de RTMP de ingesta que nunca cambia al crear o detener/iniciar un evento en directo específico. Estos operadores quieren una dirección URL de RTMP de ingesta predictiva que no cambie en el tiempo. Esta opción también es muy útil cuando se necesita insertar una dirección URL de RTMP de ingesta estática en la configuración de un dispositivo de codificación de hardware, como BlackMagic Atem Mini Pro, o herramientas de producción y codificación de hardware similares.

    Nota

    En Azure Portal, la dirección URL de host estático se llama "prefijo de nombre de host estático".

    Para especificar este modo en la API, establezca useStaticHostName en true en tiempo de creación (el valor predeterminado es false). Cuando useStaticHostname se establece en true, hostnamePrefix especifica la primera parte del nombre de host asignado a los puntos de conexión de ingesta y vista previa de eventos activos. El nombre de host final sería una combinación de este prefijo, el nombre de la cuenta de servicios multimedia y un código corto para el centro de datos de Azure Media Services.

    Para evitar un token aleatorio en la dirección URL, también debe pasar su propio token de acceso (LiveEventInput.accessToken) en tiempo de creación. El token de acceso debe ser una cadena GUID válida (con o sin guiones). Una vez establecido el modo, no se puede actualizar.

    El token de acceso debe ser único para la región de Azure y para la cuenta de Media Services. Si la aplicación necesita usar una dirección URL de ingesta de nombre de host estático, se recomienda crear siempre una instancia de GUID nueva para usarla con una combinación específica de región, cuenta de Media Services y evento en directo.

    Use las siguientes API para permitir la dirección URL de nombre de host estático y establezca el token de acceso en un GUID válido (por ejemplo, "accessToken": "1fce2e4b-fb15-4718-8adc-68c6eb4c26a7").

    Idioma Habilitación de una dirección URL de nombre de host estático Establecer un token de acceso
    REST properties.useStaticHostname LiveEventInput.useStaticHostname
    CLI --use-static-hostname --access-token
    .NET LiveEvent.useStaticHostname LiveEventInput.AccessToken

Reglas de nomenclatura de direcciones URL de ingesta en directo

  • La cadena random que aparece a continuación es un número hexadecimal de 128 bits (que se compone de 32 caracteres del 0 al 9 y de la "a" a la "f").
  • el token de acceso: la cadena de GUID válida establecida al usar el valor de nombre de host estático. Por ejemplo, "1fce2e4b-fb15-4718-8adc-68c6eb4c26a7".
  • nombre de secuencia: indica el nombre de la secuencia de una conexión determinada. El valor del nombre de secuencia normalmente lo agrega el codificador en directo que use. Puede configurar el codificador en directo para usar cualquier nombre para describir la conexión, por ejemplo: "vídeo1_audio1", "vídeo2_audio1", "secuencia".

Advertencia

Si usa caracteres o espacios especiales en el nombre de la secuencia, se producirá un error en la ingesta en directo. Consulte Convenciones de nomenclatura de recursos de Media Services en la introducción a los conceptos del desarrollador.

Dirección URL de ingesta de nombre de host no estático

RTMP

rtmp://<random 128bit hex string>.channel.media.azure.net:1935/live/<auto-generated access token>/<stream name>
rtmp://<random 128bit hex string>.channel.media.azure.net:1936/live/<auto-generated access token>/<stream name>
rtmps://<random 128bit hex string>.channel.media.azure.net:2935/live/<auto-generated access token>/<stream name>
rtmps://<random 128bit hex string>.channel.media.azure.net:2936/live/<auto-generated access token>/<stream name>

Streaming con velocidad de transmisión adaptable

http://<random 128bit hex string>.channel.media.azure.net/<auto-generated access token>/ingest.isml/streams(<stream name>)
https://<random 128bit hex string>.channel.media.azure.net/<auto-generated access token>/ingest.isml/streams(<stream name>)

Dirección URL de ingesta de nombre de host estático

En las siguientes rutas de acceso, <live-event-name> significa el nombre dado al evento o el nombre personalizado usado en la creación del evento en directo.

RTMP

rtmp://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net:1935/live/<your access token>/<stream name>
rtmp://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net:1936/live/<your access token>/<stream name>
rtmps://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net:2935/live/<your access token>/<stream name>
rtmps://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net:2936/live/<your access token>/<stream name>

Streaming con velocidad de transmisión adaptable

http://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net/<your access token>/ingest.isml/streams(<stream name>)
https://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net/<your access token>/ingest.isml/streams(<stream name>)

Dirección URL de vista previa de evento en directo

Una vez que el evento en directo comienza a recibir la fuente de contribución, puede usar su punto de conexión de vista previa para obtener una vista previa y validar que está recibiendo el streaming en vivo antes de continuar con la publicación. Después de haber comprobado que la secuencia de vista previa es buena, puede usar el evento en directo para que el streaming en vivo esté disponible para su entrega mediante uno o más puntos de conexión de streaming (creados previamente). Para ello, cree una nueva salida en directo en el evento en directo.

Importante

Asegúrese de que el vídeo fluye a la dirección URL de vista previa antes de continuar.

Operaciones de larga duración de eventos en directo

Para obtener detalles, vea Operaciones de larga duración.

Obtener ayuda y soporte técnico

Puede ponerse en contacto con Media Services con preguntas o seguir nuestras actualizaciones mediante uno de los métodos siguientes: