Kanal

In Azure Media Services (AMS) stellt die Channel-Entität eine Pipeline für die Verarbeitung von Livestreaminginhalten dar. Es gibt zwei Arten, auf die Live-Eingabedatenströme von Kanälen empfangen werden können:

  • Ein lokaler Liveencoder sendet multibitrate RTMP oder Smooth Streaming (fragmentierte MP4) an den Kanal. Sie können die folgenden Liveencoder verwenden, von denen Smooth Streaming mit Mehrfachbitrate ausgegeben werden kann: MediaExcel, Imagine Communications, Ateme, Envivio, Cisco und Elemental. Die folgenden Liveencoder geben RTMP aus: Adobe Flash Live Encoder, Haivision, Telestream Wirecast, Teradek und Tricaster. Die erfassten Streams durchlaufen Kanäle ohne weitere Verarbeitung. Auf Anforderung wird der Datenstrom den Kunden von Media Services bereitgestellt.

  • Ein einzelner Bitratedatenstrom (in einem der folgenden Formate: RTP (MPEG-TS), RTMPoder Smooth Streaming (Fragmentierte MP4)) wird an die gesendet, die für die Channel Livecodierung mit Media Services aktiviert ist. Anschließend führt der Channel eine Livecodierung des eingehenden Streams mit einer Bitrate in einen (adaptiven) Videostream mit mehreren Bitraten aus. Auf Anforderung wird der Datenstrom den Kunden von Media Services bereitgestellt.

Mit Media Services-Version 2.10 können Sie beim Erstellen eines Kanals angeben, wie der Eingabedatenstrom vom Kanal empfangen werden soll und ob vom Kanal eine Livecodierung des Datenstroms ausgeführt werden soll. Sie haben zwei Möglichkeiten:

  • None – Geben Sie diesen Wert an, wenn Sie einen lokalen Liveencoder verwenden möchten, der Streams mit mehreren Bitraten ausgibt. In diesem Fall wird der Eingabedatenstrom ohne Codierung an die Ausgabe geleitet. Bis zur Version 2.10 ist dies das Standardkanalverhalten. Ausführlichere Informationen zum Arbeiten mit Kanälen dieses Typs finden Sie unter Arbeiten mit Kanälen, die Livestream mit mehreren Bitraten von lokalen Encodern empfangen.

  • Standard – Wählen Sie diesen Wert aus, wenn Sie Media Services verwenden möchten, um Ihren Livestream mit einer einzelnen Bitrate in einen Datenstrom mit mehreren Bitraten zu codieren.

    Hinweis

    Beachten Sie, dass das Live Encoding sich auf die Abrechnung auswirkt und dass die Beibehaltung des Status „Wird ausgeführt“ für einen Live Encoding-Kanal mit Gebühren verbunden ist. Es wird empfohlen, die Ausführung der Kanäle sofort zu beenden, wenn das Livestreaming-Ereignis abgeschlossen ist, um das Anfallen zusätzlicher Stundengebühren zu vermeiden. Weitere Informationen finden Sie unter Arbeiten mit Kanälen, die zum Ausführen von Live Encoding mit Azure Media Services aktiviert wurden.

Weitere Informationen zum Livestreaming und zum Verwalten von Kanälen finden Sie unter Bereitstellen von Livestreaming mit Azure Media Services.

Wichtig

Wenn Sie in Media Services auf Entitäten zugreifen, müssen Sie bestimmte Headerfelder und Werte in Ihren HTTP-Anforderungen festlegen.
Weitere Informationen finden Sie unter Einrichten der Media Services-REST-API-Entwicklung und Herstellen einer Verbindung mit Media Services mit der Media Services-REST-API.

Dieses Thema enthält eine Übersicht über die Entität Channel. Darüber hinaus wird gezeigt, wie unterschiedliche Vorgänge mit der Media Services REST-API ausgeführt werden.

Entität "Channel"

Die Channel-Entität enthält die folgenden Eigenschaften.

Eigenschaft type BESCHREIBUNG
Id

Schreibgeschützt. Wird von Media Services festgelegt.
Edm.String Die Kanal-ID, die bei der Erstellung zugeordnet wird. Das Format lautet:

nb:chid:UUID:<GUID>.
Name Edm.String Der Kanalname.

1. Muss innerhalb Ihres Media Services-Kontos eindeutig sein.
2. Maximale Länge = 32 Zeichen.
3. Keine Leerzeichen enthalten.
4. Nur Bindestriche und alphanumerische Zeichen.
5. Kann nicht mit einem Bindestrich beginnen oder enden.
Created

Schreibgeschützt. Wird von Media Services festgelegt.
Edm.DateTime Der Erstellungszeitpunkt (UTC-Datum und -Uhrzeit).
Description Edm.String Vom Benutzer bereitgestellte Beschreibung. Die maximale Länge beträgt 256 Zeichen.
LastModified

Schreibgeschützt. Wird von Media Services festgelegt.
Edm.DateTime Das Datum und die Uhrzeit der letzten Aktualisierung am Kanal.
State

Schreibgeschützt. Wird von Media Services festgelegt.
Edm.String Der aktuelle Status des Kanals. Mögliche Werte sind:

– Stopped: In diesem Status können die Eigenschaften des Kanals aktualisiert werden. Ein Streaming ist jedoch nicht zulässig.
– Starting: Kanal wird gestartet. In diesem Status sind weder Updates noch Streaming zulässig. Wenn ein Fehler auftritt, gibt der Kanal den Status Stopped zurück.
– Running: Vom Kanal können Livestreams verarbeitet werden.
– Stopping: Der Kanal wird beendet. In diesem Status sind weder Updates noch Streaming zulässig.
– Deleting: Der Kanal wird gelöscht. In diesem Status sind weder Updates noch Streaming zulässig.
Input ChannelInput ComplexType Kanaleingabeeinstellungen (Erfassung).
Output ChannelOutput ComplexType Kanalausgabeeinstellungen.
Preview ChannelPreview ComplexType Kanalvorschaueinstellungen.
CrossSiteAccessPolicies CrossSiteAccessPolicies Websiteübergreifende Zugriffsrichtlinien
Programs

Schreibgeschützt. Wird von Media Services festgelegt.
Eine Sammlung von Programms. Ein Verweis zur Auflistungen von mit dem Kanal verknüpften Programmen.
EncodingType Edm.String Optional. Beschreibt die Konfiguration des Kanals. Zulässige Werte sind:

- None – Dies ist der Standardwert. Wenn Sie diesen Wert auswählen, wird der eingehende Stream ohne Codierung ausgegeben (dies ist das Verhalten eines Kanals vor Version 2.10).
- Standard– Der eingehende Datenstrom mit einer Einzelbitrate wird an den Kanal gesendet und mithilfe von Systemvoreinstellungen in einen Datenstrom mit mehreren Bitraten transcodiert.
Encoding Codierung von ComplexType Einstellungen für Azure-Liveencoder.
Slate Filmklappe Diese Einstellung wird nur unterstützt, wenn die Encoding Type des Kanals auf Standardfestgelegt ist.

Dem Liveencoder im Kanal kann signalisiert werden, zu einem Slatebild zu wechseln. Auch das Beenden eines aktuellen Slates kann signalisiert werden.

Der Liveencoder kann so konfiguriert werden, dass er zu einem Klappenbild wechselt und das eingehende Videosignal in bestimmten Situationen, z. B. während einer Werbeunterbrechung, maskiert. Wird kein solches Slate konfiguriert, so wird das eingehende Videosignal während dieser Werbepause nicht maskiert.

ChannelInput ComplexType

Name type BESCHREIBUNG
KeyFrameInterval Edm.Time Dieser Wert wird ignoriert, wenn EncoderType auf Standard festgelegt ist.

Wenn Sie einen lokalen Liveencoder zum Generieren eines Datenstroms mit mehreren Bitraten verwenden, gibt das Keyframeintervall die GOP-Dauer an (wie sie von diesem externen Encoder verwendet wird). Sobald dieser eingehende Datenstrom durch den Kanal empfangen wird, können Sie Ihren Livedatenstrom in einem der folgenden Formate für Wiedergabe-Clientanwendungen bereitstellen: Smooth Streaming, DASH und HLS. Bei Livestreaming wird HLS immer dynamisch verpackt. Standardmäßig berechnet Media Services automatisch das HLS-Segmentpackungsverhältnis (Fragmente pro Segment), basierend auf dem Keyframeintervall, das auch als GOP (Gruppe von Bildern) bezeichnet wird, das vom Liveencoder empfangen wird.
StreamingProtocol

Schreibgeschützt.
Edm.String Nachdem Sie den Encodertyp festgelegt haben, können Sie ein Erfassungsprotokoll festlegen.

Wenn auf Encoder Type festgelegt Noneist, gelten folgende Optionen:

- Fragmentiertes MP4 mit mehreren Bitraten (Smooth Streaming)
– RTMP mit mehreren Bitraten

Wenn Sie Encoder Type auf Nonefestgelegt ist, ist es gültig, aber unerwünscht, dass ein einzelner RTMP- oder Smooth Streaming-Livestream mit einer Bitrate gesendet wird. Der Stream durchläuft den Kanal unverarbeitet. Die Clientanwendungen erhalten jedoch einen Stream mit einer einzelnen Bitrate.

Wenn auf Encoder Type festgelegt Standardist, gelten folgende Optionen:

1. Fragmentierte MP4 mit einzeler Bitrate (Smooth Streaming)
2. RTMP mit einzeler Bitrate
3. RTP (MPEG-TS): MPEG-2-Transportstream über RTP.
AccessControl ChannelInputAccessControl ComplexType Kanaleingabe-Zugriffssteuerungseinstellungen.
Endpoints

Schreibgeschützt.
ChannelEndpoint ComplexType Kanaleingabeendpunkte.

Ein Kanal stellt Eingabeendpunkte (Erfassungs-URLs) bereit, die Sie dann zum Erfassen des Livestreams verwenden. Der Kanal empfängt Liveeingabestreams und stellt die Ausgabestreams über einen oder mehrere Streamingendpunkte für das Streaming bereit.

ChannelPreview ComplexType

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
AccessControl ChannelPreviewAccessControl ComplexType Kanalvorschau-Zugriffssteuerungseinstellungen.
Endpoints

Schreibgeschützt.
ChannelEndpoint ComplexType Kanalvorschauendpunkte.

ChannelInputAccessControl ComplexType

Name type BESCHREIBUNG
IP IPAccessControl IP-Adressen, die für die Verbindung zu den Kanaleingabeendpunkten zulässig sind.
IP-Adressen müssen in einem der folgenden Formate vorliegen: IpV4-Adresse mit vier Zahlen, CIDR-Adressbereich.

ChannelPreviewAccessControl ComplexType

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
IP IPAccessControl IP-Adressen, die für die Verbindung zu den Kanaleingabeendpunkten zulässig sind.
IP-Adressen müssen in einem der folgenden Formate vorliegen: IpV4-Adresse mit vier Zahlen, CIDR-Adressbereich

IPAccessControl

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
Allow IPRange ComplexType IP-Adressen, die für die Verbindung zu den Kanaleingabeendpunkten zulässig sind. Hinweis: Wenn Sie diesen Wert auf NULL festlegen, können alle IP-Quelladressen eine Verbindung herstellen. Bei Festlegung auf eine leere Zeichenfolge (“”) kann keine Adresse eine Verbindung herstellen.

IPRange ComplexType

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
Name Edm.String Ein Anzeigename für diesen IP-Bereich.
Address Edm.String Die Basis-IP-Adresse für die Subnetzdarstellung (beispielsweise 192.168.0.1).
SubnetPrefixLength Edm.Int32 Die Anzahl der signifikanten Bits für die Subnetzmaske (beispielsweise stellt 24 in der IP-Adresse "192.168.0.1/24" die Anzahl an signifikanten Bits dar).

ChannelEndpoint ComplexType

Name type BESCHREIBUNG
Protocol Edm.String Das Kanal-Streamingendpunktprotokoll.
Url Edm.String Die Kanalstreamingendpunkt-URL:

ChannelOutput ComplexType

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
Hls ChannelOutputHls ComplexType Die HLS-spezifischen Einstellungen.

ChannelOutputHls ComplexType

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
FragmentsPerSegment Edm.Int16 Die Anzahl an Fragmenten pro HLS-Segment (HTTP Livestreaming).

ComplexType-Codierung

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
AdMarkerSource Edm.String Sie können die Quelle für AD-Markersignale angeben. Der Standardwert ist Api, was angibt, dass der Liveencoder innerhalb des Kanals auf einen asynchronen Ad Marker APIlauschen soll. Die andere gültige Option ist Scte35 (nur zulässig, wenn das Erfassungsstreamingprotokoll auf RTP (MPEG-TS). Wenn Scte35 angegeben festgelegt ist, analysiert SCTE-35 der Encoder Signale aus dem EINGABE-RTP-Datenstrom (MPEG-TS).
IgnoreCea708ClosedCaptions Edm.bool Optional. Dies ist ein optionales Kennzeichen für den Liveencoder, CEA 708-Untertiteldaten, die in das eingehende Video eingebettet sind, zu ignorieren. Wenn das Kennzeichen die Einstellung „False“ (Standard) aufweist, werden CEA 708-Daten erkannt und in die Ausgabe-Videodatenströme eingefügt.
VideoStream VideoStream Optional. Hier wird der Eingabe-Videodatenstrom beschrieben. Wird dieses Feld frei gelassen, wird der Standardwert verwendet. Diese Einstellung ist nur zulässig, wenn das Eingabestreamingprotokoll die Einstellung „RTP (MPEG-TS)“ aufweist.
AudioStreams AudioStreams Optional. Hier wird der Eingabe-Audiodatenstrom beschrieben. Wird dieses Feld frei gelassen, werden die angegebenen Standardwerte verwendet. Diese Einstellung ist nur zulässig, wenn das Eingabestreamingprotokoll die Einstellung „RTP (MPEG-TS)“ aufweist.
SystemPreset Edm.String Gibt die Encodereinstellung an, die für diesen Kanal verwendet werden soll. Der einzige derzeit zulässige Wert ist Default720p (Standard).

Weitere Informationen finden Sie unter SystemPreset.

SystemPreset

Default720p gibt an, dass das Video in den folgenden 6 Ebenen codiert werden soll.

BitRate Breite Höhe Max. Bilder/s Profil Name des Ausgabedatenstroms
3500 1280 720 30 High Video_1280x720_3500kbps
2200 960 540 30 High Video_960x540_2200kbps
1350 704 396 30 High Video_704x396_1350kbps
850 512 288 30 High Video_512x288_850kbps
550 384 216 30 High Video_384x216_550kbps
200 340 192 30 High Video_340x192_200kbps

Audio wird mit einer Samplingrate von 44,1 kHz in Stereo-AAC-LC mit 64 KBit/s codiert.

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

VideoStream

Hier wird der Eingabe-Videodatenstrom beschrieben. Wird dieses Feld frei gelassen, wird der Standardwert verwendet. Diese Einstellung ist nur zulässig, wenn das Eingabestreamingprotokoll die Einstellung „RTP (MPEG-TS)“ aufweist.

Name type BESCHREIBUNG
Index Edm.Int1 Mit diesem nullbasierten Index wird angegeben, welcher Eingabe-Videodatenstrom vom Liveencoder im Kanal verarbeitet werden soll. Die Einstellung gilt nur, wenn das Erfassungsstreamingprotokoll die Einstellung „RTP (MPEG-TS)“ aufweist.

Der Standardwert lautet null. Es wird empfohlen, als Eingabe einen Single-Program-Transportdatenstrom (SPTS) zu verwenden. Wenn der Eingabedatenstrom mehrere Programme enthält, wird die Programmkartentabelle (PMT) in der Eingabe vom Liveencoder analysiert. Eingaben, welche die Datenstrom-Typnamen „MPEG-2-Video“ oder „H.264“ aufweisen, werden identifiziert und in der Reihenfolge angeordnet, die in der PMT angegeben ist. Der nullbasierte Index wird zum Abrufen des n-ten Eintrags in dieser Anordnung verwendet.
Name Edm.String Optional. Beschreibendes Tag für diesen Eingabevideostream.

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

AudioStreams

Hier wird der Eingabe-Audiodatenstrom beschrieben. Wird dieses Feld frei gelassen, werden die angegebenen Standardwerte verwendet. Diese Einstellung ist nur zulässig, wenn das Eingabestreamingprotokoll die Einstellung „RTP (MPEG-TS)“ aufweist.

Name type BESCHREIBUNG
Index Edm.Int16 Es wird empfohlen, als Eingabe einen Single-Program-Transportdatenstrom (SPTS) zu verwenden. Wenn der Eingabedatenstrom mehrere Programme enthält, wird die Programmkartentabelle (PMT) in der Eingabe vom Liveencoder analysiert. Eingaben, welche die Datenstrom-Typnamen „MPEG-2 AAC ADTS“, „AC-3 System-A“, „AC-3 System-B“, „MPEG-2 Private PES“, „MPEG-1 Audio“ oder „MPEG-2 Audio“ aufweisen, werden identifiziert und in der Reihenfolge angeordnet, die in der PMT angegeben ist. Der nullbasierte Index wird zum Abrufen des n-ten Eintrags in dieser Anordnung verwendet.
Name Edm.String Optional. Beschreibendes Tag für diesen Eingabeaudiostream.
Language Edm.String Optional. Dies ist die Sprachen-ID des Audiodatenstroms entsprechend ISO 639-2, z. B. „DEU“. Wenn keine ID vorhanden ist, gilt die Standardeinstellung „UND“ (undefiniert).

Es können bis zu 8 Audiodatenstrom-Sätze angegeben werden, wenn die Eingabe an den Kanal als MPEG-2 TS über RTP erfolgt. Zwei Einträge mit dem gleichen Indexwert sind jedoch nicht möglich.

Es können bis zu 8 {Index, Name, Sprache}-Sets angegeben werden, wenn die Eingabe für den Encoder MPEG-2 TS über RTP lautet. Zwei Einträge mit dem gleichen Indexwert sind jedoch nicht möglich. Wenn die Eingabe für den Encoder RTMP oder HTTP (Smooth Streaming) ist, kann sie nur einen Audiostream enthalten.

Filmklappe

Diese Einstellung wird nur unterstützt, wenn die Encoding Type des Kanals auf Standardfestgelegt ist.

Dem Liveencoder im Kanal kann signalisiert werden, zu einem Slatebild zu wechseln. Auch das Beenden eines aktuellen Slates kann signalisiert werden.

Der Liveencoder kann so konfiguriert werden, dass er zu einem Klappenbild wechselt und das eingehende Videosignal in bestimmten Situationen, z. B. während einer Werbeunterbrechung, maskiert. Wird kein solches Slate konfiguriert, so wird das eingehende Videosignal während dieser Werbepause nicht maskiert.

Name type BESCHREIBUNG
InsertSlateOnAdMarker Edm.Bool Wenn diese Einstellung auf "True" festgelegt ist, wird der Liveencoder so konfiguriert, dass während einer Werbeunterbrechung ein Klappenbild eingefügt wird. Der Standardwert lautet „true“.
DefaultSlateAssetId Edm.String Optional. Gibt die Objekt-ID der Media Services-Ressource an, die das Schieferimage enthält. Der Standardwert lautet null.

Vor dem Erstellen des Kanals sollte das Klappenbild mit einer maximalen Auflösung von 1920x1080, JPEG-Format und einer maximalen Größe von 3 MB als dediziertes Medienobjekt hochgeladen werden (in diesem Medienobjekt sollten keine anderen Dateien enthalten sein). Der Dateiname sollte über die Erweiterung JPG verfügen, und diese AssetFile sollte als primäre Datei für das Medienobjekt gekennzeichnet werden. Dieses Asset kann nicht speicherverschlüsselt werden.

Wenn die Standard-Slate-Asset-ID nicht angegeben ist und das Einfügen von Slate auf Anzeigenmarkierung auf true festgelegt ist, wird ein Azure Media Services-Standardimage verwendet, um den Eingabestream zu maskieren.

Ausführlichere Informationen zu diesem Typ und seinen Eigenschaften finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Erstellen von Kanälen

Kanäle können mithilfe einer POST HTTP-Anforderung und durch Angeben von Eigenschaftenwerten erstellt werden.

Methode Anforderungs-URI HTTP-Version
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels> HTTP/1.1

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler's Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/Channels HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Der folgende Anforderungstext zeigt, wie Sie einen Kanal erstellen, der für die Livecodierung aktiviert ist.

{  
   "Id":null,  
   "Name":"testchannel001",     
   "Description":"",  
   "EncoderType":"Standard",  
   "Created":"0001-01-01T00:00:00",  
   "LastModified":"0001-01-01T00:00:00",  
   "State":null,  
   "Input":  
   {  
      "StreamingProtocol":"RTPMPEG2TS",  
      "AccessControl":  
      {  
         "IP":  
         {  
         "Allow":  
            [  
               {  
                  "Name":"testName1",  
                  "Address":"1.1.1.1",  
                  "SubnetPrefixLength":24  
               }  
            ]  
         }  
      },  
      "Endpoints":[]  
   },  
   "Encoding":  
   {  
      "SystemPreset":"Default720p",  
      "IgnoreCea708ClosedCaptions": false,  
      "AdMarkerSource": "Api",
      "VideoStream":  
      {  
         "Index":1,  
         "Name":"Video stream"  
      },  
      "AudioStreams":  
      [  
         {  
            "Index":0,  
            "Name":"English audio stream",  
            "Language":"ENG"  
         },  
         {  
            "Index":1,  
            "Name":"Spanish audio stream",  
            "Language":"SPA"  
         }  
      ]  
   },  
   "EncodingType": "Standard",  
   "Slate":  
   {  
      "InsertOnAdMarker":true,  
      "DefaultSlateAssetId": "nb:cid:UUID:01234567-0123-0123-0123-01234567"  
   },  
   "Preview":  
   {  
      "AccessControl":  
      {  
         "IP":  
         {  
            "Allow":  
            [  
               {  
                  "Name":"testName1",  
                  "Address":"1.1.1.1",  
                  "SubnetPrefixLength":24  
               }  
            ]  
         }  
      },  
      "Endpoints":[]  
   }  
}  
  

Der folgende Anforderungstext zeigt, wie Sie einen Kanal in dem Konto erstellen, der nicht für die Livecodierung aktiviert ist.

{  
"Id":null,  
"Name":"testchannel001",  
"Description":"",  
"Created":"0001-01-01T00:00:00",  
"LastModified":"0001-01-01T00:00:00",  
"State":null,  
"Input":  
   {  
   "KeyFrameInterval":null,  
   "StreamingProtocol":"FragmentedMP4",  
   "AccessControl":  
      {  
         "IP":  
         {  
            "Allow":[{"Name":"testName1","Address":"1.1.1.1","SubnetPrefixLength":24}]  
         }  
      },  
   "Endpoints":[]  
   },  
"Preview":  
   {  
   "AccessControl":  
      {  
         "IP":  
         {  
            "Allow":[{"Name":"testName1","Address":"1.1.1.1","SubnetPrefixLength":24}]  
         }  
      },  
      "Endpoints":[]  
   },  
"Output":  
   {  
   "Hls":  
      {  
         "FragmentsPerSegment":1  
      }  
   },  
"CrossSiteAccessPolicies":  
   {  
      "ClientAccessPolicy":null,  
      "CrossDomainPolicy":null  
   }  
}  

Bei Erfolg wird der Statuscode 202 Accepted mit einer Darstellung der erstellten Entität im Antworttext zurückgegeben.

Der Statuscode 202 Accepted zeigt einen asynchronen Vorgang an, wobei der Vorgangs-ID-Headerwert ebenfalls bereitgestellt wird, der beim Abrufen und Nachverfolgen des Status langer Vorgänge, wie beispielsweise das Starten und Beenden eines Kanals, verwendet wird. Übergeben Sie den Vorgangs-ID-Headerwert an die Vorgangsentität, um den Status abzurufen. Weitere Informationen finden Sie unter Manuelles Abfragen von Long-Running Vorgängen.

Starten von Kanälen

Methode Anforderungs-URI HTTP-Version
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Start HTTP/1.1

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler's Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/Start HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Bei Erfolg wird der Statuscode 202 Accepted zurückgegeben. Der Statuscode 202 Accepted zeigt einen asynchronen Vorgang an, wobei der Vorgangs-ID-Headerwert ebenfalls bereitgestellt wird, der beim Abrufen und Nachverfolgen des Status langer Vorgänge, wie beispielsweise das Starten und Beenden eines Kanals, verwendet wird. Übergeben Sie den Vorgangs-ID-Headerwert an die Vorgangsentität, um den Status abzurufen. Weitere Informationen finden Sie unter Manuelles Abfragen von Long-Running Vorgängen.

Beenden von Kanälen

Ein Kanal kann nur beendet werden, wenn sein Running-Status und alle Programme auf dem Kanal beendet wurden.

Methode Anforderungs-URI HTTP-Version
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Stop HTTP/1.1

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler's Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/Stop HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Bei Erfolg wird der Statuscode 202 Accepted zurückgegeben. Der Statuscode 202 Accepted zeigt einen asynchronen Vorgang an, wobei der Vorgangs-ID-Headerwert ebenfalls bereitgestellt wird, der beim Abrufen und Nachverfolgen des Status langer Vorgänge, wie beispielsweise das Starten und Beenden eines Kanals, verwendet wird. Übergeben Sie den Vorgangs-ID-Headerwert an die Vorgangsentität, um den Status abzurufen. Weitere Informationen finden Sie unter Manuelles Abfragen von Long-Running Vorgängen.

Auflisten von Kanälen

Kanäle können mithilfe einer GET HTTP-Anforderung abgerufen werden.

Methode Anforderungs-URI HTTP-Version
GET Abrufen aller Kanäle:

<https:// accountname.restv2>.<location.media.azure.net/api/Channels>

Rufen Sie einen angegebenen Kanal ab.

<https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')
HTTP/1.1

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler es Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

GET https://testrest.cloudapp.net/api/Channels HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Bei erfolgreicher Ausführung wird der Code 200 OK status und eine Liste aller Kanäle zurückgegeben, die in Ihrem Media Services-Konto erstellt wurden.

Zurücksetzen von Kanälen

Setzt den während des Streamings einer Livepräsentation aufrechterhaltenen Laufzeitkanalstatus zurück und ermöglicht die Wiederverwendung eines Kanals im Falle von Präsentationszurücksetzungen oder erneuter Encoderkonfiguration. Beenden Sie alle Programme, bevor Sie "Reset" aufrufen. "Reset" kann auf einem Kanal aufgerufen werden, der sich in einem aktuell ausgeführten Status befindet.

Methode Anforderungs-URI HTTP-Version
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Reset HTTP/1.1

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler es Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/Reset HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Bei Erfolg wird der Statuscode 202 Accepted zurückgegeben. Der Statuscode 202 Accepted zeigt einen asynchronen Vorgang an, wobei der Vorgangs-ID-Headerwert ebenfalls bereitgestellt wird, der beim Abrufen und Nachverfolgen des Status langer Vorgänge, wie beispielsweise das Starten und Beenden eines Kanals, verwendet wird. Übergeben Sie den Vorgangs-ID-Headerwert an die Vorgangsentität, um den Status abzurufen. Weitere Informationen finden Sie unter Manuelles Abrufen von Long-Running Vorgängen.

Aktualisieren von Kanälen

Aktualisiert Eigenschaften für einen vorhandenen Kanal. Der Kanal muss den Status Stopped aufweisen.

Methode Anforderungs-URI HTTP-Version
PATCH/PUT/MERGE

Weitere Informationen zu diesen Vorgängen finden Sie unter PATCH, PUT, MERGE.
<https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid') HTTP/1.1

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler es Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

PATCH https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393') HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Anforderungstext:

"Encoding":{"IgnoreCea708ClosedCaptions": true}  

Wird die Aktualisierung synchron beendet, wird der Statuscode 204 No Content zurückgegeben; anderfalls wird der Statuscode 202 Accepted zurückgegeben. Der Statuscode 202 Accepted zeigt einen asynchronen Vorgang an, wobei der Vorgangs-ID-Headerwert ebenfalls bereitgestellt wird, der beim Abrufen und Nachverfolgen des Status langer Vorgänge, wie beispielsweise das Starten und Beenden eines Kanals, verwendet wird. Übergeben Sie den Vorgangs-ID-Headerwert an die Vorgangsentität, um den Status abzurufen. Weitere Informationen finden Sie unter Manuelles Abrufen von Long-Running Vorgängen.

Ankündigung starten

Der Liveencoder kann signalisiert werden, eine Ankündigung oder kommerzielle Unterbrechung zu starten, indem eine POST-HTTP-Anforderung verwendet wird und Eigenschaftswerte von in der Entität StartAdvertisement-Entität im Text der Anforderung angegeben werden.

Methode Anforderungs-URI HTTP-Version
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/StartAdvertisement HTTP/1.1

Weitere Informationen finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

StartAdvertisement-Entität

Diese Entität stellt die Start-of-advertisement-API dar – d. h., einen asynchronen Aufruf des Liveencoders, einen Werbespot oder Werbeblöcke in den Ausgabestream einzufügen.

Weitere Informationen finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
duration Edm.Duration Dies ist die Dauer der Werbepause in Sekunden. Es muss sich um einen positiven Wert ungleich null handeln, damit die Werbepause gestartet werden kann. Wird eine Werbepause ausgeführt, und die Dauer für die CueId der aktuellen Werbepause lautet null, so wird die Werbepause abgebrochen.
cueId Edm.Int Eine eindeutige ID für den Werbeblock. Sie wird von der Downstreamanwendungen verwendet, um die geeigneten Aktionen auszuführen. Es muss sich um eine positive ganze Zahl handeln.
showSlate Edm.Bool Optional. Weist den Liveencoder innerhalb des Kanals an, während des Werbeblocks zum Standardklappenbild zu wechseln (und den eingehenden Videofeed zu maskieren). Der Standardwert ist "false".

Das verwendete Image ist das Image, das zum Zeitpunkt der Kanalerstellung über die Standardmäßige Slate-Objekt-ID-Eigenschaft angegeben wurde.

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler es Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/StartAdvertisement HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Text

{  
   "duration":"PT45S",  
   "cueId":"67520935",  
   "showSlate":"true"  
}  
  

Bei Erfolg wird der Statuscode 202 Accepted zurückgegeben.

Ankündigung beenden

Der Liveencoder kann angewiesen werden, einen laufenden Werbespot oder Werbeblock mit einer POST HTTP-Anforderung zu beenden.

Methode Anforderungs-URI HTTP-Version
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/EndAdvertisement HTTP/1.1

Dieser Aufruf sollte nur bei einem laufenden Werbespot ausgeführt werden.

Weitere Informationen finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler es Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/EndAdvertisement HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Bei Erfolg wird der Statuscode 202 Accepted zurückgegeben.

Slate anzeigen

Weist den Liveencoder innerhalb des Kanals an, während des Werbeblocks zum Standardklappenbild zu wechseln (und den eingehenden Videofeed zu maskieren). Der Standardwert ist "false". Das verwendete Image ist das Image, das zum Zeitpunkt der Kanalerstellung über die Standardmäßige Slate-Objekt-ID-Eigenschaft angegeben wurde.

Verwenden Sie die Eigenschaften der ShowSlate-Entität im Text der HTTP-Anforderung.

Methode Anforderungs-URI HTTP-Version
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/ShowSlate HTTP/1.1

Weitere Informationen finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

ShowSlate-Entität

Weitere Informationen finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Name type BESCHREIBUNG
duration Edm.Duration Die Dauer der Klappe in Sekunden. Es muss sich um einen positiven Wert ungleich null handeln, damit das Slate gestartet werden kann. Wenn bei einer laufenden Klappe die Dauer 0 (null) angegeben ist, wird die laufende Klappe beendet.
assetId Edm.String Gibt die Medienobjekt-ID des Media Services-Medienobjekts an, das das Slate-Image enthält.

Vor dem Erstellen des Kanals sollte das Klappenbild mit einer Auflösung von 1920x1080, JPEG-Format und einer maximalen Größe von 3 MB als dediziertes Medienobjekt hochgeladen werden (in diesem Medienobjekt sollten keine anderen Dateien enthalten sein).

Der Encoder kann angewiesen werden, zu einem beliebigen Klappenbild zu wechseln (und nicht nur zu dem, das während der Kanalerstellung mit der DefaultSlateAssetId-Eigenschaft angegeben wurde).

Wenn die DefaultSlateAssetId-Eigenschaft angegeben und AssetId nicht angegeben ist, wird das DefaultSlateAssetId-Bild verwendet, um den Eingabestream zu maskieren. Weitere Informationen finden Sie unter Slate.

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler es Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/ShowSlate HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Text

{  
   "duration":"PT45S",  
   "assetId":"nb:cid:UUID:01234567-ABCD-ABCD-EFEF-01234567"  
}  
  

Bei Erfolg wird der Statuscode 202 Accepted zurückgegeben.

Slate ausblenden

Der Liveencoder kann angewiesen werden, eine laufende Klappe mit einer POST HTTP-Anforderung zu beenden.

Methode Anforderungs-URI HTTP-Version
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/HideSlate HTTP/1.1

Dieser Aufruf sollte nur bei einer laufenden Klappe ausgeführt werden.

Weitere Informationen finden Sie unter Übersicht über Kanäle, die für die Livecodierung aktiviert sind.

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler es Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393')/HideSlate HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Bei Erfolg wird der Statuscode 202 Accepted zurückgegeben. Der Statuscode 202 Accepted zeigt einen asynchronen Vorgang an, wobei der Vorgangs-ID-Headerwert ebenfalls bereitgestellt wird, der beim Abrufen und Nachverfolgen des Status langer Vorgänge, wie beispielsweise das Starten und Beenden eines Kanals, verwendet wird. Übergeben Sie den Vorgangs-ID-Headerwert an die Vorgangsentität, um den Status abzurufen. Weitere Informationen finden Sie unter Manuelles Abrufen von Long-Running Vorgängen.

Löschen von Kanälen

Löschen Sie einen Kanal.

Methode Anforderungs-URI HTTP-Version
Delete <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid') HTTP/1.1

Beispiel für eine Anforderung

Sie können das folgende Beispiel auf der Registerkarte "Fiddler es Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

DELETE https://testrest.cloudapp.net/api/Channels('nb:chid:UUID:2c30f424-ab90-40c6-ba41-52a993e9d393') HTTP/1.1  
DataServiceVersion: 3.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json;odata=minimalmetadata  
Accept-Charset: UTF-8  
x-ms-version: 2.19  
Content-Type: application/json;odata=minimalmetadata  
Host: <host URI>  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
  

Bei Erfolg wird der Statuscode 202 Accepted zurückgegeben. Der Statuscode 202 Accepted zeigt einen asynchronen Vorgang an, wobei der Vorgangs-ID-Headerwert ebenfalls bereitgestellt wird, der beim Abrufen und Nachverfolgen des Status langer Vorgänge, wie beispielsweise das Starten und Beenden eines Kanals, verwendet wird. Übergeben Sie den Vorgangs-ID-Headerwert an die Vorgangsentität, um den Status abzurufen. Weitere Informationen finden Sie unter Manuelles Abrufen von Long-Running Vorgängen.

Weitere Informationen

Bereitstellen von Livestreaming mit Azure Media Services
Program