Condividi tramite


Canale

In Servizi multimediali di Azure l'entità Channel rappresenta una pipeline per l'elaborazione di contenuto in streaming live. Un canale riceve i flussi di input live in uno dei due modi seguenti:

  • Un codificatore live locale invia la velocità RTMP in bit multipla o Smooth Streaming (MP4 frammentata) al canale. È possibile usare i codificatori live seguenti che generano output in formato Smooth Streaming a bitrate multipli: MediaExcel, Imagine Communications, Ateme, Envivio, Cisco ed Elemental. I codificatori live seguenti generano output in formato RTMP: Adobe Flash Live Encoder, Haivision, Telestream Wirecast, Teradek e codificatori Tricaster. I flussi inseriti passano attraverso il canale senza ulteriori elaborazioni. Quando richiesto, Servizi multimediali invia il flusso ai clienti.

  • Un flusso a velocità in bit singola (in uno dei formati seguenti: RTP (MPEG-TS), RTMPo Smooth Streaming (MP4 frammentato)) viene inviato a Channel che è abilitato per eseguire la codifica live con Servizi multimediali. L'entità Channel esegue quindi la codifica live del flusso in ingresso a velocità in bit singola in un flusso video a più velocità in bit (adattivo). Quando richiesto, Servizi multimediali invia il flusso ai clienti.

A partire dalla versione 2.10 di Servizi multimediali, quando si crea un canale è possibile specificare in che modo il canale riceverà il flusso di input e se eseguirà o meno la codifica live del flusso. Sono disponibili due opzioni:

  • None: specificare questo valore se si prevede di usare un codificatore live locale che genera un flusso a più velocità in bit. In questo caso, il flusso in ingresso viene passato all'output senza codifica. Questo è il comportamento di un canale prima della versione 2.10. Per informazioni più dettagliate sull'uso di canali di questo tipo, vedere Uso dei canali che ricevono streaming live a bitrate multipli da codificatori locali.

  • Standard : se si prevede di usare Servizi multimediali per codificare il flusso live a velocità in bit singola in un flusso a velocità in bit multipla, scegliere questo valore.

    Nota

    Tenere presente che la codifica live è soggetta a un costo e che se si lascia un canale di codifica live impostato sullo stato "In esecuzione", vengono aggiunti nuovi costi alla fatturazione. Per evitare costi orari aggiuntivi, quindi, è consigliabile arrestare immediatamente i canali in esecuzione al termine dell'evento in streaming live. Per altre informazioni, vedere Uso di canali abilitati per l'esecuzione della codifica live con Servizi multimediali di Azure.

Per altre informazioni su Live Streaming e sulla gestione dei canali, vedere Distribuzione di streaming live con Servizi multimediali di Azure.

Importante

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

Questo argomento presenta informazioni generali sull'entità Channel e mostra come eseguire varie operazioni con l'API REST di Servizi multimediali.

Entità Channel

L'entità Channel contiene le seguenti proprietà.

Proprietà Type Descrizione
Id

Di sola lettura. Impostata da Servizi multimediali.
Edm.String ID dell'entità Channel assegnato al momento della creazione. Il formato è:

nb:chid:UUID:<GUID>.
Name Edm.String Nome dell'entità Channel.

1. Deve essere univoco all'interno dell'account di Servizi multimediali.
2. Lunghezza massima = 32 caratteri.
3. Non può contenere spazi.
4. Trattini e caratteri alfanumerici.
5. Impossibile iniziare o terminare con un trattino.
Created

Di sola lettura. Impostata da Servizi multimediali.
Edm.DateTime Data e ora UTC che indica il momento della creazione.
Description Edm.String Descrizione fornita dall'utente. La lunghezza massima è 256 caratteri.
LastModified

Di sola lettura. Impostata da Servizi multimediali.
Edm.DateTime Data e ora dell'ultimo aggiornamento al canale.
State

Di sola lettura. Impostata da Servizi multimediali.
Edm.String Stato corrente del canale. I valori possibili sono:

- Arrestato. Lo stato iniziale del canale dopo la creazione. In questo stato le proprietà del canale possono essere aggiornate ma lo streaming non è consentito.
- Avvio in corso. È in corso l'avvio del canale. In questo stato non è consentito alcun aggiornamento o streaming. Se si verifica un errore, l'entità Channel ritorna allo stato Arrestato.
- In esecuzione. Il canale è in grado di elaborare flussi live.
- Arresto in corso. È in corso l'interruzione del canale. In questo stato non è consentito alcun aggiornamento o streaming.
- Eliminazione in corso. È in corso l'eliminazione del canale. In questo stato non è consentito alcun aggiornamento o streaming.
Input ChannelInput ComplexType Impostazioni di input (inserimento) del canale.
Output ChannelOutput ComplexType Impostazioni di output del canale.
Preview ChannelPreview ComplexType Impostazioni di anteprima del canale.
CrossSiteAccessPolicies CrossSiteAccessPolicies Criteri di accesso intersito.
Programs

Di sola lettura. Impostata da Servizi multimediali.
Raccolta di programmi. Riferimento alla raccolta di programmi associati al canale.
EncodingType Edm.String Optional. Descrive la configurazione del canale. I valori consentiti sono i seguenti:

- None - Questo è il valore predefinito. Quando si seleziona questo valore, il flusso in ingresso viene passato all'output senza codifica (si tratta del comportamento di un canale prima della versione 2.10).
- Standard – Il flusso a bitrate singolo in ingresso viene inviato al canale e trascoded in un flusso a velocità a più bit usando i set di impostazioni di sistema
Encoding Codifica di ComplexType Impostazioni del codificatore live di Azure.
Slate Slate Questa impostazione è supportata solo quando il Encoding Type canale è impostato su Standard.

È possibile inviare un segnale al codificatore live all'interno del canale per passare a un'immagine dello slate. È anche possibile inviare un segnale perché venga terminato uno slate in corso.

Il codificatore live può essere configurato per passare a un'immagine dello slate e mascherare il segnale video in ingresso in determinate situazioni, ad esempio, durante un'interruzione pubblicitaria. Se non è configurato uno slate, il video di input non viene mascherato durante l'interruzione pubblicitaria.

ChannelInput ComplexType

Nome Tipo Descrizione
KeyFrameInterval Edm.Time Questo valore viene ignorato se EncoderType è impostato su Standard.

Quando si usa un codificatore live locale per generare un flusso a più bitrate, l'intervallo di fotogrammi chiave specifica la durata di GOP, come usato da tale codificatore esterno. Una volta ricevuto il flusso in ingresso dal canale, è possibile distribuire il flusso live nelle applicazioni di riproduzione client in uno dei seguenti formati: Smooth Streaming, DASH and HLS. Quando si esegue lo streaming live, la creazione di pacchetti in HLS avviene sempre in modo dinamico. Per impostazione predefinita, Servizi multimediali calcola automaticamente il rapporto di compressione dei segmenti HLS (frammenti per segmento) in base all'intervallo dei fotogrammi chiave, detto anche GOP (Group of Pictures), ricevuto dal codificatore live.
StreamingProtocol

Di sola lettura.
Edm.String Dopo aver impostato il tipo di codificatore, è possibile impostare un protocollo di inserimento.

Se l'oggetto Encoder Type è impostato su None, le opzioni valide sono:

- Mp4 a più bitrate frammentato (Smooth Streaming)
- RTMP a più bitrate

Quando è Encoder Type impostato su None, è valido, ma indesiderato, per l'invio di un singolo flusso live RTMP o Smooth Streaming a bitrate. Il canale non esegue alcuna elaborazione con il flusso, pertanto ne verrà eseguito il pass-through, ma le applicazioni client riceveranno un flusso a velocità in bit singola.

Se l'oggetto Encoder Type è impostato su Standard, le opzioni valide sono:

1. Velocità a bit singola frammentata MP4 (Smooth Streaming)
2. Velocità a bit singolo RTMP
3. RTP (MPEG-TS): flusso di trasporto MPEG-2 tramite RTP.
AccessControl ChannelInputAccessControl ComplexType Impostazioni di controllo di accesso per l'input del canale.
Endpoints

Di sola lettura.
ChannelEndpoint ComplexType Endpoint di input del canale.

Un'entità Channel, o canale, fornisce gli endpoint di input (URL di inserimento) che è possibile usare per inserire un flusso live. Il canale riceve i flussi di input live e rende i flussi di output disponibili per lo streaming mediante uno o più endpoint di streaming.

ChannelPreview ComplexType

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

Nome Tipo Descrizione
AccessControl ChannelPreviewAccessControl ComplexType Impostazioni di controllo di accesso per l'anteprima del canale.
Endpoints

Di sola lettura.
ChannelEndpoint ComplexType Endpoint di anteprima del canale.

ChannelInputAccessControl ComplexType

Nome Tipo Descrizione
IP IPAccessControl Indirizzi IP a cui è consentito connettersi agli endpoint di input del canale.
Gli indirizzi IP devono trovarsi in uno dei formati seguenti: Indirizzo IpV4 con 4 numeri, intervallo di indirizzi CIDR.

ChannelPreviewAccessControl ComplexType

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

Nome Tipo Descrizione
IP IPAccessControl Indirizzi IP a cui è consentito connettersi agli endpoint di input del canale.
Gli indirizzi IP devono trovarsi in uno dei formati seguenti: Indirizzo IpV4 con 4 numeri, intervallo di indirizzi CIDR

IPAccessControl

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

Nome Tipo Descrizione
Allow IPRange ComplexType Indirizzi IP a cui è consentito connettersi agli endpoint di input del canale. Nota: L'impostazione di questo valore su Null consente a tutti gli indirizzi di origine IP di connettersi. Impostando questo valore su una stringa vuota (""), non potrà essere connesso alcun indirizzo IP.

IPRange ComplexType

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

Nome Tipo Descrizione
Name Edm.String Nome descrittivo per l'intervallo IP.
Address Edm.String Indirizzo IP di base per la rappresentazione di subnet, ad esempio 192.168.0.1.
SubnetPrefixLength Edm.Int32 Numero di bit significativi per la subnet mask. Nell'indirizzo IP 192.168.0.1/24, ad esempio, 24 rappresenta il numero di bit significativi.

ChannelEndpoint ComplexType

Nome Tipo Descrizione
Protocol Edm.String Protocollo dell'endpoint di streaming del canale.
Url Edm.String URL dell'endpoint di streaming del canale.

ChannelOutput ComplexType

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live

Nome Tipo Descrizione
Hls ChannelOutputHls ComplexType Impostazioni specifiche di HLS.

ChannelOutputHls ComplexType

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

Nome Tipo Descrizione
FragmentsPerSegment Edm.Int16 Quantità di frammenti per segmento HLS (HTTP Live Streaming).

Codifica di ComplexType

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

Nome Tipo Descrizione
AdMarkerSource Edm.String È possibile specificare l'origine per i segnali dei marcatori di annunci. Il valore predefinito è Api, che indica che il codificatore live all'interno del canale deve essere in ascolto di un oggetto asincrono Ad Marker API. L'altra opzione valida è (consentita solo se il protocollo di streaming di inserimento è Scte35 impostato su RTP (MPEG-TS). Quando Scte35 viene specificato, il codificatore SCTE-35 analizza i segnali dal flusso MPEG-TS (input RTP).
IgnoreCea708ClosedCaptions Edm.bool Optional. Flag facoltativo che indica al codificatore live di ignorare i dati di tutti i sottotitoli codificati CEA 708 incorporati nel video in ingresso. Quando il flag è impostato su false (impostazione predefinita), il codificatore rileva e reinserisce i dati CEA 708 nei flussi video di output.
VideoStream VideoStream Optional. Descrive il flusso video di input. Se questo campo non è specificato, viene usato il valore predefinito. Questa impostazione è consentita solo se il protocollo di streaming di input è impostato su RTP (MPEG-TS).
AudioStreams AudioStreams Optional. Descrive i flussi audio di input. Se questo campo non è specificato, si applica il valore predefinito specificato. Questa impostazione è consentita solo se il protocollo di streaming di input è impostato su RTP (MPEG-TS).
SystemPreset Edm.String Specifica il set di impostazioni del codificatore che dovrà essere usato per questo canale. Attualmente, l'unico valore consentito è Default720p (impostazione predefinita).

Per altri dettagli, vedere SystemPreset

SystemPreset

Default720p specifica per codificare il video nei 6 livelli seguenti.

Velocità in bit Larghezza Altezza MaxFPS Profilo Nome del flusso di output
3500 1280 720 30 Alto Video_1280x720_3500kbps
2200 960 540 30 Alto Video_960x540_2200kbps
1350 704 396 30 Alto Video_704x396_1350kbps
850 512 288 30 Alto Video_512x288_850kbps
550 384 216 30 Alto Video_384x216_550kbps
200 340 192 30 Alto Video_340x192_200kbps

L'audio viene codificato nel formato stereo AAC-LC a 64 kbps, frequenza di campionamento di 44,1 kHz.

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

VideoStream

Descrive il flusso video di input. Se questo campo non è specificato, viene usato il valore predefinito. Questa impostazione è consentita solo se il protocollo di streaming di input è impostato su RTP (MPEG-TS).

Nome Tipo Descrizione
Index Edm.Int1 Indice in base zero che specifica quale flusso video di input dovrà essere elaborato dal codificatore live all'interno del canale. Questa impostazione si applica solo se il protocollo di streaming di inserimento è RTP (MPEG-TS).

Il valore predefinito è zero. È consigliabile effettuare l'invio tramite un singolo flusso di trasporto del programma (SPTS). Se il flusso di input contiene più programmi, il codificatore live analizza la tabella di mappa dei programmi (PMT, Program Map Table) nell'input, individua quindi gli input che presentano un nome del tipo di flusso MPEG-2 Video o H.264 e li dispone in base all'ordine specificato nella tabella di mappa dei programmi. L'indice in base zero viene quindi usato per selezionare la voce n in tale disposizione.
Name Edm.String Optional. Tag descrittivo per questo flusso video di input.

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

AudioStreams

Descrive i flussi audio di input. Se questo campo non è specificato, si applica il valore predefinito specificato. Questa impostazione è consentita solo se il protocollo di streaming di input è impostato su RTP (MPEG-TS).

Nome Tipo Descrizione
Index Edm.Int16 È consigliabile effettuare l'invio tramite un singolo flusso di trasporto del programma (SPTS). Se il flusso di input contiene più programmi, il codificatore live all'interno del canale analizza la tabella di mappa dei programmi (PMT, Program Map Table) nell'input, individua quindi gli input che presentano un nome del tipo di flusso MPEG-2 AAC ADTS, AC-3 System-A, AC-3 System-B, MPEG-2 Private PES, MPEG-1 Audio o MPEG-2 Audio e li dispone in base all'ordine specificato nella tabella di mappa dei programmi. L'indice in base zero viene quindi usato per selezionare la voce n in tale disposizione.
Name Edm.String Optional. Tag descrittivo per questo flusso audio di input.
Language Edm.String Optional. Identificatore lingua del flusso audio, conforme alla specifica ISO 639-2, ad esempio ITA. Se non è presente, il valore predefinito è UND (undefined).

È possibile specificare un massimo di 8 set di flussi audio se l'input per il canale è MPEG-2 TS su RTP. Tuttavia, non possono essere presenti due voci con lo stesso valore di indice.

È possibile specificare un massimo di 8 {Index, Name, Language} set se l'input per il codificatore è MPEG-2 TS su RTP. Tuttavia, non possono essere presenti due voci con lo stesso valore di indice. Se l'input per il codificatore è RTMP o HTTP (Smooth Streaming), potrà esserci solo un unico flusso audio nell'input.

Slate

Questa impostazione è supportata solo quando l'oggetto Encoding Type del canale è impostato su Standard.

È possibile inviare un segnale al codificatore live all'interno del canale per passare a un'immagine dello slate. È anche possibile inviare un segnale perché venga terminato uno slate in corso.

Il codificatore live può essere configurato per passare a un'immagine dello slate e mascherare il segnale video in ingresso in determinate situazioni, ad esempio, durante un'interruzione pubblicitaria. Se non è configurato uno slate, il video di input non viene mascherato durante l'interruzione pubblicitaria.

Nome Tipo Descrizione
InsertSlateOnAdMarker Edm.Bool Quando è impostata su True, questa opzione configura il codificatore live in modo che venga inserita un'immagine dello slate durante un'interruzione pubblicitaria. Il valore predefinito è true.
DefaultSlateAssetId Edm.String Optional. Specifica l'ID asset dell'asset di Servizi multimediali che contiene l'immagine dello slate. Il valore predefinito è null.

Prima di creare il canale, è necessario caricare l'immagine dello slate (con una risoluzione massima di 1920x1080, in formato JPEG e con dimensioni massime di 3 MB) come asset dedicato, nel quale non dovranno essere presenti altri file. L'estensione di file dovrà essere JPG e questo AssetFile dovrà essere contrassegnato come file primario dell'asset. Questo asset non può essere crittografato.

Se l'ID asset di slate predefinito non è specificato e l'inserimento dello slate nell'indicatore di annuncio è impostato su true, verrà usata un'immagine predefinita di Servizi multimediali di Azure per mascherare il flusso di input.

Per informazioni più dettagliate su questo tipo e sulle relative proprietà, vedere Panoramica dei canali abilitati per la codifica live.

Creare entità Channel

Le entità Channel possono essere create usando una richiesta HTTP POST e specificando i valori delle proprietà.

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

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Il corpo della richiesta seguente illustra come creare un canale abilitato per la codifica live.

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

Il corpo della richiesta seguente illustra come creare un canale nell'account che non è abilitato per la codifica live.

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

Se l'esito è positivo, nel corpo della risposta viene restituito un codice di stato 202 Accettato insieme a una rappresentazione dell'entità creata.

Il codice di stato 202 Accettato indica un'operazione asincrona, nel qual caso viene fornito anche il valore dell'intestazione operation-id che viene usato per il polling e per il rilevamento dello stato delle operazioni di lunga esecuzione, ad esempio l'avvio o l'arresto di un'entità Channel. Passare il valore dell'intestazione operation-id nell'entità Operation per recuperare lo stato. Per altre informazioni, vedere Polling manuale delle operazioni Long-Running.

Avviare entità Channel

Metodo URI richiesta Versione HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Start HTTP/1.1

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Se l'esito è positivo, viene restituito un codice di stato 202 Accettato. Il codice di stato 202 Accettato indica un'operazione asincrona, nel qual caso viene fornito anche il valore dell'intestazione operation-id che viene usato per il polling e per il rilevamento dello stato delle operazioni di lunga esecuzione, ad esempio l'avvio o l'arresto di un'entità Channel. Passare il valore dell'intestazione operation-id nell'entità Operation per recuperare lo stato. Per altre informazioni, vedere Polling manuale delle operazioni Long-Running.

Arrestare entità Channel

Un canale può essere arrestato solo quando è In esecuzione e tutti i programmi sul canale sono stati arrestati.

Metodo URI richiesta Versione HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Stop HTTP/1.1

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Se l'esito è positivo, viene restituito un codice di stato 202 Accettato. Il codice di stato 202 Accettato indica un'operazione asincrona, nel qual caso viene fornito anche il valore dell'intestazione operation-id che viene usato per il polling e per il rilevamento dello stato delle operazioni di lunga esecuzione, ad esempio l'avvio o l'arresto di un'entità Channel. Passare il valore dell'intestazione operation-id nell'entità Operation per recuperare lo stato. Per altre informazioni, vedere Polling manuale delle operazioni Long-Running.

Elencare le entità Channel

Le entità Channel possono essere recuperate usando una richiesta HTTP GET.

Metodo URI richiesta Versione HTTP
GET Ottenere tutte le entità Channel:

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

Ottenere un'entità Channel specificata.

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

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

In caso di esito positivo, questa operazione restituisce un codice di stato 200 OK e un elenco di tutti i canali creati nell'account di Servizi multimediali.

Reimpostare entità Channel

Reimposta lo stato di runtime dell'entità Channel mantenuto durante la trasmissione di una presentazione live e consente di riusare un canale in caso di reimpostazioni della presentazione o di riconfigurazione del codificatore. Arrestare tutti i programmi prima di chiamare Reset. Reset può essere chiamato su un canale in stato di esecuzione.

Metodo URI richiesta Versione HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/Reset HTTP/1.1

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Se l'esito è positivo, viene restituito un codice di stato 202 Accettato. Il codice di stato 202 Accettato indica un'operazione asincrona, nel qual caso viene fornito anche il valore dell'intestazione operation-id che viene usato per il polling e per il rilevamento dello stato delle operazioni di lunga esecuzione, ad esempio l'avvio o l'arresto di un'entità Channel. Passare il valore dell'intestazione operation-id nell'entità Operation per recuperare lo stato. Per altre informazioni, vedere Polling manuale delle operazioni Long-Running.

Aggiornare le entità Channel

Aggiorna le proprietà su un'entità Channel esistente. L'entità Channel deve essere in stato Arrestato.

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/Channels>('channelid') HTTP/1.1

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Corpo della richiesta:

"Encoding":{"IgnoreCea708ClosedCaptions": true}  

Se l'aggiornamento viene completato in modo sincrono, restituisce un codice di stato 204 Nessun contenuto. In caso contrario, restituisce un codice di stato 202 Accettato. Il codice di stato 202 Accettato indica un'operazione asincrona, nel qual caso viene fornito anche il valore dell'intestazione operation-id che viene usato per il polling e per il rilevamento dello stato delle operazioni di lunga esecuzione, ad esempio l'avvio o l'arresto di un'entità Channel. Passare il valore dell'intestazione operation-id nell'entità Operation per recuperare lo stato. Per altre informazioni, vedere Polling manuale delle operazioni Long-Running.

Avvia annuncio

Il codificatore live può essere segnalato per avviare un annuncio pubblicitario o un'interruzione commerciale usando una richiesta HTTP POST e specificando i valori delle proprietà di nell'entità StartAdvertisement Entity nel corpo della richiesta.

Metodo URI richiesta Versione HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/StartAdvertisement HTTP/1.1

Per altre informazioni, vedere Panoramica dei canali abilitati per la codifica live.

Entità StartAdvertisement

Questa entità rappresenta l'API per l'avvio di un annuncio. Si tratta di una chiamata asincrona al codificatore live per inserire un annuncio o interruzioni pubblicitarie nel flusso di output.

Per altre informazioni, vedere Panoramica dei canali abilitati per la codifica live.

Nome Tipo Descrizione
duration Edm.Duration Durata dell'interruzione pubblicitaria in secondi. Per avviare l'interruzione pubblicitaria, deve essere un valore positivo diverso da zero. Quando è in corso un'interruzione pubblicitaria e la durata è impostata su zero con ID battuta corrispondente all'interruzione pubblicitaria in corso, l'interruzione viene annullata.
cueId Edm.Int ID univoco dell'interruzione pubblicitaria che dovrà essere usato dall'applicazione downstream per eseguire le operazioni necessarie. Deve essere un intero positivo.
showSlate Edm.Bool Optional. Indica al codificatore live all'interno del canale di passare all'immagine dello slate predefinita durante l'interruzione pubblicitaria (e di mascherare il feed video in ingresso). L'impostazione predefinita è false.

L'immagine usata sarà quella specificata tramite la proprietà ID risorsa slate predefinita al momento della creazione del canale.

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Corpo

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

Se l'esito è positivo, viene restituito un codice di stato 202 Accettato.

Annuncio finale

Il codificatore live può ricevere il segnale per l'arresto di un annuncio o di un'interruzione pubblicitaria in corso mediante una richiesta HTTP POST.

Metodo URI richiesta Versione HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/EndAdvertisement HTTP/1.1

Questa chiamata deve essere eseguita solo quando è in corso un annuncio.

Per altre informazioni, vedere Panoramica dei canali abilitati per la codifica live.

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Se l'esito è positivo, viene restituito un codice di stato 202 Accettato.

Mostra ardesia

Indica al codificatore live all'interno del canale di passare all'immagine dello slate predefinita durante l'interruzione pubblicitaria (e di mascherare il feed video in ingresso). L'impostazione predefinita è false. L'immagine usata sarà quella specificata tramite la proprietà ID risorsa slate predefinita al momento della creazione del canale.

Usare le proprietà dell'entità ShowSlate nel corpo della richiesta HTTP.

Metodo URI richiesta Versione HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channeled')/ShowSlate HTTP/1.1

Per altre informazioni, vedere Panoramica dei canali abilitati per la codifica live.

Entità ShowSlate

Per altre informazioni, vedere Panoramica dei canali abilitati per la codifica live.

Nome Tipo Descrizione
duration Edm.Duration Durata dello slate in secondi. Per avviare lo slate, deve essere un valore positivo diverso da zero. Se è in corso uno slate e viene specificata una durata pari a zero, lo slate in corso verrà terminato.
assetId Edm.String Specifica l'ID asset dell'asset di Servizi multimediali che contiene l'immagine dello slate.

Prima di creare il canale, è necessario caricare l'immagine dello slate (con una risoluzione di 1920x1080, in formato JPEG e con dimensioni massime di 3 MB) come asset dedicato, nel quale non dovranno essere presenti altri file.

Il codificatore può ricevere il segnale di passare a un'immagine dello slate arbitraria (e non solo a quella specificata tramite la proprietà DefaultSlateAssetId durante la creazione del canale).

Se si specifica la proprietà DefaultSlateAssetId ma non si specifica AssetId, per mascherare il flusso di input verrà usata l'immagine DefaultSlateAssetId. Per altre informazioni, vedere Slate.

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Corpo

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

Se l'esito è positivo, viene restituito un codice di stato 202 Accettato.

Nascondi ardesia

Il codificatore live può ricevere il segnale per l'arresto di uno slate in corso mediante una richiesta HTTP POST.

Metodo URI richiesta Versione HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Channels>('channelid')/HideSlate HTTP/1.1

Questa chiamata deve essere eseguita solo quando è in corso uno slate.

Per altre informazioni, vedere Panoramica dei canali abilitati per la codifica live.

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Se l'esito è positivo, viene restituito un codice di stato 202 Accettato. Il codice di stato 202 Accettato indica un'operazione asincrona, nel qual caso viene fornito anche il valore dell'intestazione operation-id che viene usato per il polling e per il rilevamento dello stato delle operazioni di lunga esecuzione, ad esempio l'avvio o l'arresto di un'entità Channel. Passare il valore dell'intestazione operation-id nell'entità Operation per recuperare lo stato. Per altre informazioni, vedere Polling manuale delle operazioni Long-Running.

Eliminare entità Channel

Eliminare un canale.

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

Richiesta di esempio

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

Per ottenere la versione più recente x-ms-version:, vedere Servizi multimediali REST.

Intestazioni della richiesta:

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>  
  

Se l'esito è positivo, viene restituito un codice di stato 202 Accettato. Il codice di stato 202 Accettato indica un'operazione asincrona, nel qual caso viene fornito anche il valore dell'intestazione operation-id che viene usato per il polling e per il rilevamento dello stato delle operazioni di lunga esecuzione, ad esempio l'avvio o l'arresto di un'entità Channel. Passare il valore dell'intestazione operation-id nell'entità Operation per recuperare lo stato. Per altre informazioni, vedere Polling manuale delle operazioni Long-Running.

Vedere anche

Distribuzione di Live Streaming con Servizi multimediali di Azure
Programma