Partager via


IXAudio2SourceVoice ::SetFrequencyRatio, méthode (xaudio2.h)

Définit le rapport d’ajustement de la fréquence de la voix.

Syntaxe

HRESULT SetFrequencyRatio(
  [in] float  Ratio,
  [in] UINT32 OperationSet
);

Paramètres

[in] Ratio

Rapport d’ajustement de fréquence. Cette valeur doit se trouver entre XAUDIO2_MIN_FREQ_RATIO et le paramètre MaxFrequencyRatio spécifié lors de la création de la voix (voir IXAudio2 ::CreateSourceVoice). XAUDIO2_MIN_FREQ_RATIO est actuellement de 0,0005, ce qui permet d’abaisser le pas jusqu’à 11 octaves.

[in] OperationSet

Identifie cet appel dans le cadre d’un lot différé. Pour plus d’informations, consultez vue d’ensemble des ensembles d’opérations XAudio2 .

Valeur retournée

Retourne S_OK en cas de réussite, un code d’erreur dans le cas contraire. Consultez Codes d’erreur XAudio2 pour obtenir une description des codes d’erreur.

Remarques

L’ajustement de fréquence est exprimé en tant quefréquence cible source / . La modification du rapport de fréquence modifie le débit audio lu sur la voix. Un ratio supérieur à 1.0 permet de lire l’audio plus rapidement et un ratio inférieur à 1.0 ralentit la lecture de l’audio. De plus, le rapport de fréquence affecte la hauteur de l’audio sur la voix. Par exemple, une valeur de 1.0 n’a aucun effet sur l’audio, alors qu’une valeur de 2.0 augmente la hauteur d’une octave et 0,5 la réduit d’une octave.

Si SetFrequencyRatio est appelé en spécifiant une valeur ratio en dehors de la plage valide, la méthode définit le rapport de fréquence sur la valeur valide la plus proche. Un avertissement sera également généré pour les builds de débogage.

RemarqueIXAudio2SourceVoice ::GetFrequencyRatio retourne toujours le rapport de fréquence actuel de la voix. Toutefois, cela peut ne pas correspondre au ratio défini par l’appel IXAudio2SourceVoice ::SetFrequencyRatio le plus récent : le ratio réel n’est modifié que la prochaine fois que le moteur audio s’exécute après l’appel IXAudio2SourceVoice ::SetFrequencyRatio (ou après l’appel IXAudio2 ::CommitChanges correspondant, si IXAudio2SourceVoice ::SetFrequencyRatio a été appelé avec un ID d’opération différé).
 

Configuration requise pour la plateforme

Windows 10 (XAudio2.9) ; Windows 8, Windows Phone 8 (XAudio 2.8) ; Kit de développement logiciel (SDK) DirectX (XAudio 2.7)

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête xaudio2.h

Voir aussi

Guide pratique pour modifier le pitch vocal

IXAudio2SourceVoice