Contrairement à une mise en œuvre vidéo côté client (dans le cadre de laquelle les annonces et le flux vidéo sont demandés indépendamment les uns des autres), la mise en œuvre côté serveur utilisée avec l'insertion dynamique d'annonce ne demande qu'un flux ; les annonces étant intégrées de manière dynamique au contenu vidéo. En cas d'erreur du serveur, le flux vidéo risque de se bloquer, ce qui peut nuire à l'expérience utilisateur et entraîner une perte de revenus.
L'insertion dynamique d'annonce d'Ad Manager renvoie des erreurs HTTP lors de la création et de la diffusion d'un flux. Elle vous permet, en outre, de préciser un flux secondaire si vous n'obtenez pas de réponse valide du serveur.
Gérer les erreurs HTTP détectées lors de la création d'un flux
Type d'erreur | Recommandation |
---|---|
Erreurs 4XX (sauf 429) |
Lorsque des erreurs HTTP de type 4XX s'affichent, ne revenez pas aux flux bruts, car il s'agit probablement des instances dans lesquelles le client a rencontré une erreur. Assurez-vous que la demande que vous envoyez au serveur est correcte et qu'elle contient tous les paramètres requis. |
Erreurs 429 ou 5XX | Lorsque des erreurs HTTP de type 429 ou 5XX s'affichent, revenez aux flux secondaires bruts, sans monétisation. Dans le SDK IMA, ces erreurs peuvent être détectées à l'aide d'un gestionnaire d'erreurs. Vous pouvez par ailleurs passer du flux par défaut au flux secondaire. |
tvOS
static NSString *const kBackupContentPath =
@"http://googleimadev‑vh.akamaihd.net/i/big_buck_bunny/bbb‑,480p,720p,1080p,.mov.csmil/"
@"master.m3u8";
- (void)streamManager:(IMAStreamManager *)streamManager
didReceiveError:(NSError *)error {
NSLog(@"Error: %@", error);
[self playBackupStream];
}
- (void)playBackupStream {
NSURL *contentURL = [NSURL URLWithString:kBackupContentPath];
self.playerViewController.player = [[AVPlayer alloc] initWithURL:contentURL];
[self.playerViewController.player play];
}
Obtenir l'URL du flux secondaire pour un flux de vidéo à la demande ou un flux en direct
Votre application doit être dotée d'un mécanisme permettant d'obtenir l'URL secondaire tant d'un flux de vidéo à la demande que d'un flux linéaire en direct. En ce qui concerne la vidéo à la demande, le flux secondaire doit correspondre à l'élément ingestURL spécifié dans le flux MRSS. Quant au flux linéaire en direct, le flux secondaire doit correspondre au flux de contenu spécifié dans l'interface utilisateur d'Ad Manager.
Gérer les erreurs HTTP lors de la diffusion du flux
En cas d'erreur lors de la diffusion du flux, nous vous déconseillons de revenir au flux brut. Ad Manager tente automatiquement de résoudre la plupart des erreurs qu'il rencontre. Toutefois, lorsque le serveur ne parvient pas à corriger une erreur, la lecture du flux s'arrête. Dans ce cas, l'application doit lancer un nouveau flux. Si l'erreur persiste, vous devez revenir au flux brut.
Valider l'implémentation des créations de remplacement
Vous pouvez valider l'implémentation des créations de remplacement à l'aide des exemples de flux suivants :
Format de flux | Clé de l'asset |
---|---|
HLS | MSQJlB9VSgqJkGNv1mB0FA |
DASH | TrhaCde0R_uKzG_psucTww |
Ces flux servent à effectuer des tests et renverront toujours une erreur HTTP 429.
Basculement automatique des flux linéaires pour l'insertion dynamique d'annonce
Dans les rares cas où notre système enregistre de façon inattendue un volume de demandes d'annonces élevé, nous sommes susceptibles de procéder à un basculement vers un flux sans annonces pour certains utilisateurs. Dans ce cas, l'utilisateur voit le contenu sous-jacent.
Si les flux de remplacement ne peuvent pas être diffusés (par exemple, si l'authentification ou le transfert de l'origine sont spécifiés, ou si une exclusion de variante est demandée pour le flux), un code de réponse HTTP 429 est diffusé et l'application doit revenir localement au flux brut.