Codifica di video e audio con Servizi multimediali
Avviso
Servizi multimediali di Azure verrà ritirato il 30 giugno 2024. Per altre informazioni, vedere la Guida al ritiro di AMS.
Suggerimento
Vuoi generare anteprime, unire due video, sottoprime un video o ruotarlo (tra le altre cose)? È possibile trovare il codice di esempio di Servizi multimediali nella pagina Esempi .
Il termine codifica in Servizi multimediali si applica al processo di conversione di file contenenti video digitali e/o audio da un formato standard a un altro, con lo scopo di (a) ridurre le dimensioni dei file e/o (b) produrre un formato compatibile con un'ampia gamma di dispositivi e app. Questo processo viene definito anche compressione video o transcoding. Vedere la compressione dei dati e la codifica e la transcodazione dei dati? per ulteriori discussioni sui concetti.
I video vengono in genere recapitati ai dispositivi e alle app tramite il download progressivo o tramite lo streaming a bitrate adattivo.
Importante
Servizi multimediali non fattura per processi o annullati che generano errori. Ad esempio, un processo che ha raggiunto il 50% dello stato di avanzamento e non viene annullato al 50% dei minuti del processo. Vengono addebitati solo i processi completati.
- Per distribuire il download progressivo, è possibile usare Servizi multimediali di Azure per convertire un file multimediale digitale (mezzanino) in un file MP4 , che contiene video codificati con il codec H.264 e l'audio codificato con il codec AAC . Questo file MP4 viene scritto in un asset nell'account di archiviazione. È possibile usare le API di Archiviazione di Azure o gli SDK (ad esempio, API REST di archiviazione o .NET SDK) per scaricare direttamente il file. Se è stato creato l'asset di output con un nome contenitore specifico nell'archiviazione, usare tale posizione. In caso contrario, è possibile usare Servizi multimediali per elencare gli URL del contenitore asset.
- Per preparare il contenuto per il recapito tramite streaming a bitrate adattivo, è necessario codificare il file di livello in base a più bitrate (alto a basso). Per garantire la transizione grazia della qualità, la risoluzione del video viene ridotta quando la velocità in bit viene ridotta. Ciò comporta una cosiddetta scala di codifica: una tabella di risoluzioni e velocità in bit (vedere scala a bitrate adattiva generata automaticamente o usare il set di impostazioni di codifica con riconoscimento del contenuto). È possibile usare Servizi multimediali per codificare i file mezzanini in più bitrate. A tale scopo, si otterrà un set di file MP4 e i file di configurazione di streaming associati scritti in un Asset nell'account di archiviazione. È quindi possibile usare la funzionalità Di creazione dinamica pacchetti in Servizi multimediali per distribuire il video tramite protocolli di streaming come MPEG-DASH e HLS. Ciò richiede di creare un localizzatore di streaming e creare URL di streaming corrispondenti ai protocolli supportati, che possono quindi essere passati ai dispositivi/app in base alle proprie funzionalità.
Trasformazioni e processi
Per codificare con Servizi multimediali v3, è necessario creare una trasformazione e un processo. La trasformazione definisce una ricetta per le impostazioni di codifica e gli output; il processo è un'istanza della ricetta. Per altre informazioni, vedere Trasformazioni e processi.
Durante la codifica con Servizi multimediali si usano set di impostazioni per indicare al codificatore come elaborare i file multimediali di input. In Servizi multimediali v3 si usa Codificatore Standard per codificare i file. Ad esempio, è possibile specificare la risoluzione video e/o il numero di canali audio desiderati nel contenuto codificato.
È possibile iniziare rapidamente con uno dei set di impostazioni predefiniti basati sulle procedure consigliate del settore oppure è possibile scegliere di creare un set di impostazioni personalizzate per soddisfare i requisiti specifici di scenario o dispositivo.
A partire da gennaio 2019, quando si esegue la codifica con il codificatore Standard per produrre file MP4, viene generato un nuovo file mpi e aggiunto all'asset di output. Questo file MPI è progettato per migliorare le prestazioni per scenari di creazione dinamica dei pacchetti e streaming.
Nota
Non è consigliabile modificare o rimuovere il file MPI o prendere qualsiasi dipendenza nel servizio sull'esistenza (o meno) di tale file.
Set di impostazioni predefiniti
Servizi multimediali supporta i set di impostazioni di codifica predefiniti seguenti:
BuiltInStandardEncoderPreset
BuiltInStandardEncoderPreset viene usato per configurare un set di impostazioni predefinito per la codifica del video di input con il codificatore Standard.
Attualmente sono supportati i set di impostazioni predefiniti seguenti:
EncoderNamedPreset.AACGoodQualityAudio: produce un singolo file MP4 contenente solo audio stereo codificato a 192 kbps.
EncoderNamedPreset.AdaptiveStreaming: supporta la codifica a bitrate adattiva H.264. Per altre informazioni, vedere Codificare con una tabella di coppie velocità in bit-risoluzione generata automaticamente.
EncoderNamedPreset.H265AdaptiveStreaming : simile al set di impostazioni AdaptiveStreaming, ma usa il codec HEVC (H.265). Produce un set di file MP4 allineati a GOP con video H.265 e audio AAC stereo. Genera automaticamente una scala a velocità bit in base alla risoluzione di input, alla velocità in bit e alla frequenza dei fotogrammi. Il set di impostazioni generato automaticamente non supererà mai la risoluzione di input. Ad esempio, se l'input è 720p, l'output rimarrà 720p al meglio.
EncoderNamedPreset.ContentAwareEncoding: espone un set di impostazioni per la codifica con riconoscimento del contenuto H.264. Produce un set di MP4 allineati a GOP usando la codifica con riconoscimento del contenuto. Dato qualsiasi contenuto di input, il servizio esegue un'analisi leggera iniziale del contenuto di input e usa i risultati per determinare il numero ottimale di livelli, le impostazioni di bitrate e risoluzione appropriate per il recapito tramite streaming adattivo. Questo set di impostazioni è particolarmente efficace per i video di complessità bassa e media, in cui i file di output saranno a velocità di bit inferiori, ma a una qualità che offre ancora un'esperienza ottimale agli spettatori. L'output conterrà file MP4 con interfoliazione video e audio. Questo set di impostazioni produce solo l'output fino a 1080P HD. Se è necessario l'output 4K, è possibile configurare il set di impostazioni con PresetConfigurations usando la proprietà "maxHeight". Per altre informazioni, vedere codifica con riconoscimento del contenuto.
CodificatoreNamedPreset.H265ContentAwareEncoding: espone un set di impostazioni per la codifica con riconoscimento del contenuto heVC (H.265). Produce un set di MP4 allineati a GOP usando la codifica con riconoscimento del contenuto. Dato qualsiasi contenuto di input, il servizio esegue un'analisi leggera iniziale del contenuto di input e usa i risultati per determinare il numero ottimale di livelli, le impostazioni di bitrate e risoluzione appropriate per il recapito tramite streaming adattivo. Questo set di impostazioni è particolarmente efficace per i video di complessità bassa e media, in cui i file di output saranno a velocità di bit inferiori, ma a una qualità che offre ancora un'esperienza ottimale agli spettatori. L'output conterrà file MP4 con interfoliazione video e audio. Questo set di impostazioni produce l'output fino a 4K HD. Se è necessario l'output 8K, è possibile configurare il set di impostazioni con PresetConfigurations usando la proprietà "maxHeight".
EncoderNamedPreset.H264MultipleBitrate1080p: produce un set di otto file MP4 allineati a GOP, compresi tra 6000 kbps e audio AAC stereo. La risoluzione parte da 1080p e può scendere fino a 360p.
EncoderNamedPreset.H264MultipleBitrate720p: produce un set di sei file MP4 allineati a GOP, compresi tra 3400 kbps e audio AAC stereo. La risoluzione parte da 720p e può scendere fino a 360p.
EncoderNamedPreset.H264MultipleBitrateSD: produce un set di cinque file MP4 allineati a GOP, compresi tra 1600 kbps e audio AAC stereo. La risoluzione parte da 480p e può scendere fino a 360p.
EncoderNamedPreset.H264SingleBitrate1080p: produce un file MP4 in cui il video viene codificato con codec H.264 a 6750 kbps e un'altezza immagine di 1080 pixel e l'audio stereo viene codificato con codec AAC-LC a 128 kbps. Se si desidera ridurre i bitrate per l'audio, è possibile creare un set di impostazioni di codifica personalizzato nella trasformazione e modificare la frequenza di campionamento o il conteggio dei canali per ridurre i valori per AAC-LC.
EncoderNamedPreset.H264SingleBitrate720p: produce un file MP4 in cui il video viene codificato con codec H.264 a 4500 kbps e un'altezza immagine di 720 pixel e l'audio stereo viene codificato con codec AAC-LC a 128 kbps. Se si desidera ridurre i bitrate per l'audio, è possibile creare un set di impostazioni di codifica personalizzato nella trasformazione e modificare la frequenza di campionamento o il conteggio dei canali per ridurre i valori per AAC-LC.
EncoderNamedPreset.H264SingleBitrateSD: produce un file MP4 in cui il video viene codificato con codec H.264 a 2200 kbps e un'altezza immagine di 480 pixel e l'audio stereo viene codificato con codec AAC-LC a 128 kbps. Se si desidera ridurre i bitrate per l'audio, è possibile creare un set di impostazioni di codifica personalizzato nella trasformazione e modificare la frequenza di campionamento o il conteggio dei canali per ridurre i valori per AAC-LC.
EncoderNamedPreset.H265SingleBitrate720P: produce un file MP4 in cui il video viene codificato con codec HEVC (H.265) a 1800 kbps e un'altezza immagine di 720 pixel e l'audio stereo viene codificato con codec AAC-LC a 128 kbps.
EncoderNamedPreset.H265SingleBitrate1080p: produce un file MP4 in cui il video viene codificato con codec HEVC (H.265) a 3500 kbps e un'altezza immagine di 1080 pixel e l'audio stereo viene codificato con codec AAC-LC a 128 kbps.
EncoderNamedPreset.H265SingleBitrate4K: produce un file MP4 in cui il video viene codificato con codec HEVC (H.265) a 9500 kbps e un'altezza immagine di 2160 pixel e l'audio stereo viene codificato con codec AAC-LC a 128 kbps.
Per visualizzare l'elenco delle impostazioni predefinite più aggiornate, vedere Set di impostazioni predefinite da usare per la codifica dei video.
Set di impostazioni personalizzati
Servizi multimediali supporta in modo completo la personalizzazione di tutti i valori nei set di impostazioni per soddisfare le esigenze e i requisiti di codifica specifici.
StandardEncoderPreset
StandardEncoderPreset descrive le impostazioni da usare per la codifica del video di input con il codificatore Standard. Usare questo set di impostazioni quando si personalizzano i set di impostazioni di trasformazione.
Considerazioni
Quando si creano set di impostazioni personalizzate, si applicano le considerazioni seguenti:
- Tutti i valori per altezza e larghezza nel contenuto AVC devono essere un multiplo di quattro.
- In Servizi multimediali di Azure v3 tutti i bit di codifica sono in bit al secondo. Questo è diverso dai set di impostazioni con le API v2, che utilizzano kilobit/secondo come unità. Ad esempio, se la velocità in bit in v2 è stata specificata come 128 (kilobits/secondo), in v3 verrà impostata su 128000 (bit/secondo).
Schema preimpostato
In Servizi multimediali v3, i set di impostazioni sono entità fortemente tipizzate nell'API stessa. È possibile trovare la definizione "schema" per questi oggetti in Open API Specification (o Swagger). È anche possibile visualizzare le definizioni predefinite (ad esempio StandardEncoderPreset) nell'API REST, .NET SDK (o nella documentazione di riferimento di Servizi multimediali v3 SDK).
Ridimensionamento della codifica nella versione v3
Per gli account creati con la versione 2020-05-01 o successiva dell'API o tramite la portale di Azure, la scalabilità e le unità riservate dei supporti non sono più necessarie. Il ridimensionamento sarà automatico e gestito dal servizio internamente.
Fatturazione
Servizi multimediali non fattura per processi annullati o con errori. Ad esempio, un processo che ha raggiunto il 50% dello stato di avanzamento e non viene annullato al 50% dei minuti del processo. Vengono addebitati solo i processi completati.
Per altre informazioni, vedere la pagina relativa ai prezzi.
Esempi di codifica
Vedere l'elenco completo degli esempi di codifica.
Guida e supporto tecnico
È possibile contattare Servizi multimediali con domande o seguire gli aggiornamenti in base a uno dei metodi seguenti:
- DOMANDE E RISPOSTE
-
Stack Overflow. Contrassegna le domande con
azure-media-services
. - @MSFTAzureMedia o usare @AzureSupport per richiedere supporto.
- Aprire un ticket di supporto tramite il portale di Azure.