KSPROPERTY_AUDIO_PEAKMETER2
Windows 8 introduit la propriété KSPROPERTY_AUDIO_PEAKMETER2 qui signale le niveau de signal audio maximal qui s’est produit au niveau d’un nœud peakmeter (KSNODETYPE_PEAKMETER) depuis la dernière réinitialisation du nœud peakmeter.
Tableau récapitulatif de l’utilisation
Obtenir | Définissez | Cible | Type de descripteur de propriété | Type de valeur de propriété |
---|---|---|---|---|
Oui |
Non |
Nœud via filtrer ou épingler instance |
KSNODEPROPERTY_AUDIO_CHANNEL | LONG |
La valeur de propriété (données d’opération) est de type LONG et spécifie la valeur d’exemple de pic au niveau du nœud. Si la valeur de pointe est négative, sa valeur absolue est utilisée.
Valeur de retour
Une demande de propriété KSPROPERTY_AUDIO_PEAKMETER2 retourne STATUS_SUCCESS pour indiquer qu’elle s’est terminée avec succès. Sinon, la demande retourne une erreur appropriée status code. Le tableau suivant montre une erreur possible status code.
Code d’état | Signification |
---|---|
STATUS_NOT_IMPLEMENTED |
Le filtre KS ne peut pas retourner la valeur actuelle du picmètre. |
Notes
La propriété KSPROPERTY_AUDIO_PEAKMETER2 est presque identique à la propriété KSPROPERTY_AUDIO_PEAKMETER . La propriété KSPROPERTY_AUDIO_PEAKMETER2 a été introduite avec Windows 8 pour fournir un contrôle matériel amélioré d’une topologie de broches. La propriété KSPROPERTY_AUDIO_PEAKMETER héritée est déconseillée et ne doit plus être utilisée.
SignedMinimum doit être défini sur LONG_MIN (au lieu de 0x8000), et SignedMaximum doit avoir la valeur LONG_MAX (au lieu de 0x7fff). Notez également que les valeurs de compteur de pointe sont relatives à cette échelle et que l’échelle est linéaire en amplitude.
Par conséquent, si, par exemple, vous avez une forme d’onde avec des pics négatifs et positifs à -1 et +1 respectivement (sur une échelle qui va de -1 à +1), une valeur de compteur de pointe de LONG_MAX indique avec précision la valeur maximale de forme d’onde pour une fenêtre de temps donnée. À l’inverse, une valeur de compteur de pointe de zéro (0) doit être utilisée pour signaler le silence, où toutes les valeurs de la forme d’onde sont égales à zéro. Toutefois, dans le cas d’une forme d’onde dont les valeurs de pointe sont comprises entre zéro (0) et LONG_MAX, les valeurs de forme d’onde signalées seraient réduites de manière linéaire par rapport aux valeurs d’origine.
Par conséquent, dans le cas de la forme d’onde qui oscille entre -0,5 et +0,5 (sur une échelle allant de -1 à +1), la valeur du compteur de pointe doit être définie sur LONG_MAX/2.
Un filtre audio KS gère cette requête de propriété de manière synchrone. Si la requête réussit, elle réinitialise le picmètre, ce qui initialise la valeur de pic cumulée à zéro. Si la requête échoue, le picmètre n’est pas modifié.
Le système envoie une demande de IOCTL_KS_PROPERTY pour la propriété KSPROPERTY_AUDIO_PEAKMETER2 à l’PASSIVE_LEVEL IRQL.
Spécifications
En-tête |
Ksmedia.h (inclure Ksmedia.h) |