Le SDK d'insertion dynamique d'annonce IMA (Interactive Media Ads) repose sur les informations sur les métadonnées intégrées aux segments multimédias du flux (métadonnées au sein du groupe) ; ou dans le fichier manifeste de streaming (métadonnées du fichier manifeste) pour suivre l'activité des spectateurs et les événements d'annonce côté client. Les métadonnées sont disponibles depuis le flux d'insertion dynamique d'annonce dans différents formats, selon le type de diffusion en cours de lecture. L'insertion dynamique d'annonces Le SDK gère tous les formats de métadonnées via une seule API.
Votre application est responsable de la capture des métadonnées et de leur transfert vers le SDK IMA DAI. Le SDK propose
StreamManager.onMessage()
pour transmettre ces informations. Cette méthode transmet les métadonnées sous la forme d'un
Objet msg
fourni par le port roVideo. Ces objets sont ensuite traités
le SDK IMA DAI pour définir
la date et l'heure des événements d'annonce. Il faut une seule
argument:
msg
: objet de type de message fourni par le port roVideo.
Exemple de code de métadonnées
Voici un exemple de gestion
des métadonnées du port roVideo
au SDK IMA DAI via StreamManager.onMessage()
.
Sub runLoop()
' Forward all timed metadata events to IMA.
m.top.video.timedMetaDataSelectionKeys = ["*"]
' Cycle through all the fields and set listeners.
' IMPORTANT: Failure to listen to the position and timedmetadata fields could
' result in ad impressions not being reported.
m.port = CreateObject("roMessagePort")
fields = m.top.video.getFields()
for each field in fields
m.top.video.observeField(field, m.port)
end for
while True
msg = wait(1000, m.port)
if m.top.video = invalid
print "exiting"
exit while
end if
m.streamManager.onMessage(msg)
currentTime = m.top.video.position
If currentTime > 3 And not m.top.adPlaying
m.top.video.enableTrickPlay = true
End If
end while
End Sub
Pour en savoir plus sur l'intégration de la boucle de gestion des métadonnées de flux dans votre application, consultez les Guide de démarrage d'IMA pour Roku La Écouteur d'événements et section de début de flux contient la boucle de gestion des métadonnées.
Flux CMAF du HLS
Flux HLS linéaires pour l'insertion dynamique d'annonces à l'aide de la carte CMAF (Common Media Application Framework) de métadonnées minutées à l'aide de boîtes eMSGv1 intégrées à la bande après les étapes ID3 à la norme CMAF. Ces boîtes eMSG sont intégré au début de chaque segment multimédia, chaque eMSG ID3 contenant un PTS relatif à la dernière discontinuité du flux.
Pour l'IMA Roku, tous les flux CMAF HLS envoient des données ID3 sur la bande au format eMSGv0. Le SDK IMA combine les informations fournies par le format eMSGv0 et les informations de l'objet vidéo.
Pour activer l'analyse correcte des événements ID3 du flux CMAF HLS, vous devez envoyer votre
l'objet vidéo dans la requête de flux en utilisant
StreamRequest.videoObject