

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.

# GetMedia
<a name="API_dataplane_GetMedia"></a>

 Verwenden Sie diese API, um Medieninhalte aus einem Kinesis-Videostream abzurufen. In der Anfrage identifizieren Sie den Streamnamen oder den Stream-Amazon-Ressourcennamen (ARN) und den Startblock. Kinesis Video Streams gibt dann einen Stream von Chunks zurück, der nach Fragmentnummer sortiert ist.

**Anmerkung**  
Sie müssen zuerst die `GetDataEndpoint` API aufrufen, um einen Endpunkt zu erhalten. Senden Sie dann die `GetMedia` Anfragen mit dem Parameter [--endpoint-url an diesen Endpunkt](https://docs.aws.amazon.com/cli/latest/reference/). 

Wenn Sie Mediendaten (Fragmente) in einen Stream einfügen, speichert Kinesis Video Streams jedes eingehende Fragment und die zugehörigen Metadaten in einem sogenannten „Chunk“. Weitere Informationen finden Sie unter [PutMedia](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_dataplane_PutMedia.html). Die `GetMedia` API gibt einen Stream dieser Chunks zurück, der mit dem Chunk beginnt, den Sie in der Anfrage angeben. 

Die `GetMedia` API ist so konzipiert, dass sie als Streaming-API über eine lang andauernde Verbindung funktioniert. Sie ist nicht für die herkömmliche Verwendung vorgesehen, RESTful bei der für jedes Fragment eine neue HTTP-Verbindung hergestellt und geschlossen wird. Wenn Sie die `GetMedia` API aufrufen, überträgt Kinesis Video Streams Fragmente kontinuierlich über eine persistente Verbindung mit langer Laufzeit unter Verwendung der HTTP-Chunked-Transfercodierung.

Bei der Verwendung der API gelten die folgenden Beschränkungen: `GetMedia`
+ Ein Client kann `GetMedia` bis zu fünf Mal pro Sekunde pro Stream aufrufen. 
+ Kinesis Video Streams sendet während einer Sitzung Mediendaten mit einer Geschwindigkeit von bis zu 25 Megabyte pro Sekunde (oder 200 Megabit pro Sekunde). `GetMedia` 
**Anmerkung**  
Wird `GetMedia` als Streaming-Verbindung mit langer Laufzeit verwendet, um mehrere Fragmente in einer einzigen persistenten Verbindung abzurufen. Verwenden Sie die `GetMedia` API nicht RESTful auf herkömmliche Weise, bei der Sie für jedes Fragment eine neue HTTP-Verbindung einrichten und schließen. Wenn Sie versuchen, mehr als drei `GetMedia` Verbindungen gleichzeitig herzustellen, drosselt Kinesis Video Streams die letzten Verbindungen mit einem Fehler. `ConnectionLimitExceededException`

**Anmerkung**  
Der Statuscode der `GetMedia` HTTP-Antwort wird sofort zurückgegeben, aber das Lesen der Nutzdaten der HTTP-Antwort wird nach 3 Sekunden beendet, wenn keine aufgenommenen Fragmente für die Wiedergabe verfügbar sind.

**Anmerkung**  
Wenn nach dem Aufrufen einer Kinesis Video Streams Streams-Medien-API ein Fehler ausgelöst wird, enthält dieser zusätzlich zum HTTP-Statuscode und dem Antworttext die folgenden Informationen:   
 `x-amz-ErrorType`HTTP-Header — enthält zusätzlich zu dem, was der HTTP-Statuscode bietet, einen spezifischeren Fehlertyp. 
 `x-amz-RequestId`HTTP-Header — Wenn Sie ein Problem melden möchten AWS, kann das Support-Team das Problem anhand der Anforderungs-ID besser diagnostizieren.
Sowohl der HTTP-Statuscode als auch der ErrorType Header können verwendet werden, um programmatische Entscheidungen darüber zu treffen, ob und unter welchen Bedingungen Fehler wiederholt werden können. Außerdem können Informationen darüber bereitgestellt werden, welche Maßnahmen der Client-Programmierer möglicherweise ergreifen muss, um es erneut erfolgreich zu versuchen.  
[Weitere Informationen finden Sie im Abschnitt **Fehler** am Ende dieses Themas sowie unter Häufige Fehler.](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/CommonErrors.html) 

## Anforderungssyntax
<a name="API_dataplane_GetMedia_RequestSyntax"></a>

```
POST /getMedia HTTP/1.1
Content-type: application/json

{
   "StartSelector": { 
      "AfterFragmentNumber": "string",
      "ContinuationToken": "string",
      "StartSelectorType": "string",
      "StartTimestamp": number
   },
   "StreamARN": "string",
   "StreamName": "string"
}
```

## URI-Anfrageparameter
<a name="API_dataplane_GetMedia_RequestParameters"></a>

Die Anforderung verwendet keine URI-Parameter.

## Anforderungstext
<a name="API_dataplane_GetMedia_RequestBody"></a>

Die Anforderung akzeptiert die folgenden Daten im JSON-Format.

 ** [StartSelector](#API_dataplane_GetMedia_RequestSyntax) **   <a name="KinesisVideo-dataplane_GetMedia-request-StartSelector"></a>
Identifiziert den Startblock, der aus dem angegebenen Stream abgerufen werden soll.   
Typ: [StartSelector](API_dataplane_StartSelector.md) Objekt  
Erforderlich: Ja

 ** [StreamARN](#API_dataplane_GetMedia_RequestSyntax) **   <a name="KinesisVideo-dataplane_GetMedia-request-StreamARN"></a>
Der ARN des Streams, von dem Sie den Medieninhalt abrufen möchten. Wenn Sie den nicht angeben`streamARN`, müssen Sie den angeben`streamName`.  
Typ: Zeichenfolge  
Längenbeschränkungen: Minimale Länge von 1. Maximale Länge beträgt 1024 Zeichen.  
Pattern: `arn:[a-z\d-]+:kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+`   
Erforderlich: Nein

 ** [StreamName](#API_dataplane_GetMedia_RequestSyntax) **   <a name="KinesisVideo-dataplane_GetMedia-request-StreamName"></a>
Der Name des Kinesis-Videostreams, von dem Sie den Medieninhalt abrufen möchten. Wenn Sie den nicht angeben`streamName`, müssen Sie den `streamARN` angeben.  
Typ: Zeichenfolge  
Längenbeschränkungen: Minimale Länge beträgt 1 Zeichen. Maximale Länge beträgt 256 Zeichen.  
Pattern: `[a-zA-Z0-9_.-]+`   
Erforderlich: Nein

## Antwortsyntax
<a name="API_dataplane_GetMedia_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-Type: ContentType

Payload
```

## Antwortelemente
<a name="API_dataplane_GetMedia_ResponseElements"></a>

Wenn die Aktion erfolgreich ist, sendet der Service eine HTTP 200-Antwort zurück.

Die Antwort gibt die folgenden HTTP-Header zurück.

 ** [ContentType](#API_dataplane_GetMedia_ResponseSyntax) **   <a name="KinesisVideo-dataplane_GetMedia-response-ContentType"></a>
Der Inhaltstyp des angeforderten Mediums.  
Längenbeschränkungen: Minimale Länge beträgt 1 Zeichen. Maximale Länge beträgt 128 Zeichen.  
Pattern: `^[a-zA-Z0-9_\.\-]+$` 

Die Antwort gibt folgendes als HTTP-Hauptteil zurück.

 ** [Payload](#API_dataplane_GetMedia_ResponseSyntax) **   <a name="KinesisVideo-dataplane_GetMedia-response-Payload"></a>
 Die Payload, die Kinesis Video Streams zurückgibt, ist eine Sequenz von Chunks aus dem angegebenen Stream. Weitere Informationen zu den Chunks finden Sie unter. [PutMedia](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_dataplane_PutMedia.html) Die Chunks, die Kinesis Video Streams im `GetMedia` Aufruf zurückgibt, enthalten auch die folgenden zusätzlichen Matroska-Tags (MKV):   
+ AWS\$1KINESISVIDEO\$1CONTINUATION\$1TOKEN (UTF-8-Zeichenfolge) — Falls Ihr `GetMedia` Anruf beendet wird, können Sie dieses Fortsetzungstoken in Ihrer nächsten Anfrage verwenden, um den nächsten Abschnitt abzurufen, in dem die letzte Anfrage beendet wurde.
+ AWS\$1KINESISVIDEO\$1MILLIS\$1BEHIND\$1NOW (UTF-8-Zeichenfolge) — Client-Anwendungen können diesen Tag-Wert verwenden, um zu ermitteln, wie weit der in der Antwort zurückgegebene Chunk vom letzten Chunk im Stream zurückliegt. 
+ AWS\$1KINESISVIDEO\$1FRAGMENT\$1NUMBER - Die im Chunk zurückgegebene Fragmentnummer.
+ AWS\$1KINESISVIDEO\$1SERVER\$1TIMESTAMP - Serverzeitstempel des Fragments.
+ AWS\$1KINESISVIDEO\$1PRODUCER\$1TIMESTAMP - Zeitstempel des Produzenten des Fragments.
Die folgenden Tags sind vorhanden, falls ein Fehler auftritt:  
+ AWS\$1KINESISVIDEO\$1ERROR\$1CODE - Zeichenkettenbeschreibung eines Fehlers, der GetMedia zum Abbruch geführt hat.
+ AWS\$1KINESISVIDEO\$1ERROR\$1ID: Ganzzahlcode des Fehlers.
Die Fehlercodes lauten wie folgt:  
+ 3002 — Fehler beim Schreiben in den Stream
+ 4000 — Das angeforderte Fragment wurde nicht gefunden
+ 4500 — Zugriff für den KMS-Schlüssel des Streams verweigert
+ 4501 — Der KMS-Schlüssel des Streams ist deaktiviert
+ 4502 — Validierungsfehler beim KMS-Schlüssel des Streams
+ 4503 — Der im Stream angegebene KMS-Schlüssel ist nicht verfügbar
+ 4504 — Ungültige Verwendung des im Stream angegebenen KMS-Schlüssels
+ 4505 — Ungültiger Status des im Stream angegebenen KMS-Schlüssels
+ 4506 — Der im Stream angegebene KMS-Schlüssel konnte nicht gefunden werden
+ 5000 — Interner Fehler

## Fehler
<a name="API_dataplane_GetMedia_Errors"></a>

Weitere Informationen zu den allgemeinen Fehlern, die bei allen Aktionen zurückgegeben werden, finden Sie unter [Häufige Fehlertypen](CommonErrors.md).

 ** ClientLimitExceededException **   
Kinesis Video Streams hat die Anfrage gedrosselt, weil Sie das Limit der erlaubten Client-Aufrufe überschritten haben. Versuchen Sie später, den Anruf zu tätigen.  
HTTP-Statuscode: 400

 ** ConnectionLimitExceededException **   
Kinesis Video Streams hat die Anfrage gedrosselt, weil Sie das Limit der zulässigen Client-Verbindungen überschritten haben.  
HTTP-Statuscode: 400

 ** InvalidArgumentException **   
Der Wert für diesen Eingabeparameter ist ungültig.  
HTTP-Statuscode: 400

 ** InvalidEndpointException **   
Der Aufrufer hat einen falschen Endpunkt verwendet, um Daten in einen Stream zu schreiben. Bei Empfang einer solchen Ausnahme muss der Benutzer `GetDataEndpoint` mit `APIName` set to aufrufen `PUT_MEDIA` und den Endpunkt aus der Antwort verwenden, um den nächsten `PutMedia` Aufruf aufzurufen.   
HTTP-Statuscode: 400

 ** NotAuthorizedException **   
Der Aufrufer ist nicht autorisiert, eine Operation mit dem angegebenen Stream auszuführen, oder das Token ist abgelaufen.  
HTTP-Statuscode: 401

 ** ResourceNotFoundException **   
Statuscode: 404, Der Stream mit dem angegebenen Namen existiert nicht.  
HTTP-Statuscode: 404

## Weitere Informationen finden Sie unter:
<a name="API_dataplane_GetMedia_SeeAlso"></a>

Weitere Informationen zur Verwendung dieser API in einer der sprachspezifischen Sprachen AWS SDKs finden Sie im Folgenden:
+  [AWS Befehlszeilenschnittstelle V2](https://docs.aws.amazon.com/goto/cli2/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK for .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK for Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK für JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK für Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK für Python](https://docs.aws.amazon.com/goto/boto3/kinesis-video-data-2017-09-30/GetMedia) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/kinesis-video-data-2017-09-30/GetMedia) 