Private Erfassung in IVS
Für Workloads, die eine sichere Live-Video-Erfassung erfordern, können Sie mithilfe eines Schnittstellen-VPC-Endpunkts (Virtual Private Cloud) eine sichere private Verbindung zwischen Ihrer Amazon-VPC und IVS herstellen. Dadurch bleibt Ihr IVS-Erfassungsverkehr innerhalb des AWS-Netzwerks und außerhalb des öffentlichen Internets. Schnittstellen-VPC-Endpunkte werden über AWS PrivateLink bereitgestellt, eine AWS-Technologie, die eine private Kommunikation zwischen AWS-Services über eine Elastic-Network-Schnittstelle mit privaten IP-Adressen in Ihrer Amazon-VPC ermöglicht. Weitere Informationen finden Sie unter Amazon Virtual Private Cloud und Zugreifen auf einen AWS-Service über einen Schnittstellen-VPC-Endpunkt (AWS PrivateLink).
Sie können in Ihrer Amazon-VPC oder über AWS Direct Connect RTMP(S)-Streams in IVS erfassen und Videos privat entweder an IVS-Kanäle mit geringer Latenz oder an IVS-Echtzeit-Bühnen senden. Ihnen werden die normalen Gebühren für die stündliche Nutzung von Schnittstellen-VPC-Endpunkten und für die Datenverarbeitung in Rechnung gestellt. Einzelheiten finden Sie unter Preise für Schnittstellen-Endpunkte
Stellen Sie sicher, dass sich die Amazon-VPC in einer unterstützten Region befindet:
-
ap-northeast-1
-
ap-northeast-2
-
ap-south-1
-
ap-southeast-1
-
ap-southeast-2
-
eu-central-1
-
eu-north-1
-
eu-west-1
-
eu-west-3
-
sa-east-1
-
us-east-1
-
us-east-2
-
us-west-2
Hinweis: Während sich Ihre Amazon-VPC in einer dieser unterstützten Regionen befinden muss, müssen sich die Ressourcen der IVS-Steuerebene nicht in derselben Region oder im selben AWS-Konto befinden wie die Amazon-VPC. Einzelheiten finden Sie unter Globale Lösung, regionale Kontrolle.
Um einen Stream über einen Schnittstellen-VPC-Endpunkt zu erfassen, verwenden Sie eine URL für die private Erfassung, die sich aus dem DNS-Namen des VPC-Endpunkts und dem Stream-Schlüssel für die IVS-Ressource (Konfiguration für Kanal- oder Bühnenerfassung) zusammensetzt, und zwar in diesem Format:
rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>
Um in einen Kanal zu streamen, erstellen Sie einen Kanal und rufen Sie dessen Stream-Schlüssel ab, wie unter Einrichten von Streaming-Software beschrieben. Um mit RTMP(S) oder E-RTMP(S) auf eine Bühne zu streamen, erstellen Sie eine Konfiguration für die RTMP-Erfassung und verwenden Sie den zugehörigen Stream-Schlüssel.
Es folgt eine kurze Anleitung zum Streamen von einer EC2-Instance in einen IVS-Kanal oder auf eine IVS-Bühne mithilfe eines Schnittstellen-VPC-Endpunkts:
Schritt 1: Erstellen eines Schnittstellen-VPC-Endpunkts
Jeder VPC-Endpunkt muss mit einer VPC in Ihrem Konto verknüpft sein. Falls in Ihrem Konto bereits eine Standard-VPC vorhanden ist, können Sie diese nutzen. Andernfalls müssen Sie eine neue VPC erstellen. Wenn Sie in Ihrem VPC-Endpunkt IPv6 oder Dualstack nutzen möchten, müssen Sie sicherstellen, dass die VPC über Subnetze mit zugewiesenen IPv6-CIDRs verfügt.
Informationen zum Erstellen eines VPC-Endpunkts finden Sie in den Anweisungen unter Erstellen eines VPC-Endpunkts (in der Dokumentation zu Amazon-VPCs). Gehen Sie auf der Seite Endpunkt erstellen wie folgt vor:
-
Wählen Sie AWS-Services aus. Suchen Sie anschließend im Bereich Services nach IVS. Es sollte ein Service wie com.amazonaws.<region>.ivs.contribute angezeigt werden.
-
Wählen Sie im Abschnitt Netzwerkeinstellungen die VPC aus, in der Sie den Endpunkt erstellen möchten. Wählen Sie im Abschnitt Subnetze aus, welche Subnetze und weiteren Netzwerkeinstellungen Sie für den Endpunkt konfigurieren möchten.
-
Wählen Sie im Abschnitt Sicherheitsgruppen eine Sicherheitsgruppe aus, die an den TCP-Ports 443 und 1935 eingehenden Datenverkehr von dort aus zulässt, von wo Sie streamen möchten. Diese Einstellung können Sie später vornehmen, nachdem Sie den Endpunkt erstellt haben. Wenn Sie also noch nicht wissen, welche Sicherheitsgruppe Sie nutzen möchten, lassen Sie diese Option vorerst deaktiviert.
Nachdem Sie Endpunkt erstellen ausgewählt haben, gelangen Sie zurück zur Übersichtsseite VPC-Endpunkte. Dort wird der gerade erstellte VPC-Endpunkt angezeigt:
-
Der Status des neuen Endpunkts lautet etwa 30 Sekunden lang Ausstehend. Danach wird er automatisch akzeptiert und sein Status ändert sich in Verfügbar (in grüner Schrift).
-
Im Bereich mit den Informationen zu VPC-Endpunkten werden rechts mehrere DNS-Namen angezeigt, die mit Ihrem VPC-Endpunkt verknüpft sind. Kopieren und speichern Sie den ersten aufgelisteten Namen. Diesen müssen Sie in einem späteren Schritt als URL des Servers für die Stream-Erfassung angeben.
Schritt 2: Starten einer EC2-Instance
Es gibt viele Optionen, mit deren Hilfe Kunden einen Stream aus AWS übertragen können. Im hier gezeigten Beispiel kommt eine Ubuntu-EC2-Instance mit installiertem FFmpeg zum Einsatz.
Erstellen Sie zunächst eine EC2-Instance (eine t2.micro-Instance ist ausreichend). Erstellen Sie die Instance unbedingt in derselben VPC, in der Sie den VPC-Endpunkt erstellt haben.
Die Sicherheitsgruppe, die Sie dieser Instance zuweisen, benötigt an den TCP-Ports 443 und 1935 den Ausgang zum VPC-Endpunkt. Aktivieren Sie außerdem unbedingt den Eingang an TCP-Port 22, wenn der Zugriff auf die Instance über SSH erfolgt, sowie den Ausgang an TCP-Port 80 für die Paketmanager-Vorgänge in Schritt 3 unten.
Starten Sie die Instance. Stellen Sie nach der Initialisierung über SSH oder AWS Session Manager eine Verbindung zur Instance her.
Schritt 3: Installieren von FFmpeg auf der Instance
Sobald die Verbindung mit der Instance hergestellt ist, führen Sie die folgenden Befehle auf dem Computer aus (vorausgesetzt, Sie haben die Instance mit Ubuntu erstellt), um FFmpeg zu installieren:
sudo add-apt-repository ppa:savoury1/ffmpeg4 sudo apt-get update sudo apt-get install ffmpeg
Schritt 4: Streamen in einen IVS-Kanal oder auf eine IVS-Bühne
Das Format der URL für die private Erfassung sieht wie folgt aus:
rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>
Zum Beispiel:
rtmps://vpce-0a8dfb0b7a4611439-xyzabc12.contribute.ivs.us-west-2.vpce.amazonaws.com/app/sk-usw2-abc123example456
Führen Sie den folgenden beispielhaften FFmpeg-Befehl aus, wobei Sie <VPC_ENDPOINT_DNS_NAME> durch den DNS-Namen aus Schritt 1 und <STREAM_KEY> durch den entsprechenden Stream-Schlüssel ersetzen (für eine Kanal- oder Erfassungskonfiguration):
ffmpeg -re -f lavfi -i "testsrc=duration=360:size=1024x768:rate=30" -f lavfi -i "sine=frequency=1000" -pix_fmt yuv420p -profile:v baseline -level 3.0 -r 30 -g 60 -shortest -vcodec libx264 -acodec aac -f flv "rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>"
Wenn alle oben aufgeführten Schritte erfolgreich waren, sollte der Stream ausgeführt werden. Ein über einen VPC-Endpunkt erfasster Stream sollte genauso verarbeitet und behandelt werden wie ein Stream, der über einen öffentlichen IVS-Endpunkt erfasst wurde. Der einzige Unterschied besteht im Pfad der Erfassung.
Wenn Sie mit der Nutzung fertig sind, sollten Sie die erstellte EC2-Instance und den VPC-Endpunkt unbedingt löschen, um unnötige Gebühren zu vermeiden.