Creazione dinamica dei pacchetti in Servizi multimediali versione 3Dynamic packaging in Media Services v3

logo di servizi multimediali v3media services logo v3


Servizi multimediali di Microsoft Azure può essere usato per codificare molti formati di file di origini multimediali.Microsoft Azure Media Services can be used to encode many media source file formats. Tali formati vengono distribuiti tramite protocolli di streaming diversi, con o senza protezione del contenuto, per raggiungere tutti i dispositivi principali, ad esempio dispositivi iOS e Android.It delivers them via different streaming protocols, with or without content protection, to reach all major devices (like iOS and Android devices). Tali client supportano protocolli diversi.These clients understand different protocols. iOS, ad esempio, richiede che i flussi vengano distribuiti nel formato HLS (HTTP Live Streaming), mentre i dispositivi Android supportano HLS e MPEG DASH.For example, iOS requires streams to be delivered in HTTP Live Streaming (HLS) format and Android devices support HLS as well as MPEG DASH.

In Servizi multimediali un endpoint di streaming (origine) rappresenta un servizio di generazione e creazione di pacchetti dinamici (just-in-time) in grado di distribuire contenuti live e on demand direttamente a un'app di riproduzione client.In Media Services, a streaming endpoint (origin) represents a dynamic (just-in-time) packaging and origin service that can deliver your live and on-demand content directly to a client player app. Usa uno dei protocolli multimediali comuni di streaming indicati nella sezione seguente.It uses one of the common streaming media protocols mentioned in the following section. La creazione dinamica dei pacchetti è una funzionalità standard di tutti gli endpoint di streaming.Dynamic packaging is a feature that comes standard on all streaming endpoints.

Per preparare i file di origine per la distribuzioneTo prepare your source files for delivery

Per sfruttare la creazione dinamica dei pacchetti, è necessario codificare il file mezzanine (origine) in un set di file MP4 (ISO Base Media 14496-12) a bitrate multiplo.To take advantage of dynamic packaging, you need to encode your mezzanine (source) file into a set of multiple bitrate MP4 (ISO Base Media 14496-12) files. È necessario avere un asset con i file MP4 codificati e i file di configurazione di streaming richiesti dalla creazione dinamica dei pacchetti di Servizi multimediali.You need to have an asset with the encoded MP4 and streaming configuration files needed by Media Services dynamic packaging. Da questo set di file MP4, è possibile usare la creazione dinamica dei pacchetti per distribuire video tramite i protocolli di streaming multimediale seguenti.From this set of MP4 files, you can use dynamic packaging to deliver video via the streaming media protocols described below.

La creazione dinamica dei pacchetti di Servizi multimediali di Azure supporta solo i file video e audio nel formato contenitore MP4.Azure Media Services dynamic packaging only supports video and audio file in the MP4 container format. I file audio devono essere codificati in un contenitore MP4 anche quando si usano codec alternativi come Dolby.Audio files must be encoded into an MP4 container as well when using alternate codecs like Dolby.

Suggerimento

Un modo per ottenere i file di configurazione di streaming e MP4 consiste nel codificare il file mezzanine con Servizi multimediali.One way to get the MP4 and streaming configuration files is to encode your mezzanine file with Media Services.

Per rendere i video nell'asset codificato disponibili per la riproduzione da parte dei client, è necessario creare un localizzatore di streaming e quindi definire gli URL di streaming.To make videos in the encoded asset available to clients for playback, you have to create a Streaming Locator and build streaming URLs. In base al formato specificato nel manifesto del client di streaming (HLS, MPEG DASH o Smooth Streaming), si riceverà il flusso nel protocollo scelto.Then, based on the specified format in the streaming client manifest (HLS, MPEG DASH, or Smooth Streaming), you receive the stream in the protocol you've chosen.

Di conseguenza, si archiviano e si pagano solo i file in un singolo formato di archiviazione e il servizio Servizi multimediali crea e fornisce la risposta appropriata in base alle richieste di un client.As a result, you only need to store and pay for the files in single storage format and Media Services service will build and serve the appropriate response based on requests from a client.

Se si prevede di proteggere il contenuto usando la crittografia dinamica di Servizi multimediali, vedere Protocolli di streaming e tipi di crittografia.If you plan to protect your content by using Media Services dynamic encryption, see Streaming protocols and encryption types.

Protocollo HLSHLS protocol

Il client di streaming può specificare i formati HLS seguenti:Your streaming client can specify the following HLS formats:

ProtocolloProtocol EsempioExample
HLS V4HLS V4 https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=m3u8-aapl)
HLS V3HLS V3 https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=m3u8-aapl-v3)
HLS CMAFHLS CMAF https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=m3u8-cmaf)

Nota

Le linee guida precedenti di Apple consigliavano che il fallback per le reti a larghezza di banda ridotta fornissero un flusso solo audio.Previous guidelines from Apple recommended that the fallback for low bandwidth networks was to provide an audio-only stream. Al momento, il codificatore di Servizi multimediali genera automaticamente una traccia solo audio. Le linee guida di Apple attuali dichiarano che la traccia solo audio non deve essere inclusa, specialmente per la distribuzione di Apple TV.At present, the Media Services encoder automatically generates an audio-only track. Apple guidelines now state that the audio-only track should not be included, especially for Apple TV distribution. Per evitare che il lettore usi l'impostazione predefinita di una traccia solo audio, è consigliabile usare il tag "audio-only=false" nell'URL, che rimuove il rendering solo audio in HLS o semplicemente usa HLS-V3.In order to prevent the player from defaulting to an audio-only track, we suggest using the “audio-only=false” tag in the URL which removes audio-only rendition in HLS, or simply use HLS-V3. Ad esempio: http://host/locator/asset.ism/manifest(format=m3u8-aapl,audio-only=false).For example, http://host/locator/asset.ism/manifest(format=m3u8-aapl,audio-only=false).

Protocollo MPEG-DASHMPEG-DASH protocol

Il client di streaming può specificare i formati MPEG-DASH seguenti:Your streaming client can specify the following MPEG-DASH formats:

ProtocolloProtocol EsempioExample
MPEG-DASH CSFMPEG-DASH CSF https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=mpd-time-csf)
MPEG-DASH CMAFMPEG-DASH CMAF https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=mpd-time-cmaf)

Protocollo Smooth StreamingSmooth Streaming protocol

Il client di streaming può specificare i formati Smooth Streaming seguenti:Your streaming client can specify the following Smooth Streaming formats:

ProtocolloProtocol Note/esempiNotes/examples
Smooth StreamingSmooth Streaming https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest
Smooth Streaming 2.0 (manifesto legacy)Smooth Streaming 2.0 (legacy manifest) Per impostazione predefinita, il manifesto Smooth Streaming contiene il tag di ripetizione (r-tag).By default, Smooth Streaming manifest format contains the repeat tag (r-tag). Alcuni lettori, tuttavia, non supportano il tag di ripetizione r-tag.However, some players do not support the r-tag. I client con questi lettori possono usare un formato che disabilita gli r-tag:Clients with these players can use a format that disables the r-tag:

https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=fmp4-v20)

Nota

Smooth Streaming richiede che sia audio che video siano presenti nel flusso.Smooth Streaming requires that both audio and video should be present in your stream.

Flusso di lavoro dello streaming on demandOn-demand streaming workflow

I passaggi seguenti indicano un flusso di lavoro comune di streaming di Servizi multimediali in cui viene usata la creazione dinamica dei pacchetti insieme al codificatore Standard in Servizi multimediali di Azure.The following steps show a common Media Services streaming workflow where dynamic packaging is used along with the Standard Encoder in Azure Media Services.

  1. Caricare un file di input, ad esempio MP4, QuickTime/MOV o un altro formato di file supportato.Upload an input file such as a MP4, QuickTime/MOV, or other supported file format. Questo tipo di file è anche detto file di origine o mezzanine.This file is also referred to as the mezzanine or source file. Per l'elenco di formati supportati, vedere Formati supportati dal codificatore standard.For the list of supported formats, see Formats Supported by the Standard Encoder.

  2. Codificare il file mezzanine in un set di file MP4 H.264/AAC a bitrate adattivo.Encode your mezzanine file into an H.264/AAC MP4 adaptive bitrate set.

    Se sono già presenti file codificati da copiare e trasmettere in streaming, usare le API CopyVideo e CopyAudio.If you already have encoded files and just want to copy and stream the files, use: CopyVideo and CopyAudio APIs. Verrà quindi creato un nuovo file MP4 con un manifesto di streaming (file con estensione ism).A new MP4 file with a streaming manifest (.ism file) will be created as a result.

  3. Pubblicare l'asset di output contenente il set MP4 a bitrate adattivo.Publish the output asset that contains the adaptive bitrate MP4 set. La pubblicazione avviene creando un localizzatore di streaming.You publish by creating a streaming locator.

  4. Creare URL destinati a formati diversi (HLS, MPEG-DASH e Smooth Streaming).Build URLs that target different formats (HLS, MPEG-DASH, and Smooth Streaming). L'endpoint di streaming si occupa di gestire il manifesto corretto e le richieste per tutti questi formati diversi.The streaming endpoint would take care of serving the correct manifest and requests for all these different formats.

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

Diagramma di un flusso di lavoro per lo streaming on demand con creazione dinamica dei pacchetti

Il percorso di download è presente nell'immagine precedente solo per mostrare che è possibile scaricare un file MP4 direttamente tramite l'endpoint di streaming (origine). I criteri di streaming scaricabili si specificano nel localizzatore di streaming.The download path is present in the above image just to show you that you can download an MP4 file directly through the streaming endpoint (origin) (you specify the downloadable streaming policy on the streaming locator).
Lo strumento per la creazione dinamica di pacchetti non altera il file.The dynamic packager is not altering the file. Se si vuole, è possibile usare le API di archiviazione BLOB di Azure per accedere a un MP4 direttamente per il download progressivo in modo da ignorare le funzionalità di endpoint di streaming (origine).You can optionally use the Azure blob storage APIs to access an MP4 directly for progressive downloading if you wish to bypass the streaming endpoint (origin) features.

Eseguire la codifica in MP4 a velocità in bit adattivaEncode to adaptive bitrate MP4s

Gli articoli seguenti illustrano alcuni esempi di come codificare un video con Servizi multimediali:The following articles show examples of how to encode a video with Media Services:

Consultare l'elenco di codec e formati del codificatore standard.See the list of Standard Encoder formats and codecs.

Flusso di lavoro dello streaming liveLive streaming workflow

Un evento live può essere impostato su un pass-through (un codificatore live locale invia un flusso a bitrate multiplo) o sulla codifica live (un codificatore live locale invia un flusso a bitrate singolo).A live event can be set to either a pass-through (an on-premises live encoder sends a multiple bitrate stream) or live encoding (an on-premises live encoder sends a single bitrate stream).

Ecco un flusso di lavoro comune per lo streaming live con la creazione dinamica dei pacchetti:Here's a common workflow for live streaming with dynamic packaging:

  1. Creare un evento live.Create a live event.
  2. Ottenere l'URL di inserimento e configurare il codificatore a livello locale per usare l'URL per inviare il feed di contributo.Get the ingest URL and configure your on-premises encoder to use the URL to send the contribution feed.
  3. Ottenere l'URL di anteprima e usarlo per verificare che l'input dal codificatore venga ricevuto.Get the preview URL and use it to verify that the input from the encoder is being received.
  4. Creare un nuovo asset.Create a new asset.
  5. Creare un output live e usare il nome dell'asset creato.Create a live output and use the asset name that you created.
    L'output live archivia il flusso nell'asset.The live output archives the stream into the asset.
  6. Creare un localizzatore di streaming con i tipi di criteri di streaming predefiniti.Create a streaming locator with the built-in streaming policy types.
    Se si prevede di crittografare il contenuto, rivedere la Panoramica della protezione del contenuto.If you intend to encrypt your content, review Content protection overview.
  7. Elencare i percorsi nel localizzatore di streaming per ottenere gli URL da usare.List the paths on the streaming locator to get the URLs to use.
  8. Ottenere il nome host per l'endpoint di streaming da cui si vuole trasmettere.Get the host name for the streaming endpoint you want to stream from.
  9. Creare URL destinati a formati diversi (HLS, MPEG-DASH e Smooth Streaming).Build URLs that target different formats (HLS, MPEG-DASH, and Smooth Streaming). L'endpoint di streaming si occupa di gestire il manifesto corretto e le richieste per i diversi formati.The streaming endpoint takes care of serving the correct manifest and requests for the different formats.

Questo diagramma illustra il flusso di lavoro per lo streaming live con la creazione dinamica dei pacchetti:This diagram shows the workflow for live streaming with dynamic packaging:

Diagramma di un flusso di lavoro per la codifica pass-through con creazione dinamica dei pacchetti

Per informazioni sullo streaming live in Servizi multimediali v3, vedere Panoramica dello streaming live.For information about live streaming in Media Services v3, see Live streaming overview.

Codec video supportati dalla creazione dinamica dei pacchettiVideo codecs supported by Dynamic Packaging

La creazione dinamica dei pacchetti supporta file video nel formato di file contenitore MP4 che contengono video codificati con H.264 (MPEG-4 AVC o AVC1) o H.265 (HEVC, hev1 o hvc1).Dynamic packaging supports video files that are in the MP4 container file format and contain video that is encoded with H.264 (MPEG-4 AVC or AVC1) or H.265 (HEVC, hev1, or hvc1).

Nota

Con la creazione dinamica dei pacchetti sono state testate risoluzioni fino a 4K e frequenze dei fotogrammi fino a 60 fotogrammi al secondo.Resolutions of up to 4K and frame rates of up to 60 frames/second have been tested with dynamic packaging.

Codec audio supportati dalla creazione dinamica dei pacchettiAudio codecs supported by dynamic packaging

La creazione dinamica dei pacchetti supporta anche i file audio archiviati nel formato contenitore di file MP4 che contengono il flusso audio codificato in uno dei codec seguenti:Dynamic packaging also supports audio files that are stored in the MP4 file container format containing encoded audio stream in one of the following codecs:

  • AAC (AAC-LC, HE-AAC v1 o HE-AAC v2).AAC (AAC-LC, HE-AAC v1, or HE-AAC v2).

  • Dolby Digital Plus (Enhanced AC-3 o E-AC3).Dolby Digital Plus (Enhanced AC-3 or E-AC3). Per essere supportato dalla creazione dinamica dei pacchetti, l'audio codificato deve essere archiviato nel formato contenitore MP4.The encoded audio must be stored in the MP4 container format to work with Dynamic Packaging.

  • Dolby AtmosDolby Atmos

    Lo streaming di contenuti Atmos Dolby è supportato per gli standard come il protocollo MPEG-DASH con MP4 frammentato CSF (Common Streaming Format) o CMAF (Common Media Application Format) e tramite HTTP Live Streaming (HLS) con CMAF.Streaming Dolby Atmos content is supported for standards like the MPEG-DASH protocol with either Common Streaming Format (CSF) or Common Media Application Format (CMAF) fragmented MP4, and via HTTP Live Streaming (HLS) with CMAF.

  • DTSDTS
    I codec DTS supportati dai formati di creazione dei pacchetti DASH-CSF, DASH-CMAF, HLS-M2TS e HLS-CMAF sono:DTS codecs supported by DASH-CSF, DASH-CMAF, HLS-M2TS, and HLS-CMAF packaging formats are:

    • DTS Digital Surround (dtsc)DTS Digital Surround (dtsc)
    • DTS-HD High Resolution e DTS-HD Master Audio (dtsh)DTS-HD High Resolution and DTS-HD Master Audio (dtsh)
    • DTS Express (dtse)DTS Express (dtse)
    • DTS-HD Lossless (senza core) (dtsl)DTS-HD Lossless (no core) (dtsl)

La creazione dinamica dei pacchetti supporta più tracce audio con DASH o HLS (versione 4 o successive) per lo streaming di asset che hanno diverse tracce audio con più codec e linguaggi.Dynamic packaging supports multiple audio tracks with DASH or HLS (version 4 or later) for streaming assets that have multiple audio tracks with multiple codecs and languages.

Per tutti i codec audio elencati sopra, l'audio codificato deve essere archiviato nel formato contenitore MP4 per essere supportato dalla creazione dinamica dei pacchetti.For all of the above audio codecs, the encoded audio must be stored in the MP4 container format to work with Dynamic Packaging. Il servizio non supporta i formati di file di flusso elementare non elaborato nell'archiviazione BLOB (ad esempio, il formato seguente non è supportato - .dts, .ac3).The service does not support raw elementary stream file formats on blob storage (for example the following would not be supported - .dts, .ac3.)

Per la creazione di pacchetti audio sono supportati solo i file con estensione mp4 o mp4a.Only files with the .mp4 of .mp4a extension are supported for audio packaging.

LimitazioniLimitations

Limitazione di iOS per l'audio AAC 5.1iOS limitation on AAC 5.1 audio

I dispositivi Apple iOS non supportano il codec audio AAC 5.1.Apple iOS devices do not support 5.1 AAC audio codec. L'audio multicanale deve essere codificato usando i codec Dolby Digital o Dolby Digital Plus.Multi-channel audio must be encoded using Dolby Digital or Dolby Digital Plus codecs.

Per informazioni dettagliate, vedere la specifica per la creazione di contenuti HLS per dispositivi Apple.For detailed information, see HLS authoring specification for apple devices.

Nota

Servizi multimediali non supporta la codifica di formati audio multicanale Dolby Digital, Dolby Digital Plus o Dolby Digital Plus con Dolby Atmos.Media Services does not support encoding of Dolby Digital, Dolby Digital Plus or Dolby Digital Plus with Dolby Atmos multi-channel audio formats.

Audio Dolby DigitalDolby Digital audio

La creazione dinamica dei pacchetti di Servizi multimediali non supporta attualmente file che contengono audio Dolby Digital (AC3), perché questo è considerato un codec legacy di Dolby.Media Services dynamic packaging does not currently support files that contain Dolby Digital (AC3) audio (as this is considered a legacy codec by Dolby).

ManifestiManifests

Nella creazione dinamica dei pacchetti di Servizi multimediali i manifesti dei client di streaming per HLS, MPEG-DASH e Smooth Streaming vengono generati dinamicamente in base al selettore di formato nell'URL.In Media Services dynamic packaging, the streaming client manifests for HLS, MPEG-DASH, and Smooth Streaming are dynamically generated based on the format selector in the URL.

Un file manifesto include alcuni metadati di streaming, tra cui il tipo di traccia (audio, video o testo), il nome della traccia, l'ora di inizio e di fine, la velocità in bit (qualità), le lingue della traccia, la finestra di presentazione (finestra scorrevole di durata fissa) e un codec video (FourCC).A manifest file includes streaming metadata such as track type (audio, video, or text), track name, start and end time, bitrate (qualities), track languages, presentation window (sliding window of fixed duration), and video codec (FourCC). Indica inoltre al lettore come recuperare il frammento successivo fornendo informazioni sui successivi frammenti video riproducibili disponibili e il relativo percorso.It also instructs the player to retrieve the next fragment by providing information about the next playable video fragments that are available and their location. I frammenti (o segmenti) sono i "blocchi" effettivi di un contenuto video.Fragments (or segments) are the actual "chunks" of video content.

EsempiExamples

HLSHLS

Di seguito è riportato un esempio di file manifesto HLS, detto anche playlist master HLS:Here's an example of an HLS manifest file, also called an HLS master playlist:

#EXTM3U
#EXT-X-VERSION:4
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",NAME="aac_eng_2_128041_2_1",LANGUAGE="eng",DEFAULT=YES,AUTOSELECT=YES,URI="QualityLevels(128041)/Manifest(aac_eng_2_128041_2_1,format=m3u8-aapl)"
#EXT-X-STREAM-INF:BANDWIDTH=536608,RESOLUTION=320x180,CODECS="avc1.64000d,mp4a.40.2",AUDIO="audio"
QualityLevels(381048)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=536608,RESOLUTION=320x180,CODECS="avc1.64000d",URI="QualityLevels(381048)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=884544,RESOLUTION=480x270,CODECS="avc1.640015,mp4a.40.2",AUDIO="audio"
QualityLevels(721495)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=884544,RESOLUTION=480x270,CODECS="avc1.640015",URI="QualityLevels(721495)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=1327398,RESOLUTION=640x360,CODECS="avc1.64001e,mp4a.40.2",AUDIO="audio"
QualityLevels(1154816)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=1327398,RESOLUTION=640x360,CODECS="avc1.64001e",URI="QualityLevels(1154816)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=2413312,RESOLUTION=960x540,CODECS="avc1.64001f,mp4a.40.2",AUDIO="audio"
QualityLevels(2217354)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=2413312,RESOLUTION=960x540,CODECS="avc1.64001f",URI="QualityLevels(2217354)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=3805760,RESOLUTION=1280x720,CODECS="avc1.640020,mp4a.40.2",AUDIO="audio"
QualityLevels(3579827)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=3805760,RESOLUTION=1280x720,CODECS="avc1.640020",URI="QualityLevels(3579827)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=139017,CODECS="mp4a.40.2",AUDIO="audio"
QualityLevels(128041)/Manifest(aac_eng_2_128041_2_1,format=m3u8-aapl)

MPEG-DASHMPEG-DASH

Di seguito è riportato un esempio di file manifesto MPEG-DASH, detto anche MPEG-DASH MPD (Media Presentation Description):Here's an example of an MPEG-DASH manifest file, also called an MPEG-DASH Media Presentation Description (MPD):

<?xml version="1.0" encoding="UTF-8"?>
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" mediaPresentationDuration="PT1M10.315S" minBufferTime="PT7S">
   <Period>
      <AdaptationSet id="1" group="5" profiles="ccff" bitstreamSwitching="false" segmentAlignment="true" contentType="audio" mimeType="audio/mp4" codecs="mp4a.40.2" lang="en">
         <SegmentTemplate timescale="10000000" media="QualityLevels($Bandwidth$)/Fragments(aac_eng_2_128041_2_1=$Time$,format=mpd-time-csf)" initialization="QualityLevels($Bandwidth$)/Fragments(aac_eng_2_128041_2_1=i,format=mpd-time-csf)">
            <SegmentTimeline>
               <S d="60160000" r="10" />
               <S d="41386666" />
            </SegmentTimeline>
         </SegmentTemplate>
         <Representation id="5_A_aac_eng_2_128041_2_1_1" bandwidth="128041" audioSamplingRate="48000" />
      </AdaptationSet>
      <AdaptationSet id="2" group="1" profiles="ccff" bitstreamSwitching="false" segmentAlignment="true" contentType="video" mimeType="video/mp4" codecs="avc1.640020" maxWidth="1280" maxHeight="720" startWithSAP="1">
         <SegmentTemplate timescale="10000000" media="QualityLevels($Bandwidth$)/Fragments(video=$Time$,format=mpd-time-csf)" initialization="QualityLevels($Bandwidth$)/Fragments(video=i,format=mpd-time-csf)">
            <SegmentTimeline>
               <S d="60060000" r="10" />
               <S d="42375666" />
            </SegmentTimeline>
         </SegmentTemplate>
         <Representation id="1_V_video_1" bandwidth="3579827" width="1280" height="720" />
         <Representation id="1_V_video_2" bandwidth="2217354" codecs="avc1.64001F" width="960" height="540" />
         <Representation id="1_V_video_3" bandwidth="1154816" codecs="avc1.64001E" width="640" height="360" />
         <Representation id="1_V_video_4" bandwidth="721495" codecs="avc1.640015" width="480" height="270" />
         <Representation id="1_V_video_5" bandwidth="381048" codecs="avc1.64000D" width="320" height="180" />
      </AdaptationSet>
   </Period>
</MPD>

Smooth StreamingSmooth Streaming

Di seguito è riportato un esempio di file manifesto Smooth Streaming:Here's an example of a Smooth Streaming manifest file:

<?xml version="1.0" encoding="UTF-8"?>
<SmoothStreamingMedia MajorVersion="2" MinorVersion="2" Duration="703146666" TimeScale="10000000">
   <StreamIndex Chunks="12" Type="audio" Url="QualityLevels({bitrate})/Fragments(aac_eng_2_128041_2_1={start time})" QualityLevels="1" Language="eng" Name="aac_eng_2_128041_2_1">
      <QualityLevel AudioTag="255" Index="0" BitsPerSample="16" Bitrate="128041" FourCC="AACL" CodecPrivateData="1190" Channels="2" PacketSize="4" SamplingRate="48000" />
      <c t="0" d="60160000" r="11" />
      <c d="41386666" />
   </StreamIndex>
   <StreamIndex Chunks="12" Type="video" Url="QualityLevels({bitrate})/Fragments(video={start time})" QualityLevels="5">
      <QualityLevel Index="0" Bitrate="3579827" FourCC="H264" MaxWidth="1280" MaxHeight="720" CodecPrivateData="0000000167640020ACD9405005BB011000003E90000EA600F18319600000000168EBECB22C" />
      <QualityLevel Index="1" Bitrate="2217354" FourCC="H264" MaxWidth="960" MaxHeight="540" CodecPrivateData="000000016764001FACD940F0117EF01100000303E90000EA600F1831960000000168EBECB22C" />
      <QualityLevel Index="2" Bitrate="1154816" FourCC="H264" MaxWidth="640" MaxHeight="360" CodecPrivateData="000000016764001EACD940A02FF9701100000303E90000EA600F162D960000000168EBECB22C" />
      <QualityLevel Index="3" Bitrate="721495" FourCC="H264" MaxWidth="480" MaxHeight="270" CodecPrivateData="0000000167640015ACD941E08FEB011000003E90000EA600F162D9600000000168EBECB22C" />
      <QualityLevel Index="4" Bitrate="381048" FourCC="H264" MaxWidth="320" MaxHeight="180" CodecPrivateData="000000016764000DACD941419F9F011000003E90000EA600F14299600000000168EBECB22C" />
      <c t="0" d="60060000" r="11" />
      <c d="42375666" />
   </StreamIndex>
</SmoothStreamingMedia>

Denominazione delle tracce nel manifestoNaming of tracks in the manifest

Se nel file con estensione ism viene specificato un nome di traccia audio, Servizi multimediali aggiunge un elemento Label all'interno di AdaptationSet per specificare le informazioni di texturing per la traccia audio specifica. Esempio del manifesto DASH di output:If an audio track name is specified in the .ism file, Media Services adds a Label element within an AdaptationSet to specify the textural information for the specific audio track. An example of the output DASH manifest:

<AdaptationSet codecs="mp4a.40.2" contentType="audio" lang="en" mimeType="audio/mp4" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
  <Label>audio_track_name</Label>
  <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
  <Representation audioSamplingRate="48000" bandwidth="131152" id="German_Forest_Short_Poem_english-en-68s-2-lc-128000bps_seg">
    <BaseURL>German_Forest_Short_Poem_english-en-68s-2-lc-128000bps_seg.mp4</BaseURL>
  </Representation>
</AdaptationSet>

Il lettore può usare l'elemento Label da visualizzare nell'interfaccia utente.The player can use the Label element to display on its UI.

Segnalazione delle tracce di descrizione audioSignaling audio description tracks

È possibile aggiungere una traccia audio al video per aiutare i clienti con problemi di vista a seguire la registrazione ascoltando la narrazione.You can add a narration track to your video to help visually impaired clients follow the video recording by listening to the narration. È necessario annotare una traccia audio come descrizione audio nel manifesto.You need to annotate an audio track as audio description in the manifest. A questo scopo, aggiungere i parametri "accessibility" e "role" al file con estensione ism.To do that, add “accessibility” and “role” parameters to the .ism file. È responsabilità del cliente impostare correttamente questi parametri per segnalare una traccia audio come descrizione audio.It's your responsibility to set these parameters correctly to signal an audio track as audio description. Ad esempio, aggiungere <param name="accessibility" value="description" /> e <param name="role" value="alternate" al file ISM per una traccia audio specifica.For example, add <param name="accessibility" value="description" /> and <param name="role" value="alternate" to the .ism file for a specific audio track.

Per altre informazioni, vedere l'esempio Come segnalare una traccia audio descrittiva.For more information, see the How to signal a descriptive audio track example.

Manifesto Smooth StreamingSmooth Streaming manifest

Se si riproduce un flusso di Smooth Streaming, il manifesto conterrà i valori negli attributi Accessibility e Role per la traccia audio. Role="alternate" Accessibility="description" verrebbe aggiunto ad esempio nell'elemento StreamIndex per indicare che si tratta di una descrizione audio.If you're playing a Smooth Streaming stream, the manifest would carry values in Accessibility and Role attributes for that audio track. For example, Role="alternate" Accessibility="description" would be added in the StreamIndex element to indicate it's an audio description.

Manifesto DASHDASH manifest

Per il manifesto DASH, verranno aggiunti i due elementi seguenti per segnalare la descrizione audio:For DASH manifest, the following two elements would be added to signal the audio description:

<Accessibility schemeIdUri="urn:mpeg:dash:role:2011" value="description"/>
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="alternate"/>

Playlist HLSHLS playlist

Per HLS V7 e versioni successive a (format=m3u8-cmaf), la playlist contiene AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video" quando viene segnalata la traccia della descrizione audio.For HLS v7 and above (format=m3u8-cmaf), its playlist would carry AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video" when the audio description track is signaled.

EsempioExample

Per altre informazioni, vedere Come segnalare tracce di descrizione audio.For more information, see How to signal audio description tracks.

Manifesto dinamicoDynamic manifest

Per controllare il numero di tracce, i formati, la velocità in bit e gli intervalli di tempo di presentazione che vengono inviati ai lettori, è possibile usare i filtri dinamici con la creazione dinamica dei pacchetti di Servizi multimediali.To control the number of tracks, formats, bitrates, and presentation time windows that are sent to players, you can use dynamic filtering with the Media Services dynamic packager. Per altre informazioni, vedere Filtro preliminare dei manifesti con la creazione dinamica dei pacchetti.For more information, see Pre-filtering manifests with the dynamic packager.

Crittografia dinamicaDynamic encryption

È possibile usare la crittografia dinamica per crittografare dinamicamente i contenuti live o on demand tramite AES-128 o con uno dei tre principali sistemi DRM (Digital Rights Management): Microsoft PlayReady, Google Widevine e Apple FairPlay.You can use dynamic encryption to dynamically encrypt your live or on-demand content with AES-128 or any of the three major digital rights management (DRM) systems: Microsoft PlayReady, Google Widevine, and Apple FairPlay. Servizi multimediali fornisce inoltre un servizio per la distribuzione di chiavi AES e licenze Digital Rights Management ai client autorizzati.Media Services also provides a service for delivering AES keys and DRM licenses to authorized clients. Per altre informazioni, vedere Crittografia dinamica.For more information, see dynamic encryption.

Nota

Widevine è un servizio fornito da Google Inc. e soggetto alle condizioni per l'utilizzo e all'informativa sulla privacy di Google Inc.Widevine is a service provided by Google Inc. and subject to the terms of service and Privacy Policy of Google, Inc.

Ulteriori informazioniMore information

Consultare 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 Azure Media Services community to see different ways you can ask questions, give feedback, and get updates about Media Services.

Richiesta di assistenzaNeed help?

Per aprire un ticket di supporto, passare a Nuova richiesta di supporto.You can open a support ticket by navigating to New support request.

Passaggi successiviNext steps

Caricare, codificare ed eseguire lo streaming dei videoUpload, encode, and stream videos