Condividi tramite


AssetFilter

AssetFilters viene usato per definire i filtri per i manifesti di streaming dell'asset. I filtri definiti possono essere applicati a uno dei protocolli di streaming seguenti: HLS, MPEG-DASH, Smooth Streaming e HDS. Servizi multimediali genera dinamicamente manifesti in base ai filtri specificati. I filtri possono essere definiti a livello globale (Filtro) o a livello di asset (AssetFilter). Usare AssetFilter per applicare filtri a un asset specifico. Usare Filter per applicare filtri a uno qualsiasi degli asset.

Per una panoramica dettagliata e esempi di codice di manifesti generati dinamicamente, vedere Panoramica dei manifesti dinamici.

In questo argomento viene fornita una panoramica dell'entità (utilizzata per definire filtri locali) e viene illustrato anche come eseguire varie operazioni con l'API AssetFilter REST di Servizi multimediali.

Importante

Quando si accede alle entità in Servizi multimediali, è necessario impostare valori e campi di intestazione specifici nelle richieste HTTP.
Per altre informazioni, vedere Configurazione per lo sviluppo di API REST di Servizi multimediali e connessione a Servizi multimediali con l'API REST di Servizi multimediali.

Proprietà AssetFilter

Proprietà Type Descrizione
Id

Di sola lettura. Impostato da Servizi multimediali in fase di creazione.
Edm.String Identificatore univoco.
ParentAssetId Edm.String ID di un asset padre contenente una raccolta di questi filtri.
Name Edm.String Nome descrittivo per AssetFilter.
PresentationTimeRange PresentationTimeRange Il PresentationTimeRange gruppo di regole viene usato per filtrare i punti di inizio/fine del manifesto, la lunghezza della finestra di presentazione e la posizione iniziale attiva. Servizi multimediali usa intersezioni di più intervalli per definire la finestra di presentazione finale.
Tracks FilterTrackSelect Contiene una raccolta di FilterTrackPropertyConditions.
FirstQuality FirstQuality Prima qualità del filtro manifesto indica il primo bitrate di qualità per HLS.

Creare un filtro

Creare un filtro usando la richiesta HTTP POST.

Metodo URI richiesta Versione HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/AssetFilters> HTTP/1.1

Richiesta di esempio

È possibile provare l'esempio seguente nella scheda Compositore di Fiddler.

Per ottenere l'ultima versione x-ms-version:, vedere REST servizi multimediali.

Intestazioni della richiesta

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  
  

Corpo della richiesta

  
{    
   "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"  
            }  
         ]  
      }  
   ]  
}  
  

Risposta

HTTP/1.1 201 Created  
. . .  
  

Elencare i filtri

Restituisce tutti i AssetFilter associati a un asset.

Metodo URI richiesta Versione HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetId')/AssetFilters() HTTP/1.1

Restituisce un assetFilter specifico specificando l'ID AssetFilter restituito al momento della creazione dell'entità.

Metodo URI richiesta Versione HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/>AssetFilters('assetFilterID') HTTP/1.1

Richiesta di esempio

È possibile provare l'esempio seguente nella scheda Compositore di Fiddler.

Per ottenere l'ultima versione x-ms-version:, vedere REST servizi multimediali.

Ottenere tutti i filtri AssetFilter associati a un asset.

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  
  

Ottenere un AssetFilter in base al relativo ID.

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  
  

Aggiornare un filtro

Usare PATCH, PUT o MERGE per aggiornare assetFilter con nuovi valori di proprietà.

Nota

Se si aggiorna un filtro, l'endpoint di streaming può impiegare fino a due minuti per aggiornare le regole. Se il contenuto è stato trasmesso usando dei filtri (e memorizzato nelle cache dei proxy e delle reti CDN), l'aggiornamento del filtro può determinare un errore del lettore. È consigliabile quindi cancellare la cache dopo aver aggiornato il filtro. Se questa operazione non è consentita, prendere in considerazione la possibilità di usare un filtro diverso.

Metodo URI richiesta Versione HTTP
PATCH/PUT/MERGE

Per altre informazioni su queste operazioni, vedere PATCH/PUT/MERGE.
<https:// accountname.restv2>.<location.media.azure.net/api/Filters>('filterName') HTTP/1.1

Richiesta di esempio

È possibile provare l'esempio seguente nella scheda Compositore di Fiddler.

Per ottenere l'ultima versione x-ms-version:, vedere REST servizi multimediali.

Intestazioni della richiesta:

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  
  

Corpo della richiesta:

{  
   "Tracks":[    
      {    
         "PropertyConditions":  
         [    
            {    
               "Property":"Type",  
               "Value":"audio",  
               "Operator":"Equal"  
            },  
            {    
               "Property":"Bitrate",  
               "Value":"0-2147483647",  
               "Operator":"Equal"  
            }  
         ]  
      }  
   ]  
}  
  

Eliminare un filtro

I filtri possono essere eliminati usando una richiesta HTTP DELETE.

Metodo URI richiesta Versione HTTP
DELETE <https:// accountname.restv2>.<location.media.azure.net/api/AssetFilters>('assetFilterId') HTTP/1.1

Richiesta di esempio

È possibile provare l'esempio seguente nella scheda Compositore di Fiddler.

Per ottenere l'ultima versione x-ms-version:, vedere REST servizi multimediali.

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