Creazione di filtri con l'interfaccia della riga di comando

Logo di Servizi multimediali v3


Avviso

Servizi multimediali di Azure verrà ritirato il 30 giugno 2024. Per altre informazioni, vedere la Guida al ritiro di AMS.

Quando si distribuiscono contenuti ai clienti (flusso di eventi dal vivo o di video on demand), il client potrebbe avere bisogno di una maggiore flessibilità rispetto a quanto descritto nel file manifesto dell'asset predefinito. Servizi multimediali di Azure consente di definire i filtri account e i filtri asset per i propri contenuti.

Per una descrizione dettagliata di questa funzionalità e degli scenari in cui viene usata, vedere Manifesti e filtri dinamici.

Questo argomento illustra come configurare un filtro per un asset Video on demand e usare l'interfaccia della riga di comando per Servizi multimediali v3 per creare filtri account e filtri asset.

Nota

Assicurarsi di rivedere presentationTimeRange.

Prerequisiti

Definire un filtro

Di seguito è riportato l'esempio che definisce le condizioni di selezione di traccia che vengono aggiunte al manifesto finale. Questo filtro include tracce audio EC-3 e tracce video con velocità in bit nell'intervallo 0-1000000.

Suggerimento

Se si prevede di definire filtri in REST, si noti che è necessario includere l'oggetto JSON wrapper "Properties".

[
    {
        "trackSelections": [
            {
                "property": "Type",
                "value": "Audio",
                "operation": "Equal"
            },
            {
                "property": "FourCC",
                "value": "EC-3",
                "operation": "NotEqual"
            }
        ]
    },
    {
        "trackSelections": [
            {
                "property": "Type",
                "value": "Video",
                "operation": "Equal"
            },
            {
                "property": "Bitrate",
                "value": "0-1000000",
                "operation": "Equal"
            }
        ]
    }
]

Creare filtri account

Il comando az ams account-filter seguente crea un filtro account con le selezioni di traccia del filtro definite in precedenza.

Questo comando consente di superare il parametro --tracks facoltativo che include JSON per le selezioni di traccia. Usare @{file} per caricare JSON da un file. Se si usa l’interfaccia della riga di comando di Azure in locale, specificare il percorso completo del file:

az ams account-filter create -a amsAccount -g resourceGroup -n filterName --tracks @tracks.json

Vedere anche Esempi JSON per i filtri.

Creare filtri asset

Il comando az ams asset-filter seguente crea un filtro asset con le selezioni di traccia del filtro definite in precedenza.

az ams asset-filter create -a amsAccount -g resourceGroup -n filterName --asset-name assetName --tracks @tracks.json

Vedere anche Esempi JSON per i filtri.

Associare filtri al localizzatore di streaming

Filtrare i manifesti HLS o DASH per la creazione di un localizzatore di streaming

Servizi multimediali consente di creare un localizzatore di streaming pre-filtrato passando una raccolta di filtri nella proprietà del filtro nell'entità del localizzatore di streaming. In questo modo è possibile filtrare in modo preliminare tutti i manifesti nel localizzatore di streaming. Il manifesto originale non è più disponibile tramite questo localizzatore di streaming e solo la risposta filtrata sarà accessibile ai client che richiedono gli URL per DASH o HLS dal localizzatore di streaming filtrato. Ciò è utile nelle situazioni in cui si vuole pubblicare solo una parte di un asset e impedire agli utenti di accedere al manifesto originale completo per l'asset modificando la stringa di query dell'URL manifesto HLS o DASH. È consigliabile usare questa funzionalità se si desidera applicare filtri, ma non si vuole esporre i nomi dei filtri nell'URL per consentire ai clienti di modificarla autonomamente.

È possibile specificare un elenco di filtri di asset o account nel localizzatore di streaming. Dynamic Packager applica questo elenco di filtri insieme a quelli specificati dal client nell'URL. Questa combinazione genera un manifesto dinamico, basato su filtri nell'URL e nei filtri specificati nel localizzatore di streaming.

Aggiornamento dei filtri

I filtri e i localizzatori di streaming possono essere aggiornamenti in tempo reale, ma tenere presente che possono essere necessari fino a 10 secondi per eventuali aggiornamenti da aggiornare nei server Web front-end e possono verificarsi problemi con la memorizzazione nella cache della rete CDN downstream del contenuto se si aggiorna lo stesso localizzatore di streaming pubblicato e usato già in produzione.

Non è consigliabile aggiornare la definizione dei filtri associati a un localizzatore di streaming pubblicato attivamente, soprattutto quando è abilitata la rete CDN. I server di streaming e le reti CDN possono avere cache interne che potrebbero causare la restituzione di dati memorizzati nella cache non aggiornati.

Se la definizione del filtro deve essere modificata, prendere in considerazione la creazione di un nuovo filtro e l'aggiunta all'URL del localizzatore di streaming o la pubblicazione di un localizzatore di streaming univoco che fa riferimento direttamente al filtro aggiornato.

Usare l'interfaccia della riga di comando per creare un localizzatore di streaming filtrato

Il codice dell'interfaccia della riga di comando seguente illustra come creare un localizzatore di streaming e specificare filters. Si tratta di una proprietà facoltativa che accetta un elenco separato da spazi di nomi di filtro di asset e/o nomi di filtro dell'account.

az ams streaming-locator create -a amsAccount -g resourceGroup -n streamingLocatorName \
                                --asset-name assetName \
                                --streaming-policy-name policyName \
                                --filters filterName1 filterName2

Eseguire lo streaming con i filtri

Dopo aver definito i filtri, è possibile usarli nell'URL di streaming. È possibile applicare filtri ai protocolli di streaming a bitrate adattivo: Apple HTTP Live Streaming (HLS), MPEG-DASH e Smooth Streaming.

Nella tabella seguente sono disponibili alcuni esempi di URL con filtri:

Protocollo Esempio
HLS https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(format=m3u8-aapl,filter=myAccountFilter)
MPEG DASH https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(format=mpd-time-csf,filter=myAssetFilter)
Smooth Streaming https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(filter=myAssetFilter)

Vedi anche

Interfaccia della riga di comando di Azure

Guida e supporto tecnico

È possibile contattare Servizi multimediali con domande o seguire gli aggiornamenti tramite uno dei metodi seguenti: