Partager via


Méthode CSourceSeeking.ChangeRate

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

La ChangeRate méthode est appelée lorsque le taux de lecture change.

Syntaxe

virtual HRESULT ChangeRate() = 0;

Paramètres

Cette méthode n’a aucun paramètre.

Valeur retournée

Retourne une valeur HRESULT .

Notes

La méthode CSourceSeeking::SetRate appelle cette méthode, que la classe dérivée doit implémenter. La méthode SetRate met à jour la variable membre CSourceSeeking::m_dRateSeeking , mais ne valide pas la nouvelle valeur. Un taux de zéro doit toujours être rejeté. Les taux inférieurs à zéro indiquent une lecture négative. La plupart des filtres ne prennent pas en charge les taux négatifs.

L’exemple suivant montre une implémentation possible :

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;
}

Configuration requise

Condition requise Valeur
En-tête
Ctlutil.h (include Streams.h)
Bibliothèque
Strmbase.lib (builds de vente au détail) ;
Strmbasd.lib (builds de débogage)

Voir aussi

CSourceSeeking, classe