soporte Contactar con asistencia técnica | estado del sistema Estado del Sistema

Salida condicional

En este tema, aprenderá cómo crear salidas condicionales en un perfil de ingesta personalizado omitiendo las representaciones si el archivo fuente no cumple ciertas condiciones.

Limitaciones

¿Por qué omitir las entregas?

Saltarse las representaciones es útil si los videos originales que ingiere varían ampliamente en calidad. Esto es a menudo el caso, por ejemplo, para las organizaciones de noticias que usan video capturado por teléfonos u otros dispositivos en el campo.

Sin salidas condicionales, el sistema Dynamic Ingest creará exactamente tantas representaciones como se especifiquen en el perfil.

Por ejemplo, supongamos que ingiere un video de baja calidad (tasa de bits de video alrededor de 820 kbps) usando un perfil que incluye las siguientes entregas de video incondicionales.

Rendiciones de video
Formato Bitrate de audio Bitrate de vídeo
mp4 64 450
mp4 96 900
mp4 128 1700
HLS 64 450
HLS 96 700
HLS 96 900
HLS 96 1200
HLS 128 1700
HLS 128 2000

Las versiones resultantes en Studio se verían así:

Interpretaciones para video de baja calidad
Interpretaciones para video de baja calidad

Tenga en cuenta que las últimas tres (resaltadas) versiones de HLS son idénticas en la velocidad de bits, y que la velocidad de bits es solo marginalmente más alta que la siguiente mejor interpretación de HLS. También tenga en cuenta que la diferencia en las velocidades de bits para dos mejores interpretaciones MP4 es pequeña. La razón de esto es que la transcodificación nunca puede mejorar la tasa de bits de la fuente, y la fuente aquí tenía una tasa de bits promedio de alrededor de 800 kbps, por lo que las representaciones con tasas de bits especificadas más altas terminan con algo en ese rango (verá pequeñas diferencias debido a las diferentes formas en que la tasa de bits promedio se calcula para formatos de video segmentados y no segmentados).

Las últimas cuatro representaciones en el conjunto, entonces, son esencialmente redundantes, ofreciendo poca o ninguna mejora en la calidad respecto de las representaciones de "calidad inferior", pero se crean y almacenan de todos modos. Esto se puede evitar mediante el uso de salidas condicionales que impiden la generación de una representación si la fuente no coincide con los criterios de calidad que usted especifique.

Implementación

Puede agregar un skip objetar a algunas de las entregas. los skip el objeto contiene una o más condiciones, y si no se cumplen estas condiciones, la representación no se creará.

Notas sobre el uso

  1. Un perfil de ingesta debe incluya al menos una representación no saltable; si intenta crear un perfil en el que todas las representaciones son saltables, recibirá un error.
  2. Debe asegurarse de que se cree al menos una representación para cada tipo de contenido. Por ejemplo:
    • Si crea interpretaciones de solo audio y de video, debe tener una reproducción no saltable para cada
    • Si usa DRM, debe tener una representación no saltable para cada formato que funcione con ese tipo de DRM (Smooth, HLS, DASH, etc.)

Sintaxis

La sintaxis para el skip objeto que puede agregar a una especificación de representación es la siguiente:

            "skip": {
                "condition1": "value1",
                "condition2": 1300,
                ...etc
            }

Ejemplo

            "renditions": [
                {
                  "media_type": "video",
                  "reference_id": "ts1",
                  "format": "ts",
                  "type": "segmented",
                  "audio_codec": "aac",
                  "audio_bitrate": 96,
                  "video_bitrate": 1200.
                  "video_codec": "h264",
                  "keyframe_rate": 0.5,
                  "max_frame_rate": 30,
                  "width": 1280,
                  "height": 720,
                  "h264_profile": "main",
                  "skip": {
                      "min_video_bitrate": 1000,
                      "min_size": "640x360"
                    }
                },
                ... etc
            ]

Para el perfil (fragmento) anterior, se creará la representación mostrada -sólo- si el video de origen tiene una velocidad de bits de video de al menos 1000 kbps y un tamaño de fotograma de al menos 640px x 360px.

Omitir campos

A continuación se muestran los campos (condiciones) que se pueden usar en skip :

Omitir campos
propiedad tipo descripción Por defecto
min_audio_bitrate entero la tasa de bits de audio mínima que la fuente debe tener (kbps) nulo
max_audio_bitrate entero la tasa de bits de audio máxima que la fuente debe tener (kbps) nulo
min_video_bitrate entero la tasa de bits de video mínima que la fuente debe tener (kbps) nulo
max_video_bitrate entero la tasa de bits de video máxima que la fuente debe tener (kbps) nulo
require_audio booleano la fuente debe incluir una pista de audio nulo
require_video booleano la fuente debe incluir una pista de video nulo
min_size cadena de la forma "widthxheight" (por ejemplo, "400x225") la fuente debe ser al menos esta resolución nulo
max_size cadena de la forma "widthxheight" (por ejemplo, "1920x1080") la fuente debe ser como máximo esta resolución nulo

Página actualizada por última vez el 12 jun 2020