KSPROPERTY_STREAM_RATECAPABILITY
La propriété KSPROPERTY_STREAM_RATECAPABILITY permet à un gestionnaire de graphe d’interroger tous les points de connexion impliqués dans le flux d’un flux particulier (obtenu via KSPROPERTY_PIN_DATAROUTING) pour leur capacité à ajuster un taux demandé au taux nominal.
Tableau récapitulatif de l’utilisation
Get | Set | Cible | Type de descripteur de propriété | Type de valeur de propriété |
---|---|---|---|---|
Oui |
Non |
Épingle |
Remarques
KSPROPERTY_STREAM_RATECAPABILITY doivent être implémentés si une broche autorise des changements de taux, ou si l’interface entre les broches topologiquement liées est différente et entraîne l’utilisation d’un format d’horodatage différent. La propriété peut également être utilisée pour traduire les formats d’horodatage en général, comme ignorer les demandes de dégradation.
La propriété est prise en charge par des broches qui modifient le débit des données par le biais de modifications de rééchantillonnage ou d’horodatage. Tous les changements de taux impliquent la demande d’un taux et la détermination de la quantité d’une broche spécifique qui peut corriger ce taux pour obtenir le taux nominal de 1,0. Par exemple, une broche demandant un taux de lecture vidéo de 2,0 impliquerait une demande de rendu à deux fois la vitesse nominale du clip vidéo ; une demande de taux de 0,5 impliquerait un rendu à demi-vitesse.
La demande de taux contient à la fois l’heure de début de la présentation et la durée de cette demande de débit. Cela permet de prendre en compte les contraintes qui peuvent s’appliquer à des parties spécifiques d’un flux de données. L’heure de présentation, la paire numérateur/dénominateur et les unités de durée sont exprimées en termes de l’interface spécifiée dans la structure. Si aucune interface standard n’est utilisée, les requêtes de modification de débit initiales ne peuvent pas être envoyées à une broche.
Une broche doit être en mesure d’accepter les identificateurs d’interface utilisés par n’importe quelle broche avec une topologie similaire. Il doit également traduire l’identificateur d’interface et les unités de temps en ses propres valeurs correspondantes. De cette façon, un client peut parcourir un graphique à partir d’un point d’interface connu et avoir des unités traduites par des points de connexion à chaque étape du processus.
Il est important de prendre en charge cette propriété si des modifications d’interface sont effectuées même si des modifications de débit ne peuvent pas être effectuées, de sorte que l’interface et les unités de temps peuvent être ajustées lorsque des requêtes sont effectuées. Le résultat ne modifierait pas le taux retourné, mais modifierait l’interface, PresentationStart et la durée.
Les demandes de capacité de débit ne peuvent être effectuées qu’à l’état Pause ou Exécuter et deviennent non valides après avoir changé d’état. Les requêtes dont le taux est initialement 1.0 doivent toujours réussir, car elles ne sont généralement que des demandes de traduction de formats d’horodatage.
Configuration requise
En-tête |
Ks.h (inclure Ks.h) |