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.
Beispiel: Analysieren und Rendern von Kinesis Video Streams Streams-Fragmenten
Die Streamen Sie mithilfe der Parser-Bibliothek enthält eine Demo-Anwendung mit dem NamenKinesisVideoRendererExample
, die das Parsen und Rendern von Amazon Kinesis Kinesis-Videostream-Fragmenten demonstriert. Das Beispiel dient JCodec
Dieses Beispiel veranschaulicht, wie Sie folgende Aufgaben ausführen:
-
Rufen Sie mithilfe von Frames aus einem Kinesis-Videostream ab
GetMedia
API und rendern Sie den Stream zur Anzeige. -
Zeigen Sie den Videoinhalt von Streams in einer benutzerdefinierten Anwendung an, anstatt die Kinesis Video Streams Streams-Konsole zu verwenden.
Sie können die Klassen in diesem Beispiel auch verwenden, um Kinesis-Videostream-Inhalte anzuzeigen, die nicht als H.264 codiert sind, z. B. einen Stream von JPEG Dateien, die vor der Anzeige nicht dekodiert werden müssen.
Im folgenden Verfahren wird veranschaulicht, wie Sie die Renderer-Demoanwendung einrichten und verwenden.
Voraussetzungen
Zum Untersuchen und Verwenden der Renderer-Beispielbibliothek ist Folgendes erforderlich:
-
Ein Amazon Web Services (AWS) -Konto. Wenn Sie noch kein AWS Konto haben, finden Sie weitere Informationen unter Erste Schritte mit Kinesis Video Streams.
-
Eine integrierte Java-Entwicklungsumgebung (IDE), wie Eclipse Java Neon
oder JetBrains IntelliJ Idea .
Renderer-Beispiel ausführen
-
Erstellen Sie ein Verzeichnis und klonen Sie dann den Beispielquellcode aus dem GitHub Repository.
git clone https://github.com/aws/amazon-kinesis-video-streams-parser-library
-
Öffnen Sie das JavaIDE, das Sie verwenden (z. B. Eclipse
oder IntelliJ IDEA ), und importieren Sie das Apache Maven-Projekt, das Sie heruntergeladen haben: -
In Eclipse: Klicken Sie auf File, Import, Maven, Existing Maven Projects. Navigieren Sie zum
kinesis-video-streams-parser-lib
Verzeichnis . -
In IntelliJ Idea: Klicken Sie auf Import. Navigieren Sie zur Datei
pom.xml
im Stammverzeichnis des heruntergeladenen Pakets.Anmerkung
Wenn IntelliJ Ihre Abhängigkeiten nicht finden kann, müssen Sie möglicherweise Folgendes tun:
-
Neuerstellung: Klicken Sie auf Datei, Einstellungen, Build, Execution, Deployment (Erstellung, Ausführung, Bereitstellung), Compiler. Vergewissern Sie sich, dass die Option Ausgabeverzeichnis bei Neuerstellung löschen ausgewählt ist, und wählen Sie dann Build, Build Project.
-
Projekt erneut importieren: Öffnen Sie das Kontextmenü (Rechtsklick) für das Projekt und wählen Sie dann Maven und Reimport (Neu importieren) aus.
-
Weitere Informationen finden Sie in der zugehörigen IDE Dokumentation.
-
-
Öffnen Sie von Ihrem IDE Java-Computer aus
src/test/java/com.amazonaws.kinesisvideo.parser/examples/KinesisVideoRendererExampleTest
. -
Entfernen Sie die Anweisung
@Ignore
aus der Datei. -
Aktualisieren Sie den
.stream
Parameter mit dem Namen Ihres Kinesis-Videostreams. -
Führen Sie den Test
KinesisVideoRendererExample
aus.
So funktioniert’s
Die Beispielanwendung veranschaulicht die folgenden Schritte:
Daten werden gesendet MKV
Im Beispiel MKV werden Beispieldaten aus der rendering_example_video.mkv
Datei gesendet, PutMedia
um Videodaten an einen Stream mit dem Namen zu senden render-example-stream.
Die Anwendung erstellt eine PutMediaWorker
:
PutMediaWorker putMediaWorker = PutMediaWorker.create(getRegion(), getCredentialsProvider(), getStreamName(), inputStream, streamOps.amazonKinesisVideo); executorService.submit(putMediaWorker);
Informationen zur Klasse PutMediaWorker
finden Sie unter Rufen Sie an PutMedia in der Dokumentation zu Streamen Sie mithilfe der Parser-Bibliothek.
MKVFragmente in Frames zerlegen
Das Beispiel ruft dann die MKV Fragmente aus dem Stream ab und analysiert sie mit einem: GetMediaWorker
GetMediaWorker getMediaWorker = GetMediaWorker.create(getRegion(), getCredentialsProvider(), getStreamName(), new StartSelector().withStartSelectorType(StartSelectorType.EARLIEST), streamOps.amazonKinesisVideo, getMediaProcessingArgumentsLocal.getFrameVisitor()); executorService.submit(getMediaWorker);
Weitere Informationen zur Klasse GetMediaWorker
finden Sie unter Rufen Sie an GetMedia in der Dokumentation zu Streamen Sie mithilfe der Parser-Bibliothek.
Dekodierung und Anzeige des Frames
Das Beispiel dekodiert dann den Frame und zeigt ihn an mit. JFrame
Das folgende Code-Beispiel stammt aus der Klasse KinesisVideoFrameViewer
, die JFrame
erweitert:
public void setImage(BufferedImage bufferedImage) { image = bufferedImage; repaint(); }
Das Bild wird als Instanz von java.awt.image angezeigt. BufferedImageBufferedImage
veranschaulichen, finden Sie unter Lesen/Laden eines Image