Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il codificatore audio Dolby è una trasformazione di Media Foundation (MFT) che codifica audio mono o stereo in Dolby Digital, chiamata anche Dolby AC-3. Il codificatore non supporta l'input multicanale, ad esempio la configurazione del canale 5.1.
Importante
Per le versioni di Windows precedenti alla Windows 8, l'implementazione Microsoft della tecnologia Dolby Digital è limitata in termini di programma di licenza Dolby Digital da usare dalle applicazioni Microsoft.
Per altre informazioni sull'audio Dolby Digital, vedere Advanced Television Systems Committee (ATSC) documento Digital Audio Compression Standard (AC-3, E-AC-3) Revisione B.
Identificatore di classe
L'identificatore di classe (CLSID) del codificatore audio Dolby è CLSID_CMSDolbyDigitalEncMFT definito nel file di intestazione wmcodecdsp.h.
Tipi di output
Il tipo di output deve essere impostato prima del tipo di input. Nella tabella seguente sono elencati gli attributi obbligatori e facoltativi per il tipo di supporto di output.
Attributo | Descrizione | Osservazioni |
---|---|---|
MF_MT_MAJOR_TYPE | Tipo principale. | Obbligatorio. Deve essere MFMediaType_Audio. |
MF_MT_SUBTYPE | Sottotipo audio. | Obbligatorio. Deve essere MFAudioFormat_Dolby_AC3. |
MF_MT_AUDIO_SAMPLES_PER_SECOND | Campioni al secondo. | Obbligatorio. Sono supportati i valori seguenti:
|
MF_MT_AUDIO_NUM_CHANNELS | Numero di canali. | Obbligatorio. Deve essere 1 (mono) o 2 (stereo). |
MF_MT_AUDIO_CHANNEL_MASK | Specifica l'assegnazione di canali audio alle posizioni dell'altoparlante. | Facoltativa. Se impostato, il valore deve essere 0x3 per stereo (canali front-sinistro e destro) o 0x4 per mono (canale centrale anteriore). |
MF_MT_AUDIO_AVG_BYTES_PER_SECOND | Velocità di bit del flusso AC-3 codificato, in byte al secondo. | Facoltativa. Vedere Osservazioni per i valori validi. Se questo attributo non è impostato, il codificatore usa una frequenza di bit predefinita, come descritto in Osservazioni. |
Se gli attributi facoltativi non sono impostati, il codificatore li aggiunge al tipo di supporto dopo l'impostazione del tipo.
Tipi di input
Nella tabella seguente sono elencati gli attributi obbligatori e facoltativi per il tipo di supporto di input.
Attributo | Descrizione | Osservazioni |
---|---|---|
MF_MT_MAJOR_TYPE | Tipo principale. | Obbligatorio. Deve essere MFMediaType_Audio. |
MF_MT_SUBTYPE | Sottotipo audio. | Obbligatorio. Deve essere MFAudioFormat_PCM o MFAudioFormat_Float. |
MF_MT_AUDIO_BITS_PER_SAMPLE | Numero di bit per esempio audio. | Obbligatorio. Il valore deve essere 16 se il sottotipo è MFAudioFormat_PCM o 32 se il sottotipo è MFAudioFormat_Float. |
MF_MT_AUDIO_SAMPLES_PER_SECOND | Campioni al secondo. | Obbligatorio. Deve corrispondere al tipo di output. |
MF_MT_AUDIO_NUM_CHANNELS | Numero di canali. | Obbligatorio. Deve corrispondere al tipo di output. |
MF_MT_AUDIO_BLOCK_ALIGNMENT | Allineamento blocchi, in byte. | Obbligatorio. Calcolare il valore come indicato di seguito:
|
MF_MT_AUDIO_AVG_BYTES_PER_SECOND | Frequenza di bit del flusso AC3 codificato, in byte al secondo. | Obbligatorio. Deve essere uguale all'allineamento a blocchi × campioni al secondo. |
MF_MT_AUDIO_CHANNEL_MASK | Specifica l'assegnazione di canali audio alle posizioni dell'altoparlante. | Facoltativa. Se impostato, il valore deve corrispondere al tipo di output. |
MF_MT_AUDIO_VALID_BITS_PER_SAMPLE | Numero di bit validi di dati audio in ogni esempio audio. | Facoltativa. Se impostato, il valore deve essere identico a MF_MT_AUDIO_BITS_PER_SAMPLE. |
Il codificatore non supporta la conversione della frequenza di esempio o la conversione stereo/mono.
Commenti
Ogni frame audio Dolby AC-3 contiene 1536 campioni audio per canale. Tuttavia, ogni buffer di input al codificatore può contenere qualsiasi numero di esempi PCM. Le dimensioni di ogni buffer di input devono essere un multiplo dell'allineamento del blocco. Il codificatore memorizza nella cache gli esempi di input fino a quando non dispone di sufficienti per 1536 esempi audio per canale; a questo punto il codificatore restituisce un frame AC-3.
Ogni buffer di output contiene un frame AC-3 non elaborato. La durata equivale alla durata di 1536 campioni PCM alla frequenza di campionamento corrente (32 msec) a 48 kHz, a 34,83 msec a 44,1 kHz e a 48 msec a 32 kHz. Le dimensioni di ogni buffer di output dipendono dalla frequenza di bit e dalla frequenza di campionamento.
Per specificare la velocità di bit di codifica, impostare l'attributo MF_MT_AUDIO_AVG_BYTES_PER_SECOND nel tipo di output. Nella tabella seguente viene illustrata la relazione tra velocità di bit di codifica e MF_MT_AUDIO_AVG_BYTES_PER_SECOND.
Velocità bit (kbps) | MF_MT_AUDIO_AVG_BYTES_PER_SECOND | Commenti |
---|---|---|
64 | 8000 | Solo Mono. |
80 | 10000 | Solo Mono. |
96 | 12000 | Solo Mono. |
112 | 14000 | Solo Mono. |
128 | 16000 | Mono o stereo. |
160 | 20000 | Mono o stereo. |
192 | 24000 | Mono o stereo. Questa è l'impostazione predefinita per mono. |
224 | 28000 | Mono o stereo. |
256 | 32000 | Mono o stereo. Questa è l'impostazione predefinita per stereo. |
320 | 40000 | Solo stereo. |
384 | 48000 | Solo stereo. |
448 | 56000 | Solo stereo. |
La velocità di bit di codifica predefinita è impostata su 256 kbps per stereo e 192 kbps per mono. Le impostazioni predefinite vengono riflesse nei tipi di supporti restituiti dal metodo FMTransform::GetOutputAvailableType del codificatore.
Tipi di supporti di esempio
Ecco un esempio dei tipi di supporti necessari per codificare PCM a 16 bit, audio stereo a 48 kHz alla velocità di bit predefinita di 256 kbps.
Tipo di supporto di output:
Attributo | Valore |
---|---|
MF_MT_MAJOR_TYPE | MFMediaType_Audio |
MF_MT_SUBTYPE | MFAudioFormat_Dolby_AC3 |
MF_MT_AUDIO_SAMPLES_PER_SECOND | 48000 |
MF_MT_AUDIO_NUM_CHANNELS | 2 |
Tipo di supporto di input:
Attributo | Valore |
---|---|
MF_MT_MAJOR_TYPE | MFMediaType_Audio |
MF_MT_SUBTYPE | MFAudioFormat_PCM |
MF_MT_AUDIO_BITS_PER_SAMPLE | 16 |
MF_MT_AUDIO_SAMPLES_PER_SECOND | 48000 |
MF_MT_AUDIO_NUM_CHANNELS | 2 |
MF_MT_AUDIO_BLOCK_ALIGNMENT | 4 |
MF_MT_AUDIO_AVG_BYTES_PER_SECOND | 192000 |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows 8 [app desktop | App UWP] |
Server minimo supportato |
Nessuno supportato |
DLL |
|
Vedi anche