Condividi tramite


Decodificatore video H.264

Il decodificatore video di Media Foundation H.264 è una trasformazione Media Foundation che supporta la decodifica dei profili Baseline, Main e High, fino al livello 5.1.

Il decodificatore video H.264 espone le interfacce seguenti.

Per creare un'istanza del decodificatore, eseguire una delle operazioni seguenti:

Tipi di input

Il tipo di input deve contenere almeno i due attributi seguenti:

Attributo Descrizione
MF_MT_MAJOR_TYPE MFMediaType_Video
MF_MT_SUBTYPE MFVideoFormat_H264 o MFVideoFormat_H264_ES

 

Se il tipo di input contiene solo questi due attributi, il decodificatore offrirà un tipo di output predefinito, che funge da segnaposto. Quando il decodificatore riceve esempi di input sufficienti per produrre un frame di output, segnala una modifica del formato restituendo MF_E_TRANSFORM_STREAM_CHANGE da FMTransform::P rocessOutput. Per informazioni dettagliate sulla gestione delle modifiche del formato, vedere la documentazione di ProcessOutput .

Per evitare una modifica del formato iniziale, specificare quanto più informazioni possibile nel tipo di input, tra cui:

Attributo Descrizione
MF_MT_FRAME_RATE Frequenza dei fotogrammi.
MF_MT_FRAME_SIZE Dimensioni fotogramma.
MF_MT_INTERLACE_MODE Modalità interlace. Nota: Nel video H.264 la struttura interlace può cambiare dinamicamente, quindi il valore consigliato di questo attributo è MFVideoInterlace_MixedInterlaceOrProgressive. Le informazioni interlace nel flusso elementare video hanno la precedenza sul tipo di supporto. Per altre informazioni, vedere Interlacing video.
MF_MT_PIXEL_ASPECT_RATIO Proporzioni pixel.

 

Il tipo di input deve essere impostato prima del tipo di output. Fino a quando non viene impostato il tipo di input, il metodo FMTransform::SetOutputType restituisce MF_E_TRANSFORM_TYPE_NOT_SET.

Tipi di output

Il decodificatore supporta i seguenti sottotipi di output:

  • MFVideoFormat_I420
  • MFVideoFormat_IYUV
  • MFVideoFormat_NV12
  • MFVideoFormat_YUY2
  • MFVideoFormat_YV12

Per altre informazioni su questi sottotipi, vedere GUID del sottotipo video.

Attributi di trasformazione

Il decodificatore H.264 implementa il metodo FMTransform::GetAttributes . Le applicazioni possono usare questo metodo per ottenere o impostare gli attributi seguenti.

Attributo Descrizione
CODECAPI_AVDecVideoAcceleration_H264 Abilita o disabilita l'accelerazione hardware.
CODECAPI_AVDecVideoThumbnailGenerationMode Abilita o disabilita la modalità di generazione delle anteprime.
MF_SA_D3D_AWARE Indica che il decodificatore supporta l'accelerazione video DirectX (DXVA). Trattare come di sola lettura.

 

In Windows 8 il decodificatore H.264 supporta anche gli attributi seguenti.

Attributo Descrizione
CODECAPI_AVLowLatencyMode Abilita o disabilita la decodifica a bassa latenza.
CODECAPI_AVDecNumWorkerThreads Imposta il numero di thread di lavoro usati dal decodificatore.
CODECAPI_AVDecVideoMaxCodedWidth Imposta la larghezza massima dell'immagine accettata dal decodificatore come tipo di input.
CODECAPI_AVDecVideoMaxCodedHeight Imposta l'altezza massima dell'immagine accettata dal decodificatore come tipo di input.
MF_SA_MINIMUM_OUTPUT_SAMPLE_COUNT Specifica il numero massimo di esempi di output.
MFT_DECODER_EXPOSE_OUTPUT_TYPES_IN_NATIVE_ORDER Specifica se un decodificatore espone i tipi di output IYUV/I420 (adatti per la transcodatura) prima di altri formati.

 

In Windows 8 il decodificatore H.264 supporta l'interfaccia ICodecAPI . Questa interfaccia fornisce un'API alternativa per impostare le proprietà del codec seguenti.

Vincoli di formato

Il decodificatore supporta i formati seguenti:

Impostazione Formato
Profili/livelli Profili di base, Main e High, fino al livello 5.1. Per informazioni dettagliate, vedere la specifica ITU-T H.264.
Formati di Chroma 4:2:0 chroma o monocromia
Risoluzione minima 48 × 48 pixel
Risoluzione massima 4096 × 2304 pixel
La risoluzione massima garantita per l'accelerazione DXVA è 1920 × 1088 pixel; a risoluzioni superiori, la decodifica viene eseguita con DXVA, se è supportata dall'hardware sottostante, in caso contrario, la decodifica viene eseguita con il software.
Nota: In Windows 7, la risoluzione massima supportata è 1920 × 1088 pixel per la decodifica sia del software che della DXVA.
DXVA Il decodificatore supporta DXVA versione 2, ma non DXVA versione 1. La decodifica DXVA è supportata solo per baseline, main e flussi di bit con profilo elevato compatibili con main. I flussi di bit baseline compatibili con i principali sono definiti come profile_idc=66 e constrained_set1_flag=1.

 

I dati di input devono essere conformi all'allegato B di ISO/IEC 14496-10. I dati devono includere i codici iniziali. Il decodificatore ignora i byte finché non trova un set di parametri di sequenza (SPS) valido e un set di parametri immagine (PPS) nel flusso di byte.

Il decodificatore non supporta la tecnologia Film Grain.

Nota

Una versione precedente della documentazione indica erroneamente che il decodificatore è supportato in Windows Server 2008 R2.

 

Se è installato Platform Update Supplement per Windows Vista, il decodificatore video H.264 è disponibile in Windows Vista, ma è accessibile solo in Windows Vista usando il lettore di origine.

Requisiti

Requisito Valore
Client minimo supportato
Windows 7 [solo app desktop]
Server minimo supportato
Nessuno supportato
DLL
Msmpeg2vdec.dll

Vedi anche

Oggetti codec

Supporto MPEG-4 in Media Foundation

Formati multimediali supportati in Media Foundation

Tipi di supporti video