Función MFFrameRateToAverageTimePerFrame (mfapi.h)
Convierte una velocidad de fotogramas de vídeo en una duración de fotogramas.
Sintaxis
HRESULT MFFrameRateToAverageTimePerFrame(
[in] UINT32 unNumerator,
[in] UINT32 unDenominator,
[out] UINT64 *punAverageTimePerFrame
);
Parámetros
[in] unNumerator
Numerador de la velocidad de fotogramas.
[in] unDenominator
Denominador de la velocidad de fotogramas.
[out] punAverageTimePerFrame
Recibe la duración media de un fotograma de vídeo, en unidades de 100 nanosegundos.
Valor devuelto
Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Comentarios
Esta función es útil para calcular marcas de tiempo en una muestra, dada la velocidad de fotogramas.
Además, el tiempo medio por fotograma se usa en las estructuras de formato VIDEOINFOHEADER y VIDEOINFOHEADER2 anteriores. Esta función proporciona una conversión estándar para que todos los componentes de la canalización puedan usar valores coherentes, si necesitan traducirse entre las estructuras de formato anteriores y los atributos de tipo multimedia usados en Media Foundation.
Para ciertas velocidades de fotogramas comunes, la función obtiene la duración del fotograma de una tabla de búsqueda:
Fotogramas por segundo (punto flotante) | Fotogramas por segundo (fracciones) | Promedio de tiempo por fotograma |
---|---|---|
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 mayoría del contenido de vídeo usa una de las velocidades de fotogramas que se enumeran aquí. Para otras velocidades de fotogramas, la función calcula la duración.
Requisitos
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | mfapi.h |
Library | Mfplat.lib |
Archivo DLL | Mfplat.dll |