Funzione MFFrameRateToAverageTimePerFrame (mfapi.h)

Converte una frequenza di fotogrammi video in una durata di fotogrammi.

Sintassi

HRESULT MFFrameRateToAverageTimePerFrame(
  [in]  UINT32 unNumerator,
  [in]  UINT32 unDenominator,
  [out] UINT64 *punAverageTimePerFrame
);

Parametri

[in] unNumerator

Numeratore della frequenza dei fotogrammi.

[in] unDenominator

Denominatore della frequenza dei fotogrammi.

[out] punAverageTimePerFrame

Riceve la durata media di un fotogramma video, in unità da 100 nanosecondi.

Valore restituito

Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Questa funzione è utile per calcolare i timestamp in un esempio, in base alla frequenza dei fotogrammi.

Inoltre, il tempo medio per fotogramma viene usato nelle strutture di formato VIDEOINFOHEADER e VIDEOINFOHEADER2 precedenti. Questa funzione fornisce una conversione standard in modo che tutti i componenti della pipeline possano usare valori coerenti, se devono tradurre tra le strutture di formato meno recenti e gli attributi del tipo di supporto usati in Media Foundation.

Per determinate frequenze di frame comuni, la funzione ottiene la durata del frame da una tabella di ricerca:

Fotogrammi al secondo (virgola mobile) Frame al secondo (frazionaria) Tempo medio per fotogramma
59.94 60000/1001 166833
29.97 30000/1001 333667
23.976 24000/1001 417188
60 60/1 166667
30 30/1 333333
50 50/1 200000
25 25/1 400000
24 24/1 416667
 

La maggior parte dei contenuti video usa una delle frequenze dei fotogrammi elencate qui. Per altre frequenze di frame, la funzione calcola la durata.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione mfapi.h
Libreria Mfplat.lib
DLL Mfplat.dll

Vedi anche

MFAverageTimePerFrameToFrameRate

Funzioni di Media Foundation

Tipi di supporti