AssetFilter
AssetFilter
s służą do definiowania filtrów manifestów przesyłania strumieniowego zasobu. Zdefiniowane filtry można zastosować do dowolnego z następujących protokołów przesyłania strumieniowego: HLS, MPEG-DASH, Smooth Streaming i HDS. Usługa Media Services dynamicznie generuje manifesty na podstawie określonych filtrów. Filtry można definiować na poziomie globalnym (filtr) lub na poziomie zasobu (AssetFilter
). Służy AssetFilter
do stosowania filtrów do określonego zasobu. Użyj polecenia Filter
, aby zastosować filtry do dowolnego elementu zawartości.
Aby uzyskać szczegółowe omówienie i przykłady kodu dynamicznie generowanych manifestów, zobacz Omówienie manifestów dynamicznych.
Ten temat zawiera omówienie AssetFilter
jednostki (używanej do definiowania filtrów lokalnych), a także pokazuje, jak wykonywać różne operacje za pomocą interfejsu API REST usługi 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.
Właściwości elementu AssetFilter
Właściwość | Typ | Opis |
---|---|---|
Id Tylko do odczytu. Ustaw przez usługę Media Services w czasie tworzenia. |
Edm.String | Unikatowy identyfikator. |
ParentAssetId |
Edm.String | Identyfikator elementu zawartości nadrzędnej zawierającej kolekcję tych filtrów. |
Name |
Edm.String | Przyjazna nazwa elementu AssetFilter. |
PresentationTimeRange |
PresentationTimeRange | Grupa PresentationTimeRange reguł służy do filtrowania punktów początkowych/końcowych manifestu, długości okna prezentacji i pozycji rozpoczęcia na żywo. Usługa Media Services używa przecięcia wielu zakresów do zdefiniowania końcowego okna prezentacji. |
Tracks |
FilterTrackSelect | Zawiera kolekcję s FilterTrackPropertyCondition . |
FirstQuality |
Pierwsza kwalifikacja | Pierwsza jakość filtru manifestu wskazuje pierwszą szybkość transmisji bitów jakości dla usługi HLS. |
Tworzenie filtru
Utwórz filtr przy użyciu żądania HTTP POST.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/AssetFilters> | 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://<accountname>.restv2.<location>.media.azure.net/api/AssetFilters HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Content-Type: application/json
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
x-ms-client-request-id: 00000000-0000-0000-0000-000000000000
Host: media.windows.net
Treść żądania
{
"Name":"TestFilter",
"ParentAssetId":"nb:cid:UUID:536e555d-1500-80c3-92dc-f1e4fdc6c592",
"PresentationTimeRange":{
"StartTimestamp":"0",
"EndTimestamp":"9223372036854775807",
"PresentationWindowDuration":"12000000000",
"LiveBackoffDuration":"0",
"Timescale":"10000000"
},
"Tracks":[
{
"PropertyConditions":
[
{
"Property":"Type",
"Value":"audio",
"Operator":"Equal"
},
{
"Property":"Bitrate",
"Value":"0-2147483647",
"Operator":"Equal"
}
]
}
]
}
Reakcja
HTTP/1.1 201 Created
. . .
Filtry listy
Zwróć wszystkie jednostki AssetFilters skojarzone z elementem zawartości.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetId')/AssetFilters() | HTTP/1.1 |
Zwróć określony element AssetFilters, określając identyfikator elementu AssetFilter zwrócony podczas tworzenia jednostki.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/>AssetFilters('assetFilterID') | 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.
Pobierz wszystkie jednostki AssetFilters skojarzone z zasobem.
GET https://<accountname>.restv2.<location>.media.azure.net/api/Assets('nb%3Acid%3AUUID%3A536e555d-1500-80c3-92dc-f1e4fdc6c592')/AssetFilters HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
x-ms-client-request-id: 00000000-0000-0000-0000-000000000000
Host: media.windows.net
Pobierz element AssetFilter na podstawie jego identyfikatora.
GET https://<accountname>.restv2.<location>.media.azure.net/api/AssetFilters('nb%3Acid%3AUUID%3A536e555d-1500-80c3-92dc-f1e4fdc6c592__%23%23%23__TestFilter') HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
x-ms-client-request-id: 00000000-0000-0000-0000-000000000000
Host: media.windows.net
Aktualizowanie filtru
Użyj funkcji PATCH, PUT lub MERGE, aby zaktualizować element AssetFilter przy użyciu nowych wartości właściwości.
Uwaga
W przypadku zaktualizowania filtru może upłynąć do 2 minut, aby punkt końcowy przesyłania strumieniowego odświeżył reguły. Jeśli zawartość została obsłużona przy użyciu tego filtru (i buforowanego w serwerach proxy i pamięciach podręcznych CDN), aktualizacja tego filtru może spowodować błędy odtwarzacza. Zaleca się wyczyszczenie pamięci podręcznej po zaktualizowaniu filtru. Jeśli ta opcja nie jest możliwa, rozważ użycie innego filtru.
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/Filters>('filterName') | 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ń:
MERGE https://<accountname>.restv2.<location>.media.azure.net/api/AssetFilters('nb%3Acid%3AUUID%3A536e555d-1500-80c3-92dc-f1e4fdc6c592__%23%23%23__TestFilter') HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Content-Type: application/json
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
x-ms-client-request-id: 00000000-0000-0000-0000-000000000000
Host: media.windows.net
Treść żądania:
{
"Tracks":[
{
"PropertyConditions":
[
{
"Property":"Type",
"Value":"audio",
"Operator":"Equal"
},
{
"Property":"Bitrate",
"Value":"0-2147483647",
"Operator":"Equal"
}
]
}
]
}
Usuwanie filtru
Filtry można usunąć przy użyciu żądania HTTP DELETE.
Metoda | Identyfikator URI żądania | Wersja protokołu HTTP |
---|---|---|
DELETE | <https:// accountname.restv2>.<location.media.azure.net/api/AssetFilters>('assetFilterId') | 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.
DELETE https://<accountname>.restv2.<location>.media.azure.net/api/AssetFilters('nb%3Acid%3AUUID%3A536e555d-1500-80c3-92dc-f1e4fdc6c592__%23%23%23__TestFilter') HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
Host: media.windows.net