soporte Contactar con Soporte | Estadoestado del sistema del sistema
Contenido de la página

    Vídeo MPEG-DASH

    En este tema, aprenderá sobre cómo crear copias MPEG-DASH para sus vídeos.

    Resumen

    MPEG-DASH es un formato de vídeo segmentado. Resulta especialmente útil si necesitas seguridad DRM para tu contenido, ya que DASH se puede usar con Playready, Marlin o Widevine Modular DRM. Dado que la sintaxis para especificar las copias MPEG-DASH es ligeramente diferente a la de otros formatos de vídeo, aquí incluimos un par de perfiles de muestra, uno sin empaquetado DRM y el otro incluyendo empaquetado DRM.

    Para obtener más información sobre cómo Brightcove Player determina qué copia se va a reproducir realmente, consulte el documento Determinación de la copia que se reproducirá .

    Perfil de muestra (sin DRM)

    Esta muestra muestra el empaquetado de copias MPEG-DASH sin embalaje DRM.

    {
      "id": "56e077ace4b0a7b3c178e6e7",
      "name": "DASH-no-drm",
      "description": "DASH renditions",
      "account_id": "1752604059001",
      "renditions": [
        {
          "media_type": "video",
          "id": "56e077ace4b0a7b3c178e6e5",
          "reference_id": "r1",
          "format": "m4f",
          "type": "segmented",
          "audio_codec": "aac",
          "audio_bitrate": 36,
          "video_codec": "h264",
          "video_bitrate": 300,
          "decoder_bitrate_cap": 400,
          "decoder_buffer_size": 800,
          "force_aac_profile": "aac-lc",
          "frame_rate": 30,
          "keyframe_rate": 0.5,
          "fixed_keyframe_interval": true,
          "width": 800,
          "height": 600,
          "h264_profile": "baseline",
          "streaming_delivery_profile": "live"
        },
        {
          "media_type": "video",
          "id": "56e077ace4b0a7b3c178e6e6",
          "reference_id": "r2",
          "format": "m4f",
          "type": "segmented",
          "audio_codec": "aac",
          "audio_bitrate": 36,
          "video_codec": "h264",
          "video_bitrate": 600,
          "decoder_bitrate_cap": 800,
          "decoder_buffer_size": 1600,
          "frame_rate": 30,
          "keyframe_rate": 0.5,
          "fixed_keyframe_interval": true,
          "force_aac_profile": "aac-lc",
          "width": 1024,
          "height": 768,
          "h264_profile": "baseline",
          "streaming_delivery_profile": "live"
        },
        {
          "media_type": "image",
          "id": "559697ece4b072e9641b840f",
          "format": "jpg",
          "label": "poster",
          "width": 640,
          "height": 360
        },
        {
          "media_type": "image",
          "id": "559697ece4b072e9641b8410",
          "format": "jpg",
          "label": "thumbnail",
          "width": 160,
          "height": 90
        }
      ],
      "packages": [
        {
          "package_type": "dash",
          "renditions": [
            "r1"
          ]
        },
        {
          "package_type": "dash",
          "renditions": [
            "r2"
          ]
        }
      ]
    }

    Perfil de muestra (con DRM)

    Aquí está el mismo perfil de muestra con Common Encryption (CENC) y empaquetado DRM (Widevine y Playready) incluido.

    {
        "account_id": 2728142649001,
        "digital_master": {
            "distribute": true,
            "rendition": "passthrough"
        },
        "name": "dash-cenc-live",
        "description": "This will produce 6 dash live renditions with cenc",
        "renditions": [
            {
                "media_type": "video",
                "reference_id": "av0",
                "format": "m4f",
                "audio_codec": "aac",
                "audio_bitrate": 40,
                "video_bitrate": 110,
                "decoder_bitrate_cap": 200,
                "decoder_buffer_size": 400,
                "width": "400",
                "height": "300",
                "fixed_keyframe_interval": true,
                "frame_rate": 30,
                "force_aac_profile": "aac-lc",
                "video_codec": "h264",
                "h264_profile": "baseline",
                "keyframe_rate": 0.5,
                "streaming_delivery_profile": "live",
                "type": "segmented"
            },
            {
                "media_type": "video",
                "reference_id": "av1",
                "format": "m4f",
                "audio_codec": "aac",
                "audio_bitrate": 40,
                "video_bitrate": 260,
                "decoder_bitrate_cap": 400,
                "decoder_buffer_size": 800,
                "width": "400",
                "height": "300",
                "fixed_keyframe_interval": true,
                "frame_rate": 30,
                "force_aac_profile": "aac-lc",
                "video_codec": "h264",
                "h264_profile": "baseline",
                "keyframe_rate": 0.5,
                "streaming_delivery_profile": "live",
                "type": "segmented"
            },
            {
                "media_type": "video",
                "reference_id": "av2",
                "format": "m4f",
                "audio_codec": "aac",
                "audio_bitrate": 64,
                "video_bitrate": 436,
                "decoder_bitrate_cap": 600,
                "decoder_buffer_size": 1200,
                "width": "480",
                "height": "360",
                "fixed_keyframe_interval": true,
                "frame_rate": 30,
                "force_aac_profile": "aac-lc",
                "video_codec": "h264",
                "h264_profile": "baseline",
                "keyframe_rate": 0.5,
                "streaming_delivery_profile": "live",
                "type": "segmented"
            },
            {
                "media_type": "video",
                "reference_id": "av3",
                "format": "m4f",
                "audio_codec": "aac",
                "audio_bitrate": 96,
                "video_bitrate": 704,
                "decoder_bitrate_cap": 800,
                "decoder_buffer_size": 1600,
                "width": "640",
                "height": "480",
                "fixed_keyframe_interval": true,
                "frame_rate": 30,
                "force_aac_profile": "aac-lc",
                "video_codec": "h264",
                "h264_profile": "baseline",
                "keyframe_rate": 0.5,
                "streaming_delivery_profile": "live",
                "type": "segmented"
            },
            {
                "media_type": "video",
                "reference_id": "av4",
                "format": "m4f",
                "audio_codec": "aac",
                "audio_bitrate": 128,
                "video_bitrate": 1072,
                "decoder_bitrate_cap": 1200,
                "decoder_buffer_size": 2400,
                "width": "720",
                "height": "540",
                "fixed_keyframe_interval": true,
                "frame_rate": 30,
                "force_aac_profile": "aac-lc",
                "video_codec": "h264",
                "h264_profile": "baseline",
                "keyframe_rate": 0.5,
                "streaming_delivery_profile": "live",
                "type": "segmented"
            },
            {
                "media_type": "video",
                "reference_id": "av5",
                "format": "m4f",
                "audio_codec": "aac",
                "audio_bitrate": 128,
                "video_bitrate": 1672,
                "decoder_bitrate_cap": 2000,
                "decoder_buffer_size": 4000,
                "width": "1280",
                "height": "960",
                "fixed_keyframe_interval": true,
                "frame_rate": 30,
                "force_aac_profile": "aac-lc",
                "video_codec": "h264",
                "h264_profile": "baseline",
                "keyframe_rate": 0.5,
                "streaming_delivery_profile": "live",
                "type": "segmented"
            },
            {
                "media_type": "image",
                "format": "png",
                "label": "poster",
                "width": 640,
                "height": 480
            },
            {
                "media_type": "image",
                "format": "png",
                "label": "thumbnail",
                "width": 160,
                "height": 90
            }
        ],
        "packages": [
            {
    "drm": [
        "playready",
        "widevine"
    ],
    "package_type": "dash",
    "renditions": [
        "av0"
    ]
            },
            {
    "drm": [
        "playready",
        "widevine"
    ],
    "package_type": "dash",
    "renditions": [
        "av1"
    ]
            },
            {
    "drm": [
        "playready",
        "widevine"
    ],
    "package_type": "dash",
    "renditions": [
        "av2"
    ]
            },
            {
    "drm": [
        "playready",
        "widevine"
    ],
    "package_type": "dash",
    "renditions": [
        "av3"
    ]
            },
            {
    "drm": [
        "playready",
        "widevine"
    ],
    "package_type": "dash",
    "renditions": [
        "av4"
    ]
            },
            {
    "drm": [
        "playready",
        "widevine"
    ],
    "package_type": "dash",
    "renditions": [
        "av5"
    ]
            }
        ]
    }

    Seguridad Silverlight

    En ciertas plataformas, Brightcove Player utiliza un respaldo Silverlight para reproducir copias MPEG-DASH. Por razones de seguridad, Silverlight requiere que un archivo clientaccesspolicy.xml esté presente en la raíz del documento del servidor desde el que se sirve el contenido DASH. Consulte este artículo de Microsoft para obtener más detalles.

    Aquí hay un archivo clientaccesspolicy.xml de ejemplo:

    Problemas conocidos

    • los Predeterminado (visualización automática) ajuste de subtítulos en el Medios de comunicación módulo PISTA DE TEXTO La sección no es compatible cuando se usa junto con DASH y subtítulos en el manifiesto. Los subtítulos en manifiesto se utilizan con los productos Brightcove Dynamic Delivery y SSAI, por ejemplo. Una solución alternativa para este problema es utilizar la <track> etiqueta con la implementación Advanced Brightcove Player. Esto se detalla en el documento Agregar subtítulos a vídeos mediante programación . Tenga en cuenta que debe usar el atributo con la etiqueta.default<track>