Kanał
W usłudze Azure Media Services (AMS) jednostka Kanał reprezentuje potok przetwarzania zawartości transmisji strumieniowej na żywo. Kanał odbiera strumienie wejściowe na żywo na jeden z dwóch sposobów:
Lokalny koder na żywo wysyła do kanału wiele bitów
RTMP
lubSmooth Streaming
(fragmentowany plik MP4). Można użyć następujących koderów na żywo, które wysyłają pliki Smooth Streaming o różnych szybkościach transmisji bitów: MediaExcel, Imagine Communications, Ateme, Envivio, Cisco i Elemental. Następujące kodery na żywo wysyłają pliki RTMP: Adobe Flash Live Encoder, Haivision, Telestream Wirecast, Teradek i Tricaster. Pozyskane strumienie przechodzą przez kanały bez dalszego przetwarzania. Po odebraniu żądania usługa Media Services dostarcza strumień do klientów.Do usługi Media Services jest wysyłany
Channel
pojedynczy strumień o szybkości transmisji bitów (w jednym z następujących formatów:RTP
MPEG-TS),RTMP
lubSmooth Streaming
(fragmentowany MP4)). NastępnieChannel
wykonuje kodowanie na żywo przychodzącego strumienia o pojedynczej szybkości transmisji bitów do strumienia wideo o wielu szybkościach transmisji bitów (adaptacyjnej). Po odebraniu żądania usługa Media Services dostarcza strumień do klientów.
Począwszy od wersji Media Services 2.10, podczas tworzenia kanału możesz określić, w jaki sposób chcesz, aby kanał odbierał strumień wejściowy i czy chcesz, aby kanał wykonywał kodowanie na żywo strumienia. Dostępne są dwie opcje:
None
— Określ tę wartość, jeśli planujesz użyć lokalnego kodera na żywo, który będzie wyprowadzać strumień o wielu szybkościach transmisji bitów. W takim przypadku strumień przychodzący przekazywany do danych wyjściowych bez kodowania. Jest to zachowanie kanału przed wydaniem wersji 2.10. Aby uzyskać bardziej szczegółowe informacje na temat pracy z kanałami tego typu, zobacz Praca z kanałami, które odbierają strumień na żywo o wielu szybkościach transmisji bitów z koderów lokalnych.Standard
— Jeśli planujesz zakodować strumień na żywo o pojedynczej szybkości transmisji bitów za pomocą usługi Media Services, wybierz tę wartość.Uwaga
Należy pamiętać, że istnieje wpływ rozliczeń na kodowanie na żywo i należy pamiętać, że pozostawienie kanału kodowania na żywo w stanie "Uruchomione" spowoduje naliczanie opłat za rozliczenia. Zaleca się natychmiastowe zatrzymanie uruchomionych kanałów po zakończeniu wydarzenia transmisji strumieniowej na żywo, aby uniknąć dodatkowych opłat godzinowych. Aby uzyskać więcej informacji, zobacz temat Praca z kanałami obsługującymi funkcję Live Encoding w usłudze Azure Media Services.
Aby uzyskać więcej informacji na temat transmisji strumieniowej na żywo i zarządzania kanałami, zobacz Dostarczanie transmisji strumieniowej na żywo za pomocą usługi Azure Media Services.
Ważne
Podczas uzyskiwania dostępu do jednostek w usłudze Media Services należy ustawić określone pola nagłówka i wartości w żądaniach HTTP.
Aby uzyskać więcej informacji, zobacz Konfigurowanie tworzenia interfejsu API REST usługi Media Services i nawiązywanie połączenia z usługą Media Services przy użyciu interfejsu API REST usługi Media Services.
Ten temat zawiera omówienie Channel
jednostki, a także pokazuje, jak wykonywać różne operacje za pomocą interfejsu API REST usługi Media Services.
Jednostka kanału
Jednostka Channel
zawiera następujące właściwości.
Właściwość | Typ | Opis |
---|---|---|
Id Tylko do odczytu. Ustaw przez usługę Media Services. |
Edm.String | Identyfikator kanału przypisany podczas tworzenia. Format to: nb:chid:UUID:<GUID>. |
Name |
Edm.String | Nazwa kanału. 1. Musi być unikatowa na koncie usługi Media Services. 2. Maksymalna długość = 32 znaki. 3. Nie można zawierać spacji. 4. Łączniki i znaki alfanumeryczne. 5. Nie można rozpocząć ani zakończyć łącznikiem. |
Created Tylko do odczytu. Ustaw przez usługę Media Services. |
Edm.DateTime | Wartość daty/godziny UTC wskazująca godzinę utworzenia. |
Description |
Edm.String | Opis podany przez użytkownika. Maksymalna długość to 256 znaków. |
LastModified Tylko do odczytu. Ustaw przez usługę Media Services. |
Edm.DateTime | Data i godzina ostatniej aktualizacji kanału. |
State Tylko do odczytu. Ustaw przez usługę Media Services. |
Edm.String | Bieżący stan kanału. Możliwe wartości to: -Zatrzymany. Jest to początkowy stan kanału po jego utworzeniu. W tym stanie właściwości kanału można zaktualizować, ale przesyłanie strumieniowe nie jest dozwolone. -Zaczynając. Kanał jest uruchamiany. W tym stanie nie są dozwolone żadne aktualizacje ani przesyłanie strumieniowe. Jeśli wystąpi błąd, kanał powróci do stanu Zatrzymany . -Uruchomiona. Kanał może przetwarzać strumienie na żywo. -Zatrzymanie. Kanał jest zatrzymywany. W tym stanie nie są dozwolone żadne aktualizacje ani przesyłanie strumieniowe. -Usuwanie. Kanał jest usuwany. W tym stanie nie są dozwolone żadne aktualizacje ani przesyłanie strumieniowe. |
Input |
ChannelInput ComplexType | Ustawienia danych wejściowych (pozyskiwania) kanału. |
Output |
ChannelOutput ComplexType | Ustawienia danych wyjściowych kanału. |
Preview |
Typ złożony channelPreview | Ustawienia podglądu kanału. |
CrossSiteAccessPolicies |
CrossSiteAccessPolicies | Zasady dostępu między witrynami. |
Programs Tylko do odczytu. Ustaw przez usługę Media Services. |
Kolekcja programóws. | Odwołanie do kolekcji programów skojarzonych z kanałem. |
EncodingType |
Edm.String |
Optional . Opisuje konfigurację kanału. Dozwolone wartości to:- None — Jest to wartość domyślna. Po wybraniu tej wartości strumień przychodzący przekazywany do danych wyjściowych bez żadnego kodowania (jest to zachowanie kanału przed wydaniem wersji 2.10).- Standard — Przychodzący strumień o pojedynczej szybkości transmisji bitów jest wysyłany do kanału i transkodowany do strumienia o wielu szybkościach transmisji bitów przy użyciu ustawień wstępnych systemu |
Encoding |
Kodowanie typu złożonego | Ustawienia kodera na żywo platformy Azure. |
Slate |
Łupek | To ustawienie jest obsługiwane tylko wtedy, gdy Encoding Type dla kanału ustawiono wartość Standard .Koder na żywo w kanale można zasygnalizować, aby przełączyć się na obraz łupka. Można również zasygnalizować zakończenie trwającego łupka. Koder na żywo można skonfigurować tak, aby przełączyć się na obraz łupkowy i zamaskować przychodzący sygnał wideo w pewnych sytuacjach — na przykład podczas przerwy reklamowej. Jeśli taki łupek nie jest skonfigurowany, wejściowe wideo nie jest maskowane podczas tej przerwy reklamowej. |
ChannelInput ComplexType
Nazwa | Typ | Opis |
---|---|---|
KeyFrameInterval |
Edm.Time | Ta wartość jest ignorowana, jeśli EncoderType jest ustawiona na Standard wartość .W przypadku używania lokalnego kodera na żywo do generowania strumienia o wielu szybkościach transmisji bitów interwał ramki klucza określa czas trwania protokołu GOP (używany przez ten koder zewnętrzny). Po odebraniu tego strumienia przychodzącego przez kanał możesz dostarczyć strumień na żywo do aplikacji odtwarzania klientów w dowolnym z następujących formatów: Smooth Streaming, DASH i HLS. Podczas transmisji strumieniowej na żywo usługa HLS jest zawsze pakowana dynamicznie. Domyślnie usługa Media Services automatycznie oblicza współczynnik pakowania segmentu HLS (fragmenty na segment) na podstawie interwału klatek kluczowych, nazywanych również grupą obrazów — GOP odbieraną z kodera na żywo. |
StreamingProtocol Tylko do odczytu. |
Edm.String | Po ustawieniu typu kodera można ustawić protokół pozyskiwania. Jeśli ustawiono Encoder Type None wartość , prawidłowe opcje to:- Pofragmentowana szybkość transmisji bitów MP4 (Smooth Streaming) - RtMP o wielu szybkościach transmisji bitów Encoder Type Jeśli ustawiono wartość None , jest ona prawidłowa, ale niepożądane, dla pojedynczej szybkości transmisji bitów RTMP lub Smooth Streaming transmisji strumieniowej na żywo do wysłania. Kanał nie wykonuje żadnego przetwarzania za pomocą strumienia, więc będzie przekazywany, ale aplikacje klienckie otrzymają strumień o pojedynczej szybkości transmisji bitów.Jeśli ustawiono Encoder Type Standard wartość , prawidłowe opcje to:1. Pojedyncza szybkość transmisji bitów pofragmentowana MP4 (Smooth Streaming) 2. Pojedyncza szybkość transmisji bitów RTMP 3. RTP (MPEG-TS): MPEG-2 Transport Stream over RTP.3. |
AccessControl |
ChannelInputAccessControl ComplexType | Ustawienia kontroli dostępu wejściowego kanału. |
Endpoints Tylko do odczytu. |
Typ złożony punktu końcowego kanału | Punkty końcowe danych wejściowych kanału. Kanał udostępnia wejściowe punkty końcowe (adresy URL pozyskiwania), których następnie używasz do pozyskiwania strumienia na żywo. Kanał odbiera strumienie wejściowe na żywo i udostępnia strumienie wyjściowe do przesyłania strumieniowego za pośrednictwem co najmniej jednego punktu końcowego przesyłania strumieniowego. |
Typ złożony channelPreview
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone dla kodowania na żywo.
Nazwa | Typ | Opis |
---|---|---|
AccessControl |
ChannelPreviewAccessControl ComplexType | Ustawienia kontroli dostępu w wersji zapoznawczej kanału. |
Endpoints Tylko do odczytu. |
Typ złożony punktu końcowego kanału | Punkty końcowe podglądu kanału. |
ChannelInputAccessControl ComplexType
Nazwa | Typ | Opis |
---|---|---|
IP |
IPAccessControl | Adresy IP, które mogą łączyć się z punktami końcowymi wejściowymi kanału. Adresy IP muszą być w jednym z następujących formatów: Adres IPV4 z 4 liczbami, zakres adresów CIDR. |
ChannelPreviewAccessControl ComplexType
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone dla kodowania na żywo.
Nazwa | Typ | Opis |
---|---|---|
IP |
IPAccessControl | Adresy IP, które mogą łączyć się z punktami końcowymi wejściowymi kanału. Adresy IP muszą być w jednym z następujących formatów: Adres IPV4 z 4 liczbami, zakres adresów CIDR |
IPAccessControl
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone dla kodowania na żywo.
Nazwa | Typ | Opis |
---|---|---|
Zezwalaj | IPRange ComplexType | Adresy IP, które mogą łączyć się z punktami końcowymi wejściowymi kanału. Uwaga: Ustawienie tej wartości na wartość null umożliwia nawiązywanie połączenia ze wszystkimi adresami źródłowymi IP. Ustawienie go na pusty ciąg ("") nie pozwala nikomu nawiązać połączenia. |
IPRange ComplexType
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone dla kodowania na żywo.
Nazwa | Typ | Opis |
---|---|---|
Name |
Edm.String | Przyjazna nazwa tego zakresu adresów IP. |
Address |
Edm.String | Podstawowy adres IP reprezentacji podsieci (na przykład:192.168.0.1). |
SubnetPrefixLength |
Edm.Int32 | Liczba znaczących bitów maski podsieci (na przykład w następującym adresie IP 192.168.0.1/24, 24 reprezentuje liczbę znaczących bitów). |
Typ złożony punktu końcowego kanału
Nazwa | Typ | Opis |
---|---|---|
Protocol |
Edm.String | Protokół punktu końcowego przesyłania strumieniowego kanału. |
Url |
Edm.String | Adres URL punktu końcowego przesyłania strumieniowego kanału. |
ChannelOutput ComplexType
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone dla kodowania na żywo
Nazwa | Typ | Opis |
---|---|---|
Hls |
ChannelOutputHls ComplexType | Ustawienia specyficzne dla protokołu HLS. |
ChannelOutputHls ComplexType
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
Nazwa | Typ | Opis |
---|---|---|
FragmentsPerSegment |
Edm.Int16 | Ilość fragmentów na segment HTTP Live Streaming (HLS). |
Kodowanie typu złożonego
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
Nazwa | Typ | Opis |
---|---|---|
AdMarkerSource |
Edm.String | Możesz określić źródło sygnałów znaczników reklamy. Wartość domyślna to Api , która wskazuje, że koder na żywo w kanale powinien nasłuchiwać asynchronicznego Ad Marker API . Inną prawidłową opcją jest Scte35 (dozwolona tylko wtedy, gdy protokół przesyłania strumieniowego pozyskiwania jest ustawiony na RTP (MPEG-TS). Scte35 Wartość Po określeniu, koder przeanalizuje SCTE-35 sygnały z wejściowego strumienia RTP (MPEG-TS). |
IgnoreCea708ClosedCaptions |
Edm.bool |
Optional . Opcjonalna flaga, która nakazuje koderowi na żywo ignorowanie wszystkich danych podpisów CEA 708 osadzonych w przychodzącym filmie wideo. Gdy flaga ma wartość false (wartość domyślna), koder wykryje i ponownie wstawi dane CEA 708 do wyjściowych strumieni wideo. |
VideoStream |
VideoStream |
Optional . Opisuje wejściowy strumień wideo. Jeśli to pole nie zostanie określone, zostanie użyta wartość domyślna. To ustawienie jest dozwolone tylko wtedy, gdy dla protokołu przesyłania strumieniowego danych wejściowych ustawiono protokół RTP (MPEG-TS). |
AudioStreams |
Strumienie audio |
Optional . Opisuje wejściowe strumienie audio. Jeśli to pole nie zostanie określone, zostaną zastosowane określone wartości domyślne. To ustawienie jest dozwolone tylko wtedy, gdy dla protokołu przesyłania strumieniowego danych wejściowych ustawiono protokół RTP (MPEG-TS). |
SystemPreset |
Edm.String | Określa ustawienie wstępne kodera, które ma być używane dla tego kanału. Obecnie jedyną dozwoloną wartością jest Default720p (wartość domyślna).Aby uzyskać więcej informacji, zobacz SystemPreset |
SystemPreset
Default720p
określa kodowanie wideo do następujących 6 warstw.
Bitrate | Width | Height | MaxFPS | Profil | Nazwa strumienia wyjściowego |
---|---|---|---|---|---|
3500 | 1280 | 720 | 30 | Wys. | Video_1280x720_3500kbps |
2200 | 960 | 540 | 30 | Wys. | Video_960x540_2200kbps |
1350 | 704 | 396 | 30 | Wys. | Video_704x396_1350kbps |
850 | 512 | 288 | 30 | Wys. | Video_512x288_850kbps |
550 | 384 | 216 | 30 | Wys. | Video_384x216_550kbps |
200 | 340 | 192 | 30 | Wys. | Video_340x192_200kbps |
Dźwięk jest zakodowany w stereo AAC-LC z szybkością próbkowania wynoszącą 44,1 kHz.
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
VideoStream
Opisuje wejściowy strumień wideo. Jeśli to pole nie zostanie określone, zostanie użyta wartość domyślna. To ustawienie jest dozwolone tylko wtedy, gdy dla protokołu przesyłania strumieniowego danych wejściowych ustawiono protokół RTP (MPEG-TS).
Nazwa | Typ | Opis |
---|---|---|
Index |
Edm.Int1 | Indeks oparty na zerze określający, który wejściowy strumień wideo powinien być przetwarzany przez koder na żywo w kanale. To ustawienie ma zastosowanie tylko wtedy, gdy protokół przesyłania strumieniowego pozyskiwania to RTP (MPEG-TS). Wartość domyślna to zero. Zaleca się wysyłanie w jednym programie strumienia transportu (SPTS). Jeśli strumień wejściowy zawiera wiele programów, koder na żywo analizuje tabelę mapy programu (PMT) w danych wejściowych, identyfikuje dane wejściowe, które mają nazwę typu strumienia MPEG-2 Video lub H.264 i rozmieszcza je w kolejności określonej w PMT. Indeks oparty na zerze jest następnie używany do pobrania n-ty wpisu w tym układzie. |
Name |
Edm.String |
Optional . Tag opisowy dla tego wejściowego strumienia wideo. |
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
Strumienie audio
Opisuje wejściowe strumienie audio. Jeśli to pole nie zostanie określone, zostaną zastosowane wartości domyślne. To ustawienie jest dozwolone tylko wtedy, gdy protokół przesyłania strumieniowego danych wejściowych ma wartość RTP (MPEG-TS).
Nazwa | Typ | Opis |
---|---|---|
Index |
Edm.Int16 | Zaleca się wysyłanie w jednym programie strumienia transportu (SPTS). Jeśli strumień wejściowy zawiera wiele programów, koder na żywo w kanale analizuje tabelę mapowania programu (PMT) w danych wejściowych, identyfikuje dane wejściowe, które mają nazwę typu strumienia MPEG-2 AAC ADTS lub AC-3 System-A lub AC-3 System-B lub MPEG-2 Private PES lub MPEG-1 Audio lub MPEG-2 Audio, i rozmieszcza je w kolejności określonej w PMT. Indeks oparty na zerach jest następnie używany do odbioru n-th wpisu w tym układzie. |
Name |
Edm.String |
Optional . Opisowy tag dla tego wejściowego strumienia audio. |
Language |
Edm.String |
Optional . Identyfikator języka strumienia audio zgodny z normą ISO 639-2, taką jak ENG. Jeśli nie istnieje, wartość domyślna to UND (niezdefiniowana).Jeśli wejście do kanału to MPEG-2 TS za pośrednictwem protokołu RTP, może istnieć maksymalnie 8 zestawów strumieni audio. Nie ma jednak dwóch wpisów o tej samej wartości indeksu. |
Może istnieć maksymalnie 8 zestawów {Index, Name, Language} określonych, jeśli dane wejściowe do kodera to MPEG-2 TS over RTP. Nie ma jednak dwóch wpisów o tej samej wartości indeksu. Jeśli dane wejściowe do kodera to RTMP lub HTTP (Smooth Streaming), w danych wejściowych może znajdować się tylko jeden strumień audio.
Łupek
To ustawienie jest obsługiwane tylko wtedy, gdy Encoding Type
dla kanału ustawiono wartość Standard
.
Koder na żywo w kanale można zasygnalizować, aby przełączyć się na obraz łupka. Można również zasygnalizować zakończenie trwającego łupka.
Koder na żywo można skonfigurować tak, aby przełączyć się na obraz łupkowy i zamaskować przychodzący sygnał wideo w pewnych sytuacjach — na przykład podczas przerwy reklamowej. Jeśli taki łupek nie jest skonfigurowany, wejściowe wideo nie jest maskowane podczas tej przerwy reklamowej.
Nazwa | Typ | Opis |
---|---|---|
InsertSlateOnAdMarker |
Edm.Bool | Po ustawieniu wartości True to ustawienie konfiguruje koder na żywo, aby wstawić obraz łupka podczas przerwy w reklamie. Wartością domyślną jest true. |
DefaultSlateAssetId |
Edm.String |
Optional . Określa identyfikator zasobu usługi Media Services, który zawiera obraz łupka. Wartość domyślna to null.Przed utworzeniem kanału obraz łupkowy o maksymalnej rozdzielczości 1920x1080 w formacie JPEG i rozmiarze co najwyżej 3 Mb/s należy przekazać jako dedykowany zasób (żadne inne pliki nie powinny znajdować się w tym zasobie). Nazwa pliku powinna mieć rozszerzenie *.jpg, a ten plik AssetFile powinien być oznaczony jako plik podstawowy dla tego zasobu. Nie można zaszyfrować tego zasobu. Jeśli nie określono domyślnego identyfikatora zasobu łupka, a wstawianie łupka na znaczniku reklamy ma wartość true, domyślny obraz usługi Azure Media Services będzie używany do maskowania strumienia wejściowego. |
Aby uzyskać bardziej szczegółowe informacje o tym typie i jego właściwościach, zobacz Omówienie kanałów, które są włączone dla kodowania na żywo.
Tworzenie kanałów
Kanały można tworzyć przy użyciu żądania HTTP POST i określania wartości właściwości.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels> | HTTP/1.1 |
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
W poniższej treści żądania pokazano, jak utworzyć kanał, który jest włączony do kodowania na żywo.
{
"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":[]
}
}
W poniższej treści żądania pokazano, jak utworzyć kanał na koncie, który nie jest włączony do kodowania na żywo.
{
"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
}
}
W przypadku powodzenia kod stanu 202 Zaakceptowane jest zwracany wraz z reprezentacją utworzonej jednostki w treści odpowiedzi.
Kod stanu zaakceptowany w 202 r. wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie kanału. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.
Kanały początkowe
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Start | HTTP/1.1 |
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 . Kod stanu zaakceptowany w 202 r. wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie kanału. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.
Zatrzymywanie kanałów
Kanał można zatrzymać tylko wtedy, gdy znajduje się w stanie Uruchomiono , a wszystkie programy w kanale zostały zatrzymane.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Stop | HTTP/1.1 |
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 . Kod stanu zaakceptowany w 202 r. wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie kanału. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.
Listy kanałów
Kanały można pobrać przy użyciu żądania HTTP GET.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
GET | Pobierz wszystkie kanały: <https:// accountname.restv2>.<location.media.azure.net/api/Channels> Pobierz określony kanał. <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid') |
HTTP/1.1 |
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
W przypadku powodzenia ta operacja zwraca kod stanu OK 200 OK i listę wszystkich kanałów utworzonych na koncie usługi Media Services.
Resetowanie kanałów
Resetuje stan kanału uruchomieniowego utrzymywany podczas przesyłania strumieniowego prezentacji na żywo i umożliwia ponowne użycie kanału w przypadku resetowania prezentacji lub ponownej konfiguracji kodera. Zatrzymaj wszystkie programy przed wywołaniem polecenia Reset. Resetowanie można wywołać w kanale, który jest w stanie uruchomienia.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Reset | HTTP/1.1 |
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 . Kod stanu zaakceptowany w 202 r. wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie kanału. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.
Aktualizowanie kanałów
Aktualizacje właściwości w istniejącym kanale. Kanał musi być w stanie Zatrzymany .
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
PATCH/PUT/MERGE Aby uzyskać więcej informacji na temat tych operacji, zobacz PATCH/PUT/MERGE. |
<https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid') | HTTP/1.1 |
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
Treść żądania:
"Encoding":{"IgnoreCea708ClosedCaptions": true}
Jeśli aktualizacja zostanie ukończona synchronicznie, zwraca kod stanu 204 Bez zawartości ; w przeciwnym razie zwraca kod stanu 202 Zaakceptowane . Kod stanu zaakceptowany w 202 r. wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie kanału. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.
Rozpocznij anonsowanie
Koder na żywo może być sygnalizowany, aby rozpocząć anonsowanie lub przerwę komercyjną przy użyciu żądania HTTP POST i określić wartości właściwości w jednostce jednostki StartAdvertisement w treści żądania.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/StartAdvertisement | HTTP/1.1 |
Aby uzyskać więcej informacji, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
Jednostka StartAdvertisement
Ta jednostka reprezentuje interfejs API rozpoczęcia reklamy — jest to asynchroniczne wywołanie kodera na żywo w celu wstawienia anonsu lub przerw komercyjnych w strumieniu wyjściowym.
Aby uzyskać więcej informacji, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
Nazwa | Typ | Opis |
---|---|---|
duration |
Edm.Duration | Czas trwania przerwy handlowej w sekundach. Musi to być wartość niezerowa dodatnia, aby rozpocząć przerwę handlową. Gdy przerwa komercyjna jest w toku, a czas trwania jest ustawiony na zero z CueId pasującym do trwającej przerwy komercyjnej, to przerwa zostanie anulowana. |
cueId |
Edm.Int | Unikatowy identyfikator przerwania komercyjnego, który ma być używany przez aplikację podrzędną do podejmowania odpowiednich działań. Musi być dodatnią liczbą całkowitą. |
showSlate |
Edm.Bool |
Optional . Wskazuje koder na żywo w kanale, który musi przełączyć się do domyślnego obrazu łupka podczas przerwy komercyjnej (i maskować przychodzące źródło wideo). Wartość domyślna to false.Użyty obraz będzie określony za pośrednictwem domyślnej właściwości identyfikatora zasobu łupka podczas tworzenia kanału. |
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
Treść
{
"duration":"PT45S",
"cueId":"67520935",
"showSlate":"true"
}
W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 .
Anons końcowy
Koder na żywo może być sygnalizowany, aby zakończyć trwaną anons lub przerwę komercyjną przy użyciu żądania HTTP POST.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/EndAdvertisement | HTTP/1.1 |
To wywołanie powinno być wywoływane tylko wtedy, gdy istnieje trwa anons.
Aby uzyskać więcej informacji, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 .
Pokaż łupek
Wskazuje koder na żywo w kanale, który musi przełączyć się do domyślnego obrazu łupka podczas przerwy komercyjnej (i maskować przychodzące źródło wideo). Wartość domyślna to false. Użyty obraz będzie określony za pośrednictwem domyślnej właściwości identyfikatora zasobu łupka podczas tworzenia kanału.
Użyj właściwości jednostki ShowSlate w treści żądania HTTP.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/ShowSlate | HTTP/1.1 |
Aby uzyskać więcej informacji, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
ShowSlate, jednostka
Aby uzyskać więcej informacji, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
Nazwa | Typ | Opis |
---|---|---|
duration |
Edm.Duration | Czas trwania łupka w sekundach. Musi to być wartość niezerowa dodatnia, aby rozpocząć łupek. Jeśli istnieje łupek on-going, a czas trwania zera jest określony, to będzie on-going łupek zostanie zakończony. |
assetId |
Edm.String | Określa identyfikator zasobu usługi Media Services, który zawiera obraz łupka. Przed utworzeniem kanału obraz łupkowy o rozdzielczości 1920x1080 w formacie JPEG i rozmiarze co najwyżej 3 Mb/s należy przekazać jako dedykowany zasób (żadne inne pliki nie powinny znajdować się w tym zasobie). Koder można zasygnalizować, aby przełączyć się do dowolnego obrazu łupka (a nie tylko określonego za pomocą właściwości DefaultSlateAssetId w momencie tworzenia kanału). |
DefaultSlateAssetId
Jeśli właściwość jest określona i AssetId
nie zostanie określona, DefaultSlateAssetId
obraz zostanie użyty do maskowania strumienia wejściowego. Aby uzyskać więcej informacji, zobacz Slate.
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
Treść
{
"duration":"PT45S",
"assetId":"nb:cid:UUID:01234567-ABCD-ABCD-EFEF-01234567"
}
W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 .
Ukryj łupek
Koder na żywo może być zasygnalizowany, aby zakończyć działanie łupka przy użyciu żądania HTTP POST.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/HideSlate | HTTP/1.1 |
To wywołanie powinno być wywoływane tylko wtedy, gdy występuje łupek.
Aby uzyskać więcej informacji, zobacz Omówienie kanałów, które są włączone na potrzeby kodowania na żywo.
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 . Kod stanu zaakceptowany w 202 r. wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie kanału. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.
Usuwanie kanałów
Usuń kanał.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
DELETE | <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid') | HTTP/1.1 |
Przykładowe żądanie
Możesz wypróbować poniższy przykład na karcie Kompozytor programu Fiddler.
Aby uzyskać najnowszą wersję x-ms-version:
, zobacz Media Services REST.
Nagłówki żądań:
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>
W przypadku powodzenia zwracany jest kod stanu Zaakceptowane 202 . Kod stanu zaakceptowany w 202 r. wskazuje operację asynchroniczną, w takim przypadku wartość nagłówka operation-id jest również udostępniana do sondowania i śledzenia stanu długotrwałych operacji, takich jak uruchamianie lub zatrzymywanie kanału. Przekaż wartość nagłówka operation-id do jednostki operacji, aby pobrać stan. Aby uzyskać więcej informacji, zobacz Ręczne sondowanie Long-Running Operacje.
Zobacz też
Dostarczanie transmisji strumieniowej na żywo za pomocą usługi Azure Media Services
Program