Codifica di video e audio con servizi multimedialiEncoding video and audio with Media Services

logo di servizi multimediali v3media services logo v3


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) di ridurre le dimensioni dei file e/o (b) produrre un formato compatibile con un'ampia gamma di dispositivi e app.The term encoding in Media Services applies to the process of converting files containing digital video and/or audio from one standard format to another, with the purpose of (a) reducing the size of the files, and/or (b) producing a format that's compatible with a broad range of devices and apps. Questo processo è noto anche come compressione video o transcodifica.This process is also referred to as video compression, or transcoding. Per ulteriori informazioni sui concetti, vedere compressione dei dati e informazioni su codifica e transcodifica .See the Data compression and the What Is Encoding and Transcoding? for further discussion of the concepts.

I video vengono in genere recapitati a dispositivi e app tramite download progressivo o streaming a bitrate adattivo.Videos are typically delivered to devices and apps by progressive download or through adaptive bitrate streaming.

Importante

Servizi multimediali non esegue la fatturazione per i processi annullati o con errori.Media Services does not bill for canceled or errored jobs. Ad esempio, un processo che ha raggiunto il 50% di avanzamento e viene annullato non viene fatturato al 50% dei minuti del processo.For example, a job that has reached 50% progress and is canceled is not billed at 50% of the job minutes. Vengono addebitati solo i processi finiti.You are only charged for finished jobs.

  • Per eseguire 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 audio che è stato codificato con il codec AAC .To deliver by progressive download, you can use Azure Media Services to convert a digital media file (mezzanine) into an MP4 file, which contains video that's been encoded with the H.264 codec, and audio that's been encoded with the AAC codec. Questo file MP4 viene scritto in un asset nell'account di archiviazione.This MP4 file is written to an Asset in your storage account. È possibile usare le API o gli SDK di archiviazione di Azure, ad esempio l' API REST di archiviazione o .NET SDK, per scaricare direttamente il file.You can use the Azure Storage APIs or SDKs (for example, Storage REST API or .NET SDK) to download the file directly. Se l'asset di output è stato creato con un nome di contenitore specifico nello spazio di archiviazione, usare tale percorso.If you created the output Asset with a specific container name in storage, use that location. In caso contrario, è possibile usare servizi multimediali per elencare gli URL del contenitore di asset.Otherwise, you can use Media Services to list the asset container URLs.
  • Per preparare il contenuto per la distribuzione tramite streaming a bitrate adattivo, è necessario codificare il file in formato intermedio a più velocità in bit (da alto a basso).To prepare content for delivery by adaptive bitrate streaming, the mezzanine file needs to be encoded at multiple bitrates (high to low). Per garantire una transizione normale della qualità, la risoluzione del video viene ridotta quando il bitrate viene ridotto.To ensure graceful transition of quality, the resolution of the video is lowered as the bitrate is lowered. In questo modo si ottiene una cosiddetta scala di codifica, ovvero una tabella di risoluzioni e bitrate (vedere scala a bitrate adattivo generato automaticamente).This results in a so-called encoding ladder–a table of resolutions and bitrates (see auto-generated adaptive bitrate ladder). È possibile usare servizi multimediali per codificare i file in formato intermedio a più velocità in bit.You can use Media Services to encode your mezzanine files at multiple bitrates. In questo modo, si otterrà un set di file MP4 e file di configurazione del flusso associati scritti in un asset nell'account di archiviazione.In doing so, you'll get a set of MP4 files and associated streaming configuration files written to an Asset in your storage account. È quindi possibile usare la funzionalità di creazione dinamica dei pacchetti di servizi multimediali per distribuire il video tramite protocolli di streaming, ad esempio MPEG-Dash e HLS.You can then use the Dynamic Packaging capability in Media Services to deliver the video via streaming protocols like MPEG-DASH and HLS. A questo scopo, è necessario creare un localizzatore di streaming e creare URL di streaming corrispondenti ai protocolli supportati, che possono essere quindi passati a dispositivi/app in base alle relative funzionalità.This requires you to create a Streaming Locator and build streaming URLs corresponding to the supported protocols, which can then be handed off to devices/apps based on their capabilities.

Il diagramma seguente illustra il flusso di lavoro per la codifica su richiesta con la creazione dinamica dei pacchetti.The following diagram shows the workflow for on-demand encoding with dynamic packaging.

Flusso di lavoro per la codifica su richiesta con creazione dinamica dei pacchetti

Questo argomento contiene indicazioni su come codificare il contenuto con Servizi multimediali v3.This topic gives you guidance on how to encode your content with Media Services v3.

Trasformazioni e processiTransforms and jobs

Per eseguire la codifica con servizi multimediali V3, è necessario creare una trasformazione e un processo.To encode with Media Services v3, you need to create a Transform and a Job. La trasformazione definisce una ricetta per le impostazioni di codifica e gli output. il processo è un'istanza della ricetta.The transform defines a recipe for your encoding settings and outputs; the job is an instance of the recipe. Per altre informazioni, vedere Trasformazioni e processi.For more information, see Transforms and Jobs.

Durante la codifica con Servizi multimediali si usano set di impostazioni per indicare al codificatore come elaborare i file multimediali di input.When encoding with Media Services, you use presets to tell the encoder how the input media files should be processed. In servizi multimediali V3 si usa il codificatore standard per codificare i file.In Media Services v3, you use Standard Encoder to encode your files. Ad esempio, è possibile specificare la risoluzione video e/o il numero di canali audio desiderati nel contenuto codificato.For example, you can specify the video resolution and/or the number of audio channels you want in the encoded content.

Si può iniziare rapidamente con uno dei set di impostazioni predefiniti basati sulle procedure consigliate del settore oppure si può compilare un set di impostazioni personalizzato per i requisiti di uno specifico scenario o dispositivo.You can get started quickly with one of the recommended built-in presets based on industry best practices or you can choose to build a custom preset to target your specific scenario or device requirements. Per altre informazioni, vedere l'articolo sulla codifica con una trasformazione personalizzata.For more information, see Encode with a custom Transform.

A partire da gennaio 2019, quando si esegue la codifica con il codificatore standard per produrre file MP4, viene generato un nuovo file con estensione MPI che viene aggiunto all'asset di output.Starting with January 2019, when encoding with the Standard Encoder to produce MP4 file(s), a new .mpi file is generated and added to the output Asset. Questo file MPI è progettato per migliorare le prestazioni per scenari di creazione dinamica dei pacchetti e streaming.This MPI file is intended to improve performance for dynamic packaging and streaming scenarios.

Nota

Non è necessario modificare o rimuovere il file MPI né eseguire alcuna dipendenza nel servizio per l'esistenza o meno di un file di questo tipo.You shouldn't modify or remove the MPI file, or take any dependency in your service on the existence (or not) of such a file.

Creazione dell'input di un processo da un URL HTTPSCreating job input from an HTTPS URL

Quando si inviano processi per elaborare i video, è necessario indicare a servizi multimediali dove trovare il video di input.When you submit Jobs to process your videos, you have to tell Media Services where to find the input video. Una delle opzioni consiste nel specificare un URL HTTPS come input del processo.One of the options is to specify an HTTPS URL as a job input. Attualmente, servizi multimediali V3 non supporta la codifica di trasferimento Chunked sugli URL HTTPS.Currently, Media Services v3 doesn't support chunked transfer encoding over HTTPS URLs.

EsempioExamples

Creazione dell'input di un processo da un file localeCreating job input from a local file

È possibile archiviare il video di input come asset di Servizi multimediali, nel qual caso si crea un asset di input basato su un file archiviato in locale o nel servizio di Archiviazione BLOB di Azure.The input video can be stored as a Media Service Asset, in which case you create an input asset based on a file (stored locally or in Azure Blob storage).

EsempioExamples

Codificare un file locale usando i set di impostazioni predefinitiEncode a local file using built-in presets

Creazione dell'input del processo con il troncamentoCreating job input with subclipping

Quando si codifica un video, è possibile specificare di tagliare o ritagliare anche il file di origine e produrre un output con solo una parte desiderata del video di input.When encoding a video, you can specify to also trim or clip the source file and produce an output that has only a desired portion of the input video. Questa funzionalità funziona con qualsiasi trasformazione compilata usando i set di impostazioni BuiltInStandardEncoderPreset o i set di impostazioni StandardEncoderPreset .This functionality works with any Transform that's built using either the BuiltInStandardEncoderPreset presets, or the StandardEncoderPreset presets.

È possibile specificare di creare un processo con una singola clip di un video su richiesta o di un archivio Live (un evento registrato).You can specify to create a Job with a single clip of a video on-demand or live archive (a recorded event). L'input del processo può essere un asset o un URL HTTPS.The job input could be an Asset or an HTTPS URL.

Suggerimento

Se si vuole eseguire lo streaming di un sublip del video senza ricodificare il video, è consigliabile usare i manifesti di pre-filtro con Dynamic Packager.If you want to stream a sublip of your video without re-encoding the video, consider using Pre-filtering manifests with Dynamic Packager.

EsempioExamples

Ecco alcuni esempi:See examples:

Set di impostazioni predefinitiBuilt-in presets

Servizi multimediali supporta i set di impostazioni di codifica predefiniti seguenti:Media Services supports the following built-in encoding presets:

BuiltInStandardEncoderPresetBuiltInStandardEncoderPreset

BuiltInStandardEncoderPreset viene usato per configurare un set di impostazioni predefinito per la codifica del video di input con il codificatore Standard.BuiltInStandardEncoderPreset is used to set a built-in preset for encoding the input video with the Standard Encoder.

Sono attualmente supportati i set di impostazioni predefiniti seguenti:The following built-in presets are currently supported:

  • EncoderNamedPreset. AACGoodQualityAudio: produce un singolo file MP4 contenente solo audio stereo codificato a 192 kbps.EncoderNamedPreset.AACGoodQualityAudio: produces a single MP4 file containing only stereo audio encoded at 192 kbps.

  • EncoderNamedPreset. AdaptiveStreaming (scelta consigliata): supporta la codifica a bitrate adattivo H. 264.EncoderNamedPreset.AdaptiveStreaming (recommended): This supports H.264 adaptive bitrate encoding. Per altre informazioni, vedere Codificare con una tabella di coppie velocità in bit-risoluzione generata automaticamente.For more information, see auto-generating a bitrate ladder.

  • EncoderNamerPreset. H265AdaptiveStreaming : simile al set di impostazioni AdaptiveStreaming, ma usa il codec HEVC (H. 265).EncoderNamerPreset.H265AdaptiveStreaming : Similar to the AdaptiveStreaming preset, but uses the HEVC (H.265) codec. Produce un set di file MP4 allineati GOP con audio AAC stereo e video H. 265.Produces a set of GOP aligned MP4 files with H.265 video and stereo AAC audio. Genera automaticamente una scala a bitrate in base alla risoluzione di input, alla velocità in bit e alla frequenza dei fotogrammi.Auto-generates a bitrate ladder based on the input resolution, bitrate and frame rate. Il set di impostazioni generato automaticamente non supererà mai la risoluzione di input.The auto-generated preset will never exceed the input resolution. Ad esempio, se l'input è 720p, l'output rimarrà 720p al massimo.For example, if the input is 720p, output will remain 720p at best.

  • EncoderNamedPreset. ContentAwareEncoding: espone un set di impostazioni per la codifica compatibile con il contenuto H. 264.EncoderNamedPreset.ContentAwareEncoding: exposes a preset for H.264 content-aware encoding. Dato qualsiasi contenuto di input, il servizio tenta di determinare automaticamente il numero ottimale di livelli e le impostazioni di velocità in bit e risoluzione appropriate per il recapito tramite flusso adattivo.Given any input content, the service attempts to automatically determine the optimal number of layers, and appropriate bitrate and resolution settings for delivery by adaptive streaming. Gli algoritmi sottostanti continueranno a evolversi nel tempo.The underlying algorithms will continue to evolve over time. L'output conterrà file MP4 con interfoliazione video e audio.The output will contain MP4 files with video and audio interleaved. Per altre informazioni, vedere codifica compatibilecon i contenuti.For more information, see content-aware encoding.

  • EncoderNamedPreset. H265ContentAwareEncoding: espone un set di impostazioni per la codifica compatibile con il contenuto HEVC (H. 265). Produce un set di MP4s allineati a GOP utilizzando la codifica compatibile con il contenuto.EncoderNamedPreset.H265ContentAwareEncoding: exposes a preset for HEVC (H.265) content-aware encoding.Produces a set of GOP-aligned MP4s by using content-aware encoding. Dato un 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 velocità in bit e risoluzione appropriate per il recapito tramite flusso adattivo.Given any input content, the service performs an initial lightweight analysis of the input content, and uses the results to determine the optimal number of layers, appropriate bitrate and resolution settings for delivery by adaptive streaming. Questo set di impostazioni è particolarmente efficace per i video con complessità bassa e media, in cui i file di output saranno a velocità in bit inferiori, ma con una qualità che offre agli utenti un'esperienza ottimale.This preset is particularly effective for low and medium complexity videos, where the output files will be at lower bitrates but at a quality that still delivers a good experience to viewers. L'output conterrà file MP4 con interfoliazione video e audio.The output will contain MP4 files with video and audio interleaved.

    Nota

    Assicurarsi di usare ContentAwareEncoding not ContentAwareEncodingExperimental, che ora è deprecataMake sure to use ContentAwareEncoding not ContentAwareEncodingExperimental which is now deprecated

  • EncoderNamedPreset. H264MultipleBitrate1080p: genera un set di otto file MP4 allineati al GOP, con velocità compresa tra 6000 e 400 kbps e audio AAC stereo.EncoderNamedPreset.H264MultipleBitrate1080p: produces a set of eight GOP-aligned MP4 files, ranging from 6000 kbps to 400 kbps, and stereo AAC audio. La risoluzione parte da 1080p e può scendere fino a 360p.Resolution starts at 1080p and goes down to 360p.

  • EncoderNamedPreset. H264MultipleBitrate720p: genera un set di sei file MP4 allineati al GOP, con velocità compresa tra 3400 e 400 kbps e audio AAC stereo.EncoderNamedPreset.H264MultipleBitrate720p: produces a set of six GOP-aligned MP4 files, ranging from 3400 kbps to 400 kbps, and stereo AAC audio. La risoluzione parte da 720p e può scendere fino a 360p.Resolution starts at 720p and goes down to 360p.

  • EncoderNamedPreset. H264MultipleBitrateSD: genera un set di cinque file MP4 allineati al GOP, con velocità compresa tra 1600 e 400 kbps e audio AAC stereo.EncoderNamedPreset.H264MultipleBitrateSD: produces a set of five GOP-aligned MP4 files, ranging from 1600 kbps to 400 kbps, and stereo AAC audio. La risoluzione parte da 480p e può scendere fino a 360p.Resolution starts at 480p and goes down to 360p.

  • EncoderNamedPreset. H264SingleBitrate1080p: genera un file MP4 in cui il video è codificato con il codec H. 264 a 6750 kbps e un'altezza immagine di 1080 pixel e l'audio stereo è codificato con il codec AAC-LC a 64 kbps.EncoderNamedPreset.H264SingleBitrate1080p: produces an MP4 file where the video is encoded with H.264 codec at 6750 kbps and a picture height of 1080 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps.

  • EncoderNamedPreset. H264SingleBitrate720p: genera un file MP4 in cui il video è codificato con il codec H. 264 a 4500 kbps e un'altezza immagine di 720 pixel e l'audio stereo è codificato con il codec AAC-LC a 64 kbps.EncoderNamedPreset.H264SingleBitrate720p: produces an MP4 file where the video is encoded with H.264 codec at 4500 kbps and a picture height of 720 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps.

  • EncoderNamedPreset. H264SingleBitrateSD: genera un file MP4 in cui il video è codificato con il codec H. 264 a 2200 kbps e un'altezza immagine di 480 pixel e l'audio stereo è codificato con il codec AAC-LC a 64 kbps.EncoderNamedPreset.H264SingleBitrateSD: produces an MP4 file where the video is encoded with H.264 codec at 2200 kbps and a picture height of 480 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps.

  • EncoderNamedPreset. H265SingleBitrate720P: produce un file MP4 in cui il video è codificato con il codec HEVC (H. 265) a 1800 Kbps e un'altezza immagine di 720 pixel e l'audio stereo è codificato con il codec AAC-LC a 128 kbps.EncoderNamedPreset.H265SingleBitrate720P: produces an MP4 file where the video is encoded with HEVC (H.265) codec at 1800 kbps and a picture height of 720 pixels, and the stereo audio is encoded with AAC-LC codec at 128 kbps.

  • EncoderNamedPreset. H265SingleBitrate1080p: produce un file MP4 in cui il video è codificato con il codec HEVC (H. 265) a 3500 Kbps e un'altezza immagine di 1080 pixel e l'audio stereo è codificato con il codec AAC-LC a 128 kbps.EncoderNamedPreset.H265SingleBitrate1080p: produces an MP4 file where the video is encoded with HEVC (H.265) codec at 3500 kbps and a picture height of 1080 pixels, and the stereo audio is encoded with AAC-LC codec at 128 kbps.

  • EncoderNamedPreset. H265SingleBitrate4K: produce un file MP4 in cui il video è codificato con il codec HEVC (H. 265) a 9500 Kbps e un'altezza immagine di 2160 pixel e l'audio stereo è codificato con il codec AAC-LC a 128 kbps.EncoderNamedPreset.H265SingleBitrate4K: produces an MP4 file where the video is encoded with HEVC (H.265) codec at 9500 kbps and a picture height of 2160 pixels, and the stereo audio is encoded with AAC-LC codec at 128 kbps.

Per visualizzare l'elenco dei set di impostazioni più aggiornati, vedere set di impostazioni predefiniti da usare per la codifica di video.To see the most up-to-date presets list, see built-in presets to be used for encoding videos.

Per vedere come vengono usati i set di impostazioni, vedere caricamento, codifica e streaming di file.To see how the presets are used, see Uploading, encoding, and streaming files.

StandardEncoderPresetStandardEncoderPreset

StandardEncoderPreset descrive le impostazioni da usare per la codifica del video di input con il codificatore Standard.StandardEncoderPreset describes settings to be used when encoding the input video with the Standard Encoder. Usare questo set di impostazioni quando si personalizzano i set di impostazioni di trasformazione.Use this preset when customizing Transform presets.

ConsiderazioniConsiderations

Quando si creano set di impostazioni personalizzati, si applicano le considerazioni seguenti:When creating custom presets, the following considerations apply:

  • Tutti i valori per altezza e larghezza sul contenuto AVC devono essere un multiplo di quattro.All values for height and width on AVC content must be a multiple of four.
  • In servizi multimediali di Azure V3 tutti i bitrate di codifica sono in bit al secondo.In Azure Media Services v3, all of the encoding bitrates are in bits per second. Questa impostazione è diversa da quella delle API v2, che hanno usato kilobit al secondo come unità.This is different from the presets with our v2 APIs, which used kilobits/second as the unit. Se, ad esempio, la velocità in bit in V2 è stata specificata come 128 (kilobit al secondo), in V3 verrebbe impostata su 128000 (bit al secondo).For example, if the bitrate in v2 was specified as 128 (kilobits/second), in v3 it would be set to 128000 (bits/second).

Personalizzazione dei set di impostazioniCustomizing presets

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.Media Services fully supports customizing all values in presets to meet your specific encoding needs and requirements. Per esempi che illustrano come personalizzare i set di impostazioni del codificatore, vedere l'elenco seguente:For examples that show how to customize encoder presets, see the list below:

EsempioExamples

Schema preimpostatoPreset schema

In servizi multimediali V3 i set di impostazioni sono entità fortemente tipizzate nell'API stessa.In Media Services v3, presets are strongly typed entities in the API itself. È possibile trovare la definizione dello schema per questi oggetti in Open API Specification (o spavalderia).You can find the "schema" definition for these objects in Open API Specification (or Swagger). È anche possibile visualizzare le definizioni di set di impostazioni (ad esempio StandardEncoderPreset) nell' API REST, .NET SDK (o altri documenti di riferimento di Media Services V3 SDK).You can also view the preset definitions (like StandardEncoderPreset) in the REST API, .NET SDK (or other Media Services v3 SDK reference documentation).

Ridimensionamento della codifica nella versione v3Scaling encoding in v3

Per ridimensionare l'elaborazione di contenuti multimediali, vedere ridimensionare con CLI.To scale media processing, see Scale with CLI. Per gli account creati con la versione 2020-05-01 dell'API o tramite il portale di Azure, le unità di ridimensionamento e media reserved unit non sono più necessarie.For accounts created in with the 2020-05-01 version of the API or through the Azure portal, scaling and media reserved units are no longer required. Il ridimensionamento sarà automatico e gestito internamente dal servizio.Scaling will be automatic and handled by the service internally.

FatturazioneBilling

Servizi multimediali non esegue la fatturazione per i processi annullati o con errori.Media Services does not bill for canceled or errored jobs. Ad esempio, un processo che ha raggiunto il 50% di avanzamento e viene annullato non viene fatturato al 50% dei minuti del processo.For example, a job that has reached 50% progress and is canceled is not billed at 50% of the job minutes. Vengono addebitati solo i processi finiti.You are only charged for finished jobs.

Per ulteriori informazioni, vedere prezzi.For more information, see pricing.

Porre domande, fornire feedback, ottenere aggiornamentiAsk questions, give feedback, get updates

Consultare l'articolo Community di Servizi multimediali di Azure per esaminare i diversi modi in cui è possibile porre domande, fornire feedback e ottenere aggiornamenti su Servizi multimediali.Check out the Azure Media Services community article to see different ways you can ask questions, give feedback, and get updates about Media Services.

Passaggi successiviNext steps