Configuration prête pour la production CloudFront pour MediaTailor - AWS Elemental MediaTailor

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configuration prête pour la production CloudFront pour MediaTailor

Cette configuration CloudFront de distribution fournit tout ce dont vous avez besoin pour diffuser MediaTailor du contenu grâce à l'insertion de publicités côté serveur à grande échelle. Copiez cette configuration et personnalisez-la en fonction de vos origines et de vos besoins spécifiques.

Ce que cette configuration permet d'accomplir

Cette configuration crée une CloudFront distribution prête pour la production qui gère tous les types de MediaTailor demandes avec une mise en cache et des performances optimales. Il inclut trois origines (votre contenu, vos MediaTailor segments et vos MediaTailor manifestes) avec quatre comportements de cache qui acheminent correctement les demandes et mettent en cache le contenu de manière appropriée.

Quand utiliser cette configuration

Cette configuration est idéale pour la diffusion en direct et video-on-demand les flux de travail hybrides qui nécessitent l'insertion de publicités côté serveur.

Architecture à trois origines

MediaTailor utilise un modèle d'architecture à trois origines pour optimiser les performances de diffusion de contenu et d'insertion de publicités. Chaque origine a un objectif spécifique dans le flux de travail d'insertion d'annonces :

L'origine de votre contenu

C'est votre véritable source de contenu qui alimente MediaTailor. Par exemple, il peut s'agir de la AWS Elemental MediaPackage V2 ou d'un autre service de diffusion de contenu. Cette origine diffuse votre contenu d'origine avant l'insertion de l'annonce. Les exemples courants incluent :

  • MediaPackage Configurations d'emballage V2

  • Réseaux de diffusion de contenu tiers

  • Serveurs de streaming sur site

  • Compartiments Amazon S3 avec contenu statique

MediaTailor origine des segments

Cette origine utilise le nom d'hôte segments.mediatailor.region.amazonaws.com et diffuse les segments publicitaires eux-mêmes après les MediaTailor avoir encodés. Il s'agit des segments vidéo qui contiennent les publicités. Cette origine gère :

  • Segments publicitaires transcodés dans le même format que votre contenu

  • Demandes redirigées depuis le modèle de /segment/* chemin

  • Segments publicitaires traités pour l'insertion d'annonces côté serveur

MediaTailor origine des manifestes

Cette origine utilise le nom d'hôte manifests.mediatailor.region.amazonaws.com et peut être utilisée comme nom d'hôte régional pour les configurations de lecture dans la région spécifiée AWS . MediaTailor sélectionne la configuration de lecture correcte en fonction du chemin indiqué dans la demande. Cette origine fournit :

  • Manifestes HLS et DASH personnalisés avec insertion de publicités spécifiques à l'utilisateur

  • Manifestes d'insertion de publicités guidés par le serveur (SGAI) pour le contenu pouvant être mis en cache

  • Suivi des publicités et gestion des balises pour les rapports côté serveur

Avec le nom d'hôte d'originemanifests.mediatailor.region.amazonaws.com, vous pouvez avoir plusieurs configurations de lecture qui fonctionnent avec la même CloudFront distribution si elles se trouvent dans la région spécifiée et si vous incluez le nom de la configuration de lecture dans le chemin de la demande. Par exemple :

  • https://your-distribution.cloudfront.net/v1/master/playback-config-1/manifest.m3u8

  • https://your-distribution.cloudfront.net/v1/master/playback-config-2/manifest.m3u8

Passez en revue et ajustez les politiques de demande d'origine en fonction de vos exigences spécifiques en matière d'origine du contenu. L'exemple utilise les politiques d'origine S3, mais vous pourriez avoir besoin de politiques différentes pour les origines personnalisées. Tenez compte des facteurs suivants lors de la sélection des politiques de demande d'origine :

  • Origines S3 : utilisation Managed-CORS-S3Origin pour les compartiments Amazon S3

  • Origines personnalisées : utiliser Managed-AllViewer ou Managed-AllViewerAndCloudFrontHeaders-2022-6 pour des origines HTTP personnalisées

  • MediaPackage origines : Utilisation Managed-CORS-S3Origin pour les points de terminaison MediaPackage V2

Origins table showing ContentOrigin, MediaTailorSegments, and MediaTailorManifests with their respective details.

Priorité et configuration du comportement du cache

MediaTailor nécessite des configurations de comportement de cache spécifiques pour gérer correctement les différents types de demandes. La priorité des comportements du cache est essentielle car elle permet de les CDNs traiter dans l'ordre (du plus petit au plus grand) et d'utiliser le comportement pour le premier modèle de chemin correspondant. Il est essentiel de comprendre cette priorité pour résoudre les problèmes :

  • Priorité 0 : la plupart des modèles spécifiques (similaires/tm/*) sont évalués en premier

  • Numéros de priorité plus élevés : les modèles moins spécifiques sont évalués dans l'ordre

  • Comportement par défaut : capture toutes les demandes qui ne correspondent pas à d'autres modèles

Si les demandes ne se comportent pas comme prévu, vérifiez que vos modèles de chemins ne se chevauchent pas de manière involontaire.

Table showing behaviors with path patterns, origins, and policies for different URL paths.

Priorité 0 : comportement du chemin des segments publicitaires

Ce comportement gère les demandes redirigées depuis le comportement du chemin du segment, en diffusant les segments publicitaires réels. CloudFront applique les comportements suivants à toutes les demandes comportant un modèle de /tm/* chemin. Il s'agit du comportement le plus prioritaire, car la diffusion de segments publicitaires est essentielle pour une diffusion ininterrompue.

  • Schéma de trajectoire : /tm/*

    Exemple URLs qui correspond à ce modèle :

    • https://your-distribution.cloudfront.net/tm/ad-segment-001.ts

    • https://your-distribution.cloudfront.net/tm/transcoded-ad.m4s

  • Origine : origine que vous avez créée avec le segments.mediatailor.region.amazonaws.com domaine.

    C'est MediaTailorSegmentsdans l'exemple de la section précédente sur les origines.

  • Politique de cache : Managed-CachingOptimized

    La politique de Managed-CachingOptimized cache doit être configurée pour inclure l'en-tête Origin dans la clé de cache afin d'éviter les problèmes d'empoisonnement du cache CORS. Sans l'Originen-tête dans la clé de cache, le scénario suivant peut se produire :

    1. Une demande sans Origin en-tête est reçue et mise en cache par CloudFront

    2. Une demande ultérieure avec un Origin en-tête reçoit la réponse mise en cache (qui n'a pas d'en-têtes CORS)

    3. Le navigateur rejette la réponse en raison de l'absence d'en-têtes CORS, ce qui entraîne des échecs de lecture

    Pour plus de détails sur ce qui est inclus dans la politique de cache CloudFront géré, consultez CachingOptimizedle guide de CloudFront l'utilisateur. Vous pouvez également utiliser ces mêmes paramètres issus de la politique gérée de votre CDN tiers.

  • Politique de demande d'origine : Managed-CORS-S3Origin

    Pour plus de détails sur ce qui est inclus dans la politique de CloudFront gestion des demandes d'origine, voir CORS-S3Origin dans le guide de l'utilisateur. CloudFront Vous pouvez également utiliser ces mêmes paramètres issus de la politique gérée de votre CDN tiers.

  • Politique relative aux en-têtes de réponse : Managed-CORS-with-preflight-and-SecurityHeadersPolicy

    L'utilisation de la politique des en-têtes de Managed-CORS-with-preflight-and-SecurityHeadersPolicy réponse est essentielle pour éviter l'empoisonnement du cache CORS. Cette politique garantit l'inclusion de CloudFront l'Access-Control-Allow-Originen-tête dans les réponses, ce qui est nécessaire pour que les acteurs du Web puissent accéder à des segments publicitaires d'origines différentes.

    Pour plus de détails sur ce qui est inclus dans la politique des en-têtes de réponse, voir CORS with-preflight-and - SecurityHeadersPolicy dans le guide de l' CloudFront utilisateur.

Adaptation de ces paramètres à d'autres CDNs

Si vous utilisez un CDN autre que CloudFront, recherchez des paramètres équivalents permettant d'accomplir les tâches suivantes.

Correspondance des modèles de trajectoire

Configurer un comportement spécifique pour le modèle de /tm/* chemin afin de gérer les segments MediaTailor publicitaires

Configuration de la clé de cache

Incluez l'Originen-tête dans votre clé de cache pour vous assurer que les réponses sont mises en cache séparément pour différentes origines

Transfert d'en-tête

Transférer l'Originen-tête et les autres en-têtes liés à Cors vers l'origine

Gestion des en-têtes de réponse

Configurez votre CDN pour vous assurer que l'Access-Control-Allow-Originen-tête est présent dans les réponses

La terminologie spécifique et les options de configuration varient selon le fournisseur de CDN, mais les principes sous-jacents restent les mêmes.

Priorité 1 : Comportement d'insertion d'annonces guidé par le serveur

Ce comportement gère les demandes Comprendre l'insertion de publicités AWS Elemental MediaTailor guidée par le serveur (SGAI) lorsque les clients configurent le mode guidé, qui fournit des manifestes pouvant être mis en cache. CloudFront applique les comportements suivants à toutes les demandes comportant un modèle de /v1/i-media/* chemin. Le SGAI permet d'améliorer les performances de mise en cache car les manifestes ne sont pas spécifiques à l'utilisateur.

  • Modèle de chemin : /v1/i-media/* (chemin iMedia pour SGAI)

    Exemple URLs qui correspond à ce modèle :

    • https://your-distribution.cloudfront.net/v1/i-media/your-config/manifest.m3u8

    • https://your-distribution.cloudfront.net/v1/i-media/your-config/playlist.mpd

  • Origine : origine que vous avez créée avec le manifests.mediatailor.region.amazonaws.com domaine.

    C'est MediaTailorManifestsdans l'exemple de la section précédente sur les origines.

  • Politique de cache : Managed-CachingOptimized

    Pour plus de détails sur ce qui est inclus dans la politique de cache CloudFront géré, consultez CachingOptimizedle guide de CloudFront l'utilisateur. Vous pouvez également utiliser ces mêmes paramètres issus de la politique gérée de votre CDN tiers.

  • Politique de demande d'origine : Managed-CORS-S3Origin

    Pour plus de détails sur ce qui est inclus dans la politique de CloudFront gestion des demandes d'origine, voir CORS-S3Origin dans le guide de l'utilisateur. CloudFront Vous pouvez également utiliser ces mêmes paramètres issus de la politique gérée de votre CDN tiers.

  • Politique relative aux en-têtes de réponse : Managed-CORS-with-preflight-and-SecurityHeadersPolicy

    Pour plus de détails sur ce qui est inclus dans la politique des en-têtes de réponse, voir CORS with-preflight-and - SecurityHeadersPolicy dans le guide de l' CloudFront utilisateur.

Priorité 2 : Comportement manifeste personnalisé

Ce comportement gère les demandes de manifeste personnalisées. CloudFront applique les comportements suivants à toutes les demandes comportant un modèle de /v1/* chemin. CloudFront applique les comportements suivants et ne met pas en cache les manifestes personnalisés car ils contiennent du contenu publicitaire spécifique à l'utilisateur. URLs Ces comportements s'appliquent à toutes les demandes comportant un modèle de /v1/* chemin. Il s'agit de la MediaTailor fonctionnalité de base qui permet à chaque spectateur de recevoir un manifeste unique avec une insertion publicitaire personnalisée.

  • Modèle de chemin : /v1/* ( MediaTailor requêtes V1 standard)

    Exemple URLs qui correspond à ce modèle :

    • https://your-distribution.cloudfront.net/v1/master/your-config/manifest.m3u8

    • https://your-distribution.cloudfront.net/v1/dash/your-config/manifest.mpd

  • Origine : origine que vous avez créée avec le manifests.mediatailor.region.amazonaws.com domaine.

    C'est MediaTailorManifestsdans l'exemple de la section précédente sur les origines.

  • Politique de cache : Managed-CachingDisabled

    Pour plus de détails sur ce qui est inclus dans la politique de cache, consultez CachingDisabledle guide de CloudFront l'utilisateur.

  • Politique de demande d'origine : Managed-AllViewerAndCloudFrontHeaders-2022-6

    Pour plus de détails sur ce qui est inclus dans la politique de demande d'origine, reportez-vous à la section AllViewerAndCloudFrontHeaders-6 du guide de l' CloudFront utilisateur.

  • Politique relative aux en-têtes de réponse : Managed-CORS-with-preflight-and-SecurityHeadersPolicy

    Pour plus de détails sur ce qui est inclus dans la politique des en-têtes de réponse, voir CORS with-preflight-and - SecurityHeadersPolicy dans le guide de l' CloudFront utilisateur.

En-tête Accept-Encoding

Nous recommandons que votre CDN préserve l'Accept-Encodingen-tête des lecteurs. Cet en-tête donne des MediaTailor instructions sur la compression de manifestes personnalisés.

Dans CloudFront, la politique de demande AllViewerAndCloudFrontHeaders d'origine inclut le transfert de l'Accept-Encodingen-tête par le visualiseur. Si vous utilisez un autre CDN, assurez-vous qu'il préserve cet en-tête.

Voici comment MediaTailor gère l'Accept-Encodingen-tête.

  • Appareils anciens : les appareils intelligents plus anciens TVs qui ne supportent pas gzip n'envoient pas l'en-tête Accept-Encoding et renvoient donc MediaTailor des manifestes non compressés

  • Appareils modernes : les iPhones, les navigateurs Chrome et autres clients modernes envoient l'en-tête Accept-Encoding, ce qui permet de MediaTailor compresser les manifestes avant leur livraison

Priorité 3 : Comportement du chemin des balises côté serveur

Ce comportement gère les demandes MediaTailor qui entraînent des redirections pourSuivi côté serveur. Ces demandes sont essentielles pour le suivi des balises. Chaque demande doit donc être traitée par MediaTailor. CloudFront applique les comportements suivants à toutes les demandes comportant un modèle de /segment/* chemin.

  • Schéma de trajectoire : /segment/*

    Exemple URLs qui correspond à ce modèle :

    • https://your-distribution.cloudfront.net/segment/tracking-beacon-123

    • https://your-distribution.cloudfront.net/segment/ad-request-456.ts

  • Origine : origine que vous avez créée avec le manifests.mediatailor.region.amazonaws.com domaine.

    C'est MediaTailorManifestsdans l'exemple de la section précédente sur les origines.

  • Politique de cache : Managed-CachingDisabled

    Pour plus de détails sur ce qui est inclus dans la politique de cache, consultez CachingDisabledle guide de CloudFront l'utilisateur.

  • Politique de demande d'origine : Managed-AllViewerAndCloudFrontHeaders-2022-6

    Pour plus de détails sur ce qui est inclus dans la politique de demande d'origine, reportez-vous à la section AllViewerAndCloudFrontHeaders-6 du guide de l' CloudFront utilisateur.

  • Politique relative aux en-têtes de réponse : Managed-CORS-with-preflight-and-SecurityHeadersPolicy

    Pour plus de détails sur ce qui est inclus dans la politique des en-têtes de réponse, voir CORS with-preflight-and - SecurityHeadersPolicy dans le guide de l' CloudFront utilisateur.

Lors MediaTailor du traitement de ces demandes, il renvoie une réponse de redirection 302 avec un chemin pointant vers l'emplacement réel du segment. Par exemple, une demande /segment/ad123.ts peut être redirigée vers /tm/encoded-ad-segment.ts l'origine du segment.

Priorité 4 : Comportement du chemin d'origine du contenu

Si le chemin de la demande ne correspond à aucun des autres modèles, CloudFront applique le comportement par défaut. Ce comportement envoie les demandes directement à l'origine du contenu, sans traitement depuis MediaTailor. Cela permet d'accéder directement à l'origine de votre contenu (comme la MediaPackage V2) en cas de besoin. CloudFront applique les comportements suivants à toutes les demandes qui n'incluent aucun des modèles de chemin précédents.

  • Schéma de trajectoire : (*)

  • Origine : origine que vous avez créée avec le domaine correspondant à l'origine de votre contenu.

    C'est ContentOrigindans l'exemple de la section précédente sur les origines.

  • Politique de cache : Managed-CachingOptimized

    Pour plus de détails sur ce qui est inclus dans la politique de cache CloudFront géré, consultez CachingOptimizedle guide de CloudFront l'utilisateur. Vous pouvez également utiliser ces mêmes paramètres issus de la politique gérée de votre CDN tiers.

    Note

    Pour les implémentations HLS à faible latence, envisagez d'utiliser une politique de mise en cache personnalisée avec des directives HLS à faible latence (LLH) au lieu de la politique standard. CachingOptimized

  • Politique de demande d'origine : configurée pour transmettre les en-têtes et les paramètres de chaîne de requête appropriés à l'origine de votre contenu. Pour plus d'informations sur les politiques de demande d'origine gérées disponibles, voir Utiliser les politiques de demande d'origine gérées dans le guide du développeur de CF.

  • Politique relative aux en-têtes de réponse : Managed-CORS-with-preflight-and-SecurityHeadersPolicy

    Bien que le comportement d'origine du contenu par défaut ne présente généralement pas les mêmes risques d'empoisonnement du cache CORS que le comportement des segments publicitaires, il est toujours recommandé d'appliquer la politique des en-têtes de Managed-CORS-with-preflight-and-SecurityHeadersPolicy réponse et d'inclure l'Originen-tête dans votre clé de cache. Cela garantit une gestion cohérente du CORS pour tous les types de contenu et évite les problèmes de lecture potentiels sur les lecteurs Web.

    Pour les segments de contenu, la politique de Managed-CachingOptimized cache fournit de bonnes performances tandis que la politique des en-têtes de Managed-CORS-with-preflight-and-SecurityHeadersPolicy réponse garantit une gestion correcte du CORS. Cette combinaison permet une mise en cache efficace tout en maintenant la compatibilité avec les lecteurs Web qui nécessitent des en-têtes CORS.

    L'application d'une gestion CORS cohérente à la fois aux segments publicitaires et aux segments de contenu permet de créer une expérience de lecture plus fiable et de simplifier le dépannage. Sans une configuration CORS appropriée, les joueurs peuvent rencontrer des comportements incohérents lors de la transition entre le contenu et les publicités.

    Pour plus de détails sur ce qui est inclus dans la politique des en-têtes de réponse, voir CORS with-preflight-and - SecurityHeadersPolicy dans le guide de l' CloudFront utilisateur.