Método IMFRateControl::SetRate (mfidl.h)
Establece la velocidad de reproducción.
Sintaxis
HRESULT SetRate(
[in] BOOL fThin,
[in] float flRate
);
Parámetros
[in] fThin
Si es TRUE, las secuencias multimedia se afinan. De lo contrario, la secuencia no está delgada. En el caso de los orígenes multimedia y los demultiplexores, el objeto debe finor las secuencias cuando este parámetro es TRUE. Para las transformaciones de bajada, como descodificadores y multiplexores, este parámetro es informativo; notifica al objeto que los flujos de entrada están finos. Para obtener información, vea Acerca del control de velocidad.
[in] flRate
Velocidad de reproducción solicitada. Los valores positivos indican la reproducción directa, los valores negativos indican la reproducción inversa y cero indica el limpieza (el origen entrega un solo fotograma).
Valor devuelto
El método devuelve un valor HRESULT. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros.
Código devuelto | Descripción |
---|---|
|
El método se ha llevado a cabo de forma correcta. |
|
El objeto no admite la reproducción inversa. |
|
El objeto no admite el fino. |
|
El objeto no admite la velocidad de reproducción solicitada. |
|
El objeto no puede cambiar a la nueva velocidad mientras se encuentra en estado de ejecución. |
Comentarios
La sesión multimedia impide algunas transiciones entre límites de velocidad, dependiendo del estado de reproducción actual:
Estado de reproducción | Reenvío/inverso | Reenvío/cero | Inverso/cero |
---|---|---|---|
En ejecución | No | No | No |
En pausa | No | Sí | No |
Detenido | Sí | Sí | Sí |
Si no se admite la transición, el método devuelve MF_E_UNSUPPORTED_RATE_TRANSITION.
Cuando un origen multimedia completa una llamada a SetRate, envía el evento MESourceRateChanged . Otros componentes de canalización no envían este evento.
Si un origen multimedia cambia entre la reproducción delgada y no delgada, las secuencias envían un evento MEStreamThinMode para indicar la transición. Los eventos del origen multimedia no se sincronizan con eventos de las secuencias multimedia. Después de recibir el evento MESourceRateChanged , todavía puede recibir muestras que se ponen en cola antes de que la secuencia cambie al modo fino o no fino. El evento MEStreamThinMode marca el punto exacto de la secuencia donde se produce la transición.
Cuando la sesión multimedia completa una llamada a SetRate, envía el evento MESessionRateChanged .
Requisitos
Cliente mínimo compatible | Windows Vista [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | mfidl.h |
Library | Mfuuid.lib |
Consulte también
Cómo establecer la velocidad de reproducción en la sesión multimedia