Stellen Sie Live-Streaming-Videos mit CloudFront AWS Media Services bereit - Amazon CloudFront

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Stellen Sie Live-Streaming-Videos mit CloudFront AWS Media Services bereit

Informationen zur Verwendung von AWS Media Services mit CloudFront zur Bereitstellung von Live-Inhalten für ein globales Publikum finden Sie in der folgenden Anleitung.

Verwenden Sie AWS Elemental MediaLive, um Live-Video-Streams in Echtzeit zu codieren. Um einen großen Videostream zu kodieren, MediaLive komprimieren Sie ihn in kleinere Versionen (Kodierungen), die an Ihre Zuschauer verteilt werden können.

Nachdem Sie einen Live-Videostream komprimiert haben, können Sie eine der folgenden beiden Hauptoptionen verwenden, um den Inhalt vorzubereiten und bereitzustellen:

  • Konvertieren Sie Ihre Inhalte in die erforderlichen Formate und stellen Sie sie dann bereit. Wenn Sie Inhalte in mehreren Formaten benötigen, verwenden Sie diese Option, AWS Elemental MediaPackageum die Inhalte für verschiedene Gerätetypen zu verpacken. Wenn Sie die Inhalte verpacken, können Sie auch zusätzliche Funktionen implementieren und das Digital Rights Management (digitale Rechteverwaltung, DRM) hinzufügen, um eine unbefugte Verwendung Ihrer Inhalte zu verhindern. step-by-step Anweisungen CloudFront zur Bereitstellung MediaPackage formatierter Inhalte finden Sie unterStellen Sie Live-Videos bereit, die formatiert sind mit AWS Elemental MediaPackage.

  • Speichern und Bereitstellen Ihrer Inhalte mit skalierbarem Ursprung — Wenn Inhalte in den Formaten MediaLive codiert sind, die von allen Geräten, die Ihre Zuschauer verwenden, erforderlich sind, verwenden Sie einen hochgradig skalierbaren Ursprung, z. B. AWS Elemental MediaStoreum den Inhalt bereitzustellen. step-by-step Anweisungen zur Bereitstellung von Inhalten CloudFront , die in einem MediaStore Container gespeichert sind, finden Sie unterStellen Sie das Video bereit, indem Sie AWS Elemental MediaStore es als Quelle verwenden.

Nachdem Sie Ihren Origin mithilfe einer dieser Optionen eingerichtet haben, können Sie Live-Streaming-Videos mithilfe von CloudFront.

Tipp

Du kannst dich über eine AWS Lösung informieren, die automatisch Dienste bereitstellt, um ein hochverfügbares Echtzeit-Fernseherlebnis zu schaffen. Die Schritte zur automatischen Bereitstellung dieser Lösung können Sie unter Live-Streaming – automatische Bereitstellung einsehen.

Stellen Sie das Video bereit, indem Sie AWS Elemental MediaStore es als Quelle verwenden

Wenn Sie ein Video in einem AWS Elemental MediaStoreContainer gespeichert haben, können Sie eine CloudFront Distribution erstellen, um den Inhalt bereitzustellen.

Zu Beginn gewähren Sie CloudFront Zugriff auf Ihren MediaStore Container. Anschließend erstellen Sie eine CloudFront Distribution und konfigurieren sie so, dass sie verwendet werden kann MediaStore.

Um Inhalte aus einem AWS Elemental MediaStore Container bereitzustellen
  1. Folgen Sie den Anweisungen unter Amazon den CloudFront Zugriff auf Ihren AWS Elemental MediaStore Container ermöglichen und kehren Sie dann zu diesen Schritten zurück, um Ihre Distribution zu erstellen.

  2. Verwenden Sie die folgenden Einstellungen, um eine Verteilung zu erstellen:

    1. Ursprungsdomain — Der Datenendpunkt, der Ihrem MediaStore Container zugewiesen ist. Wählen Sie aus der Drop-down-Liste den MediaStore Container für Ihr Live-Video aus.

    2. Herkunftspfad — Die Ordnerstruktur im MediaStore Container, in dem Ihre Objekte gespeichert sind. Weitere Informationen finden Sie unter Ursprungspfad.

    3. Benutzerdefinierten Header hinzufügen — Fügen Sie Header-Namen und Werte hinzu CloudFront , wenn Sie benutzerdefinierte Header hinzufügen möchten, wenn Anfragen an Ihren Ursprung weitergeleitet werden.

    4. Viewer-Protokollrichtlinie — Wählen Sie „HTTP zu HTTPS umleiten“. Weitere Informationen finden Sie unter Viewer-Protokollrichtlinien.

    5. Cache-Richtlinie und Origin-Anforderungsrichtlinie

      • Wählen Sie für Cache policy (Cache-Richtlinie) die Option Create policy (Richtlinie erstellen) aus und erstellen Sie dann eine Cache-Richtlinie, die Ihren Caching-Anforderungen und der Segmentdauer entspricht. Aktualisieren Sie nach dem Erstellen der Richtlinie die Liste der Cache-Richtlinien und wählen Sie die Richtlinie aus, die Sie gerade erstellt haben.

      • Wählen Sie für Origin-Anforderungsrichtlinie die Option CORS- CustomOrigin aus der Dropdownliste aus.

    Für die anderen Einstellungen können Sie bestimmte Werte basierend auf anderen technischen Anforderungen oder den Anforderungen Ihres Unternehmens festlegen. Eine Liste aller Optionen für Verteilungen und Informationen über ihre Einstellungen finden Sie unter Referenz zu Verteilungseinstellungen.

  3. Geben Sie für Links in Ihrer Anwendung (z. B. einem Media Player) den Namen der Mediendatei in demselben Format an, das Sie für andere Objekte verwenden, die Sie bei der Verteilung verwenden. CloudFront

Stellen Sie Live-Videos bereit, die formatiert sind mit AWS Elemental MediaPackage

Wenn Sie einen Livestream mithilfe von formatiert haben AWS Elemental MediaPackage, können Sie eine CloudFront Verteilung erstellen und das Cache-Verhalten für die Bereitstellung des Livestreams konfigurieren. Beim folgenden Vorgang wird davon ausgegangen, dass Sie bereits einen Kanal erstellt und Endpunkte für Ihr Live-Video hinzugefügt haben. MediaPackage

Gehen Sie wie folgt vor, um MediaPackage manuell eine CloudFront Distribution für zu erstellen:

Schritt 1: Erstellen und konfigurieren Sie eine CloudFront Distribution

Gehen Sie wie folgt vor, um eine CloudFront Verteilung für den Live-Videokanal einzurichten, mit dem Sie erstellt haben MediaPackage.

So erstellen Sie eine Verteilung für Ihren Live-Video-Kanal
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die CloudFront Konsole unterhttps://console.aws.amazon.com/cloudfront/v4/home.

  2. Wählen Sie Create distribution (Verteilung erstellen) aus.

  3. Wählen Sie die Einstellungen für die Verteilung aus, einschließlich der folgenden:

    Ursprungsdomäne

    Der Ursprung, an dem sich Ihr MediaPackage Live-Videokanal und Ihre Endpunkte befinden. Wählen Sie das Textfeld und dann aus der Drop-down-Liste die MediaPackage Ursprungsdomain für Ihr Live-Video aus. Sie können eine Domäne zu mehreren Ursprungsendpunkten zuordnen.

    Wenn Sie Ihre Ursprungsdomäne mit einem anderen AWS -Konto erstellt haben, geben Sie den Ursprung-URL-Wert in das Feld ein. Der Ursprung muss eine HTTPS-URL sein.

    Beispiel: bei einem HLS-Endpunkt wie https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8 ist die Ursprungsdomäne 3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com.

    Weitere Informationen finden Sie unter Ursprungsdomäne.

    Ursprungspfad

    Der Pfad zum MediaPackage Endpunkt, von dem aus der Inhalt bereitgestellt wird.

    Das Feld Ursprungspfad wird nicht für Sie ausgefüllt. Sie müssen den richtigen Ursprungspfad manuell eingeben.

    Weitere Informationen über die Funktionsweise eines Ursprungspfads finden Sie unter Ursprungspfad.

    Wichtig

    Der Platzhalterpfad * ist für die Weiterleitung an einer beliebigen Stelle in der CloudFront Distribution erforderlich. Um zu verhindern, dass Anfragen, die keinem expliziten Pfad entsprechen, an den echten Ursprung weitergeleitet werden, erstellen Sie einen „Dummy“ -Ursprung für diesen Platzhalterpfad.

    Beispiel : Erstellen eines „Dummy“-Ursprungs

    Im folgenden Beispiel werden die Endpunkte abc123 und def456 zum „echten“ Ursprung weitergeleitet, aber Anfragen nach Videoinhalten eines anderen Endpunkts werden ohne die richtige Subdomäne an mediapackage.us-west-2.amazonaws.com weitergeleitet. Das führt zu einem 404-HTTP-Fehler.

    MediaPackage Endpunkte:

    https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8 https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/def456/index.m3u8

    CloudFront Ursprung A:

    Domain: 3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com Path: None

    CloudFront Herkunft B:

    Domain: mediapackage.us-west-2.amazonaws.com Path: None

    CloudFront Verhalten des Caches:

    1. Path: /out/v1/abc123/* forward to Origin A 2. Path: /out/v1/def456/* forward to Origin A 3. Path: * forward to Origin B

    Für die anderen Verteilungseinstellungen können Sie bestimmte Werte basierend auf anderen technischen Anforderungen oder den Anforderungen Ihres Unternehmens festlegen. Eine Liste aller Optionen für Verteilungen und Informationen über ihre Einstellungen finden Sie unter Referenz zu Verteilungseinstellungen.

    Wenn Sie die Auswahl der anderen Verteilungseinstellungen abgeschlossen haben, wählen Sie Create Distribution (Verteilung erstellen) aus.

  4. Wählen Sie die gerade erstellte Verteilung aus und klicken Sie dann auf Behaviors (Verhaltensweisen).

  5. Wählen Sie das Cache-Standardverhalten und anschließend Edit (Bearbeiten) aus. Geben Sie die korrekten Einstellungen für das Cache-Verhalten für den Kanal an, den Sie für den Ursprung auswählen. Später fügen Sie einen oder mehrere zusätzliche Ursprünge hinzu und bearbeiten deren Einstellungen für das Cache-Verhalten.

  6. Gehe zur Seite mit den CloudFront Distributionen.

  7. Warten Sie, bis der Wert in der Spalte Letzte Änderung für Ihre Distribution von Bereitstellen auf Datum und Uhrzeit geändert wurde, was darauf hinweist, dass CloudFront Ihre Distribution erstellt wurde.

Schritt 2: Fügen Sie Origins für die Domains Ihrer MediaPackage Endgeräte hinzu

Wiederhole die Schritte hier, um jeden deiner MediaPackage Kanalendpunkte zu deiner Distribution hinzuzufügen. Denke dabei daran, dass du einen „Dummy“ -Ursprung erstellen musst.

So fügen Sie andere Endpunkte als Ursprünge hinzu
  1. Wähle auf der CloudFront Konsole die Distribution aus, die du für deinen Kanal erstellt hast.

  2. Klicken Sie auf Origins (Ursprünge) und wählen Sie Create origin (Ursprung erstellen) aus.

  3. Wähle für Origin-Domain in der Drop-down-Liste einen MediaPackage Endpunkt für deinen Kanal aus.

  4. Für die anderen Einstellungen legen Sie die Werte basierend auf anderen technischen Anforderungen oder den Anforderungen Ihres Unternehmens fest. Weitere Informationen finden Sie unter Ursprungseinstellungen.

  5. Wählen Sie Create Origin (Ursprung erstellen) aus.

Schritt 3: Konfigurieren der Cache-Verhaltensweisen für alle Endpunkte

Für jeden Endpunkt müssen Sie Cache-Verhaltensweisen konfigurieren, um Pfadmuster hinzuzufügen, die Anfragen korrekt weiterleiten. Die Pfadmuster, die Sie angeben, hängen vom bereitgestellten Videoformat ab. Das folgende Verfahren umfasst die Pfadmuster-Informationen, die für Apple HLS-, CMAF-, DASH- und Microsoft Smooth Streaming-Formate zu verwenden sind.

Sie richten in der Regel zwei Cache-Verhaltensweisen für jeden Endpunkt ein:

  • Das übergeordnete Manifest, bei dem es sich um den Index für Ihre Dateien handelt.

  • Die Segmente, die Dateien der Videoinhalte darstellen.

So erstellen Sie ein Cache-Verhalten für einen Endpunkt
  1. Wähle auf der CloudFront Konsole die Distribution aus, die du für deinen Kanal erstellt hast.

  2. Wählen Sie Behaviors (Verhaltensweisen) und anschließend die Option Create behavior (Verhalten erstellen) aus.

  3. Verwenden Sie für das Pfadmuster eine bestimmte MediaPackage OriginEndpoint GUID als Pfadpräfix.

    Pfadmuster

    Erstellen Sie für einen HLS-Endpunkt wie https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8 die folgenden zwei Cache-Verhaltensweisen:

    • Verwenden Sie für übergeordnete und untergeordnete Manifeste /out/v1/abc123/*.m3u8.

    • Für die Inhaltssegmente verwenden Sie /out/v1/abc123/*.ts.

    Erstellen Sie für einen CMAF-Endpunkt wie https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8 die folgenden zwei Cache-Verhaltensweisen:

    • Verwenden Sie für übergeordnete und untergeordnete Manifeste /out/v1/abc123/*.m3u8.

    • Für die Inhaltssegmente verwenden Sie /out/v1/abc123/*.mp4.

    Erstellen Sie für einen DASH-Endpunkt wie https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.mpd die folgenden zwei Cache-Verhaltensweisen:

    • Verwenden Sie für das übergeordnete Manifest /out/v1/abc123/*.mpd.

    • Für die Inhaltssegmente verwenden Sie /out/v1/abc123/*.mp4.

    Für einen Microsoft-Smooth-Streaming-Endpunkt wie https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.ism wird nur ein Manifest bereitgestellt, sodass Sie nur ein Cache-Verhalten erstellen: out/v1/abc123/index.ism/*.

  4. Geben Sie für jedes Cache-Verhalten Werte für die folgenden Einstellungen an:

    Viewer-Protokollrichtlinien

    Wählen Sie Redirect HTTP to HTTPS (HTTP an HTTPS umleiten) aus.

    Cache-Richtlinien und Ursprungsanforderungsrichtlinie

    Wählen Sie für Cache policy (Cache-Richtlinie) die Option Create policy (Richtlinie erstellen) aus. Geben Sie für Ihre neue Cache-Richtlinie die folgenden Einstellungen an:

    Mindest-TTL

    Legen Sie diese Einstellung auf 5 Sekunden oder weniger fest, um zu verhindern, dass veralteter Inhalt bereitgestellt wird.

    Abfragezeichenfolgen

    Wählen Sie für Query strings (Abfragezeichenfolgen) (in Cache key settings (Cache-Schlüssel-Einstellungen)) die Option Include specified query strings (Angegebene Abfragezeichenfolgen einschließen) aus. Fügen Sie unter Allow (Erlauben) die folgenden Werte hinzu, indem Sie sie eingeben und anschließend Add item (Element hinzufügen) auswählen:

    • Fügen Sie m als Abfragezeichenfolge einen Parameter hinzu, CloudFront den Sie als Grundlage für das Caching verwenden möchten. Die MediaPackage Antwort enthält immer das Tag?m=###, um die geänderte Uhrzeit des Endpunkts zu erfassen. Wenn bereits Inhalt mit einem anderen Wert für dieses Tag zwischengespeichert ist, CloudFront wird ein neues Manifest angefordert, anstatt die zwischengespeicherte Version bereitzustellen.

    • Wenn Sie die zeitversetzte Anzeigefunktion in verwenden MediaPackage, geben Sie start und end als zusätzliche Abfragezeichenfolge-Parameter für das Cache-Verhalten für Manifestanfragen (*.m3u8*.mpd, und) an. index.ism/* Auf diese Weise werden Inhalte bereitgestellt, die spezifisch für den angeforderten Zeitraum in der Manifest-Anfrage sind. Weitere Informationen über die Start- und Endanfrageparameter für die Time-Shift-Anzeige und Formatierung von Inhalten finden Sie unter Time-Shift-Anzeige im AWS Elemental MediaPackage Benutzerhandbuch.

    • Wenn Sie die Manifestfilterfunktion in verwenden MediaPackage, geben Sie aws.manifestfilter als zusätzlichen Abfragezeichenfolge-Parameter für die Cache-Richtlinie an, die Sie mit dem Cache-Verhalten für Manifestanforderungen (*.m3u8*.mpd, undindex.ism/*) verwenden. Dadurch wird Ihre Distribution so konfiguriert, dass die aws.manifestfilter Abfragezeichenfolge an Ihren MediaPackage Ursprung weitergeleitet wird. Dies ist erforderlich, damit die Manifestfilterfunktion funktioniert. Weitere Informationen finden Sie unter Manifestfilterung im AWS Elemental MediaPackage Benutzerhandbuch.

    • Wenn Sie HLS mit niedriger Latenz (LL-HLS) verwenden, geben Sie _HLS_msn und _HLS_part als zusätzliche Abfragezeichenfolgenparameter für die Cache-Richtlinie an, die Sie zusammen mit dem Cache-Verhalten für Manifestanfragen verwenden (*.m3u8). Dadurch wird Ihre Distribution so konfiguriert, dass sie die Zeichenketten _HLS_msn und die _HLS_part Abfragezeichenfolgen an Ihren MediaPackage Ursprung weiterleitet. Dies ist erforderlich, damit die Funktion zum Blockieren von Playlisten durch LL-HLS funktioniert.

  5. Wählen Sie Create (Erstellen) aus.

  6. Nachdem Sie die Cache-Richtlinie erstellt haben, kehren Sie zum Workflow zur Erstellung des Cacheverhaltens zurück. Aktualisieren Sie die Liste der Cache-Richtlinien und wählen Sie die Richtlinie aus, die Sie gerade erstellt haben.

  7. Wählen Sie Create behavior (Verhalten erstellen) aus.

  8. Wenn es sich bei Ihrem Endpunkt nicht um einen Microsoft-Smooth-Streaming–Endpunkt handelt, wiederholen Sie diese Schritte, um ein zweites Cache-Verhalten zu erstellen.

Schritt 4: Aktivieren Sie die headerbasierte CDN-Autorisierung MediaPackage

Wir empfehlen, die headerbasierte MediaPackage CDN-Autorisierung zwischen Endpunkten und der Distribution zu aktivieren. MediaPackage CloudFront Weitere Informationen finden Sie unter CDN-Autorisierung aktivieren im MediaPackage Benutzerhandbuch.AWS Elemental MediaPackage

Schritt 5: Zum CloudFront Bereitstellen des Live-Stream-Kanals verwenden

Nachdem Sie die Distribution erstellt, die Ursprünge hinzugefügt, das Cache-Verhalten erstellt und die Header-basierte CDN-Autorisierung aktiviert haben, können Sie den Livestream-Kanal mithilfe von bereitstellen. CloudFront CloudFront leitet Anfragen von Zuschauern auf der Grundlage der Einstellungen, die Sie für das Cache-Verhalten konfiguriert haben, an die richtigen MediaPackage Endpunkte weiter.

Geben Sie für Links in Ihrer Anwendung (z. B. einem Media Player) die URL für die Mediendatei im Standardformat für CloudFront URLs an. Weitere Informationen finden Sie unter Passen Sie das URL-Format für Dateien an in CloudFront.