Ir a: Requisitos del archivo de manifiesto y del contenido | Paquetes, plataformas y reproductores
Diferencias entre los archivos de manifiesto de un solo periodo y los de varios periodos
En Ad Manager se pueden ingerir archivos de manifiesto de varios periodos y de un solo periodo para DASH.
Con los archivos de manifiesto de un solo periodo, los editores proporcionan una emisión de DASH con un solo periodo que incluye todo el contenido y oportunidades de pausas publicitarias, en lugar de varios periodos que los diferencien. La inserción dinámica de anuncios admite los archivos de manifiesto de un solo periodo convirtiéndolos en varios en cada obtención.
Puede seleccionar el archivo de manifiesto de un solo periodo cuando habilite el acondicionamiento.
Habilitar el acondicionamiento para MPEG-DASH de un solo periodo
Para usar la inserción dinámica de anuncios de VOD, configure una fuente de contenido para que Google Ad Manager pueda ingerir el contenido de vídeo bajo demanda (VOD). La inserción dinámica de anuncios usará elementos de feed MRSS para determinar si el contenido debe pasar por el acondicionamiento de archivos de manifiesto de un solo periodo de DASH.
- Defina
ingestUrl
como la URL del contenido del MPD. - Asigne el valor "false" a
preconditioned
.
Si se asigna el valor "true" apreconditioned
, los archivos de manifiesto de DASH de un solo periodo no se acondicionarán para las pausas publicitarias mid‐roll. - El archivo de manifiesto se dividirá según los atributos de
Event@presentationTime
en el archivo de manifiesto, aunque los puntos de inserción no se alineen por los motivos que se indican a continuación. - Si no hay elementos
EventStream
en el archivo de manifiesto, se dividirá según los puntos de inserción. - Los puntos de inserción deben alinearse con el límite de un segmento multimedia; de lo contrario, el acondicionamiento no se realizará.
- Defina los puntos de inserción en un plazo máximo de 100 ms de un evento
splice_insert
. Esto se determina mediante el valor del punto de inserción y el atributoEvent@presentationTime
.
Requisitos del archivo de manifiesto y del contenido
Para archivos de manifiesto de varios periodos
Archivo de manifiesto MPEG-DASH de varios periodos
Expectativas en cuanto a un archivo de manifiesto MPEG-DASH de varios periodos
La inserción dinámica de anuncios de Google hace las siguientes validaciones en el MPD sin procesar.
Validaciones de elementos de MPD
Defina las siguientes validaciones de elementos MPD:
type
debe definirse comostatic
.profiles
debe definirse como:urn:mpeg:dash:profile:isoff-on-demand:2011
.urn:mpeg:dash:profile:isoff-live:2011
.
- Debe usarse HTTPS en todo el contenido DASH al que se haga referencia en un mismo elemento MPD.
Validaciones de elementos de Period
Se requiere lo siguiente para los elementos de Period:
- En cada periodo se debe especificar un atributo
duration
. - No se debe especificar un atributo
start
en cada periodo.
Para archivos de manifiesto de un solo periodo
Archivo de manifiesto MPEG-DASH de un solo periodo (alfa)
Solo estará disponible para un número reducido de editores.
Expectativas en cuanto a un archivo de manifiesto MPEG-DASH de un solo periodo
La inserción dinámica de anuncios de Google hace las siguientes validaciones en el MPD sin procesar.
Requisitos de contenido
El contenido de DASH debe seguir todas las reglas que se indican en los puntos de interoperabilidad de DASH-IF.
MPEG-DASH
La inserción dinámica de anuncios de Google hace las siguientes validaciones y las siguientes suposiciones en el MPD sin procesar.
- Validaciones de elementos de MPD:
profiles
debe definirse comourn:mpeg:dash:profile:isoff-live:2011
.type
debe definirse comostatic
.- El MPD debe tener únicamente un elemento Period.
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd" type="static" profiles="urn:mpeg:dash:profile:isoff-live:2011" maxSegmentDuration="PT2S" minBufferTime="PT2S">
<Period …>
…
</Period>
…
</MPD>
- Validaciones de elementos de Period:
- Period debe tener al menos un elemento
@AdaptationSet
. - Para que el periodo se divida, debe haber al menos un elemento
EventStream
anidado que tenga los elementosEvent
codificados con puntos de empalme. Consulte los requisitos de codificación de los puntos de empalme en SCTE-35.
<Period id=”1” start="PT0S">
<AdaptationSet …>
…
</AdaptationSet>
<AdaptationSet …>
…
</AdaptationSet>
</Period>
- Period debe tener al menos un elemento
- Los siguientes elementos son obligatorios para la validación de los elementos
AdaptationSet
.
Asegúrese de queAdaptationSet
tenga al menos un elemento@Representation
.Se admiten conjuntos de adaptación de miniaturas y subtítulos. Los conjuntos de adaptación de subtítulos son obligatorios.<AdaptationSet mimeType="video/mp4" startWithSAP="1" contentType="text" par="16:9" minWidth="640" maxWidth="640" minHeight="360" maxHeight="360" maxFrameRate="60/2" segmentAlignment="true">
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"></Role>
<ContentComponent id="0" contentType="video" />
<Representation …>
…
</Representation>
<Representation …>
…
</Representation>
</AdaptationSet>
- Complete las validaciones de los elementos
Representation
:- Asegúrese de que
@id
no esté vacío. - No debe haber elementos
@SegmentBase
ni@SegmentList
.
<Representation width="640" height="360" sar="1:1" frameRate="60/2" codecs="avc1.64001e" id="V300" bandwidth="300000">
…
</Representation/>
- Asegúrese de que
- Valide
SegmentTemplate
con$Time$
:- Compruebe que los elementos
SegmentTemplate
contienen un elementoSegmentTimeline
anidado para gestionar segmentos multimedia de forma explícita. - Los elementos
SegmentTimeline S
pueden contener el atributoS@t
que se utiliza para las URLs de contenido multimedia.- Si no se proporciona, se supone que el valor es
0
para el primer elementoS
. Para los elementosS
posteriores, se supondrá que el valor es la suma del tiempo de presentación más temprano del elementoS
anterior y la duración contigua (es decir,S@t + @d * (@r + 1)
anteriores). SegmentTemplate@startNumber
no se utiliza.
<SegmentTemplate timescale="90000" initialization="$RepresentationID$/init.mp4" media="$RepresentationID$/$Time$.m4s">
<SegmentTimeline>
<S t="0" d="270000" r="20" />
</SegmentTimeline>
</SegmentTimeline>
- Si no se proporciona, se supone que el valor es
- Compruebe que los elementos
-
La inserción dinámica de anuncios de Google es compatible con la parte del componente de tiempo de la norma ISO-8601 y admite el componente de día entero opcional:
P0Y0M[n]DT[n]H[n]M[n]S
. El componente de días se convierte en duración teniendo en cuenta que 1 día = 24 horas, y se añade al componente de tiempo. El nanosegundo es la granularidad más baja que reconocemos.
Ejemplos de formatos válidos:
P0Y0M
P0Y0M2D
P2D
PT3H
PT0H3M
P0Y0M0DT0H0M1.000S
P0Y0M1DT2H4M10S
PT0.000000001S
Ejemplos de formatos no válidos:
U
PT
2007-03-01
P5Y0M1DT2H4M1.000S
P0Y1.5M1DT2H4M1.000S
P0YiM1DT2H4M1.000S
P0Y0M.3DT0H0M1.000S
3h
PT100,000H
Subtítulos
- La inserción dinámica de anuncios de Google admite subtítulos en formato TTML y WebVTT.
- La inserción dinámica de anuncios de Google admite todos los archivos de subtítulos complementarios que se proporcionan a través del feed MRSS.
- Los archivos de subtítulos complementarios especificados en el archivo de manifiesto de DASH no se convertirán ni estarán presentes en el archivo de manifiesto acondicionado. Si se requieren subtítulos complementarios, deben especificarse a través del feed MRSS.
Subtítulos complementarios del archivo de manifiesto de DASH no admitidos
<AdaptationSet
id="3"
group="3"
contentType="text"
lang="fr"
mimeType="application/ttml+xml"
startWithSAP="1">
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main" />
<Representation
id="textstream_fra=0"
bandwidth="0">
<BaseURL>sub/tears-of-steel-fr.ttml</BaseURL>
</Representation>
</AdaptationSet>
- Se admiten los subtítulos fragmentados en un
AdaptationSet
concontentType
="text", y conSegmentTimeline
, pero los segmentos de subtítulos también deberán tener sus límites de segmento alineados con los marcadores de puntos de empalme para superar la validación.
Subtítulos fragmentados del archivo de manifiesto de DASH admitidos
<AdaptationSet
id="2"
group="3"
contentType="text"
lang="en"
mimeType="application/mp4"
codecs="stpp.ttml.im1t"
startWithSAP="1">
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="subtitle" />
<SegmentTemplate
timescale="1000"
initialization="tears-of-steel-en-$RepresentationID$.dash"
media="tears-of-steel-en-$RepresentationID$-$Time$.dash">
<SegmentTimeline>
<S t="0" d="4000" r="140" />
<S d="3000" />
</SegmentTimeline>
</SegmentTemplate>
<Representation
id="texttream_eng=1000"
bandwidth="1000">
</Representation>
</AdaptationSet>
SCTE-35
- La inserción dinámica de anuncios de Google solo reconocerá los puntos de empalme como marcadores SCTE-35 incluidos en elementos
MPD@Period@EventStream@Event
de DASH si superan las siguientes validaciones:- Los datos SCTE-35 codificados en Base64 deben incluirse en el elemento
Event@Signal@Binary
.
Solo se admitesplice_insert
. - Los elementos de
EventStream
que contienenEvents
con marcadores SCTE-35 deben tenerschemeIdUri
definido comourn:scte:scte35:2014:xml+bin
. - Se debe definir
EventStream@timescale
, de lo contrario se supondrá que está establecido en1
(segundos de escala de tiempo). Event@presentationTime
debe definirse en cada elementoEvent
.Event@Signal@namespace
debe tener el espacio de nombreshttp://www.scte.org/schemas/35/2016
.- Los eventos de
EventStream
deben estar ordenados porEvent@presentationTime
.
- Los datos SCTE-35 codificados en Base64 deben incluirse en el elemento
- Supuestos de
Splice_insert
Todos los marcadoressplice_insert
deEventStream
se tratarán como oportunidades de emplazamientos de pausa publicitaria, es decir, el acondicionamiento de un solo periodo no distingue entre las marcas de salida y de entrada, sino que trata cualquier señal como una oportunidad de emplazamiento de pausa publicitaria. - La inserción dinámica de anuncios de Google para VOD de DASH no admite la división de segmentos y, por lo tanto, solo permite un margen de 100 ms respecto a la distancia entre el tiempo de presentación de un punto de empalme y el límite del segmento más cercano.
Plataformas, empaquetadores y reproductores compatibles con VOD
Plataformas |
||
---|---|---|
Dispositivos/navegadores |
Versión |
DRM |
Navegador Chrome |
66 y posteriores |
Widevine |
Navegador Firefox |
60 y posteriores |
Widevine |
Microsoft Edge |
18 |
PlayReady |
Android |
4.4 y posteriores |
Widevine |
Chromecast |
Gen2, Ultra (API de CAF) |
Widevine |
Roku |
3, 4 (firmware 8.1) |
PlayReady |
Empaquetadores |
||
---|---|---|
2.1.0 |
Compatibilidad con varios periodos |
|
1.47.3 |
Compatibilidad con varios periodos |
|
1.11.17 | Compatibilidad con un solo periodo |
Jugadores |
||
---|---|---|
Shaka |
Recomendado para pruebas |
|
Bitmovin |
||
ExoPlayer |
||
Dash.js |