Compartir a través de


Método CSourceSeeking.ChangeRate

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

Se ChangeRate llama al método cuando cambia la velocidad de reproducción.

Sintaxis

virtual HRESULT ChangeRate() = 0;

Parámetros

Este método no tiene parámetros.

Valor devuelto

Devuelve un valor HRESULT .

Observaciones

El método CSourceSeeking::SetRate llama a este método, que la clase derivada debe implementar. El método SetRate actualiza la variable miembro CSourceSeeking::m_dRateSeeking , pero no valida el nuevo valor. Siempre se debe rechazar una tasa de cero. Las velocidades inferiores a cero indican la reproducción negativa. La mayoría de los filtros no admiten tasas negativas.

En el ejemplo siguiente se muestra una posible implementación:

HRESULT CMyStream::ChangeRate( )
{
    {   // Scope for critical section lock.
        CAutoLock cAutoLockSeeking(CSourceSeeking::m_pLock);
        if( m_dRateSeeking <= 0 ) {
            m_dRateSeeking = 1.0;  // Reset to a reasonable value.
            return E_FAIL;
        }
    }
    UpdateFromSeek();
    return S_OK;
}

Requisitos

Requisito Value
Encabezado
Ctlutil.h (include Streams.h)
Biblioteca
Strmbase.lib (compilaciones comerciales);
Strmbasd.lib (compilaciones de depuración)

Consulte también

CSourceSeeking (clase)