API XAudio2
Vue d’ensemble de la technologie des API XAudio2.
Pour développer des API XAudio2, vous avez besoin des en-têtes suivants :
Pour obtenir des conseils de programmation pour cette technologie, consultez :
Classe
CXAPOBase Implémentation par défaut de l’interface IXAPO. |
CXAPOParametersBase Implémentation par défaut de l’interface IXAPOParameters. |
Énumérations
HrtfDirectivityType Indique l’un des nombreux modèles de directivité des actions. |
HrtfDistanceDecayType Indique un type de désintégration basé sur la distance appliqué à un son. |
HrtfEnvironment Indique l’un des types d’environnement boursier. |
XAPO_BUFFER_FLAGS Décrit le contenu d’une mémoire tampon de flux. |
XAUDIO2_FILTER_TYPE Indique le type de filtre. |
Fonctions
AddRef Ajoute une référence à l’objet XAudio2. |
BeginProcess Retourne les paramètres de processus actuels. |
CalcInputFrames Retourne le nombre d’images d’entrée nécessaires pour générer le nombre donné d’images de sortie. |
CalcOutputFrames Retourne le nombre d’images de sortie qui seront générées à partir d’un nombre donné d’images d’entrée. |
CommitChanges Applique atomiquement un ensemble d’opérations étiquetées avec un identificateur donné. |
CreateFX Crée une instance de l’effet XAPOFX demandé. |
CreateHrtfApo Crée une instance de l’interface IXAPO pour le traitement de la fonction de transfert liée à la tête (HRTF). |
CreateMasteringVoice Crée et configure une voix de mastering. |
CreateSourceVoice Crée et configure une voix source. |
CreateSubmixVoice Crée et configure une voix de sous-mixage. |
CXAPOBase Crée un instance de la classe CXAPOBase. |
CXAPOParametersBase Crée un instance de la classe CXAPOParametersBase. |
DestroyVoice Détruit la voix. Si nécessaire, arrête la voix et la supprime du graphique XAudio2. |
DisableEffect Désactive l’effet à une position donnée dans la chaîne d’effets de la voix. |
Discontinuité Avertit une voix XAudio2 qu’il n’y a plus de mémoires tampons après la dernière qui se trouve actuellement dans sa file d’attente. |
EnableEffect Active l’effet à une position donnée dans la chaîne d’effets de la voix. |
EndProcess Notifie CXAPOParametersBase que le XAPO a terminé d’accéder aux paramètres de processus actuels. |
ExitLoop Arrête la boucle de la voix lorsqu’elle atteint la fin de la région de boucle actuelle. |
FlushSourceBuffers Supprime toutes les mémoires tampons audio en attente de la file d’attente vocale. |
GetChannelMask Retourne le masque de canal pour cette voix. |
GetChannelVolumes Retourne les niveaux de volume de la voix, par canal. |
GetEffectParameters Retourne les paramètres spécifiques à l’effet actuel d’un effet donné dans la chaîne d’effets de la voix. |
GetEffectState Retourne l’état d’exécution de l’effet à une position spécifiée dans la chaîne d’effets de la voix. |
GetFilterParameters Obtient les paramètres de filtre de la voix. |
GetFrequencyRatio Retourne le rapport d’ajustement de la fréquence de la voix. |
GetOutputFilterParameters Retourne les paramètres de filtre de l’un des envois de cette voix. |
GetOutputMatrix Obtient le niveau de volume de chaque canal de la sortie finale pour la voix. Ces canaux sont mappés aux canaux d’entrée d’une voix de destination spécifiée. |
GetParameters Obtient les valeurs actuelles pour tous les paramètres spécifiques à l’effet. |
GetPerformanceData Retourne les détails de l’utilisation actuelle des ressources, tels que la mémoire disponible ou l’utilisation du processeur. |
GetRegistrationProperties Retourne les propriétés d’inscription d’un XAPO. |
GetRegistrationPropertiesInternal Retourne un pointeur vers la structure XAPO_REGISTRATION_PROPERTIES contenant les propriétés d’inscription avec XAPO. |
GetState Retourne les données actuelles de position du curseur de la voix. |
GetVoiceDetails Retourne des informations sur les indicateurs de création, les canaux d’entrée et la fréquence d’échantillonnage d’une voix. |
GetVolume Obtient le niveau de volume global actuel de la voix. |
Initialiser Effectue toute initialisation spécifique à l’effet. |
IsInputFormatSupported Interroge si un format d’entrée spécifique est pris en charge pour un format de sortie donné. |
IsLocked Demande si le XAPO est verrouillé. |
IsOutputFormatSupported Interroge si un format de sortie spécifique est pris en charge pour un format d’entrée donné. |
LockForProcess Appelé par XAudio2 pour verrouiller les configurations d’entrée et de sortie d’un XAPO, ce qui lui permet d’effectuer une initialisation finale avant l’appel de Process sur le thread en temps réel. |
OnBufferEnd Appelé lorsque la voix a fini de traiter une mémoire tampon. |
OnBufferStart Appelé lorsque la voix est sur le point de commencer à traiter une nouvelle mémoire tampon audio. |
OnCriticalError Appelé si une erreur système critique se produit et nécessite la fermeture et le redémarrage de XAudio2. |
OnLoopEnd Appelé lorsque la voix atteint la position de fin d’une boucle. |
OnProcessingPassEnd Appelé par XAudio2 juste après la fin d’une passe de traitement audio. |
OnProcessingPassStart Appelé par XAudio2 juste avant le début d’une passe de traitement audio. |
OnSetParameters Appelé par IXAPOParameters::SetParameters pour permettre la validation des paramètres définis par l’utilisateur. |
OnStreamEnd Appelé lorsque la voix vient de terminer la lecture d’un flux audio contigu. |
OnVoiceError Appelé lorsqu’une erreur critique se produit pendant le traitement vocal. |
OnVoiceProcessingPassEnd Appelé juste après la fin de la passe de traitement pour la voix. |
OnVoiceProcessingPassStart Appelé pendant chaque passe de traitement pour chaque voix, juste avant que XAudio2 lit les données de la file d’attente de la mémoire tampon de la voix. |
ParametersChanged Indique si IXAPOParameters::SetParameters a été appelé depuis la dernière passe de traitement. |
Processus Exécute le code de traitement du signal numérique (DSP) du XAPO sur les tampons d’entrée et de sortie donnés. |
ProcessThru Appelé par une implémentation IXAPO::P rocess lorsqu’un objet XAPO est désactivé pour le traitement en cours. |
QueryInterface Interroge une interface COM donnée sur l’objet XAudio2. |
RegisterForCallbacks Ajoute un pointeur IXAudio2EngineCallback à la liste de rappel du moteur XAudio2. |
Version release Libère une référence à l’objet XAudio2. |
Réinitialiser Réinitialise les variables dépendantes de l’historique des images. |
ReverbConvertI3DL2ToNative Fonction inline qui convertit les paramètres I3DL2 (Interactive 3D Audio Rendering Guidelines Level 2.0) en paramètres XAudio2 natifs. |
SetChannelVolumes Définit les niveaux de volume de la voix, par canal. |
SetDebugConfiguration Modifie les options globales de journalisation du débogage pour XAudio2. |
SetEffectChain Remplace la chaîne d’effets de la voix. |
SetEffectParameters Définit les paramètres d’un effet donné dans la chaîne d’effets de la voix. |
SetEnvironment Sélectionne l’environnement acoustique à simuler. |
SetFilterParameters Définit les paramètres de filtre de la voix. |
SetFrequencyRatio Définit le taux d’ajustement de la fréquence de la voix. |
SetOutputFilterParameters Définit les paramètres de filtre sur l’un des envois de cette voix. |
SetOutputMatrix Définit le niveau de volume de chaque canal de la sortie finale de la voix. Ces canaux sont mappés aux canaux d’entrée d’une voix de destination spécifiée. |
SetOutputVoices Désigne un nouvel ensemble de voix de sous-mixage ou de mastering pour recevoir la sortie de la voix. |
Report.setparameters Définit des paramètres spécifiques à l’effet. |
SetSourceGain Définit la valeur de gain de chemin d’accès direct personnalisée pour la position source actuelle. Valide uniquement pour les sons lus avec le type de désintégration personnalisé HrtfDistanceDecayType. |
SetSourceOrientation Définissez la matrice de rotation pour l’orientation source, par rapport au système de coordonnées de l’écouteur. |
SetSourcePosition Définit la position du son par rapport à l’écouteur. |
SetSourceSampleRate Reconfigure la voix pour consommer les données sources à un taux d’échantillonnage différent de celui spécifié lors de la création de la voix. |
SetVolume Définit le niveau de volume global de la voix. |
Start Démarre la consommation et le traitement de l’audio par la voix. Fournit le résultat à toutes les voix de sous-mixage ou de mastering connectées, ou à l’appareil de sortie. |
StartEngine Démarre le thread de traitement audio. |
Stop Arrête la consommation audio par la voix actuelle. |
StopEngine Arrête le thread de traitement audio. |
SubmitSourceBuffer Ajoute une nouvelle mémoire tampon audio à la file d’attente vocale. |
UnlockForProcess Désalloue les variables qui ont été allouées avec la méthode LockForProcess. |
UnregisterForCallbacks Supprime un pointeur IXAudio2EngineCallback de la liste de rappel du moteur XAudio2. |
ValidateFormatDefault Vérifie qu’un format audio se trouve dans les plages par défaut prises en charge. |
ValidateFormatPair Vérifie qu’une configuration de paire de format d’entrée et de sortie est prise en charge par le XAPO. |
X3DAudioCalculate Calcule les paramètres DSP par rapport aux paramètres 3D. |
X3DAudioInitialize Définit toutes les constantes audio 3D globales. |
XAPOAlloc Macro d’allocation de mémoire utilisée par les méthodes IXAPO qui doivent allouer des structures de taille arbitraire qui sont ensuite retournées à l’application. |
XAPOFree Macro utilisée pour libérer la mémoire allouée avec la macro XAPOAlloc. |
XAudio2AmplitudeRatioToDecibels Fonction inline qui convertit une valeur de rapport d’amplitude en valeur de décibel. |
XAudio2Create Crée un objet XAudio2 et retourne un pointeur vers son interface IXAudio2. |
XAudio2CreateReverb Crée un objet de traitement audio de réverbération (APO) et retourne un pointeur vers celui-ci. |
XAudio2CreateVolumeMeter Crée un objet de traitement audio (APO) de compteur de volume et retourne un pointeur vers celui-ci. |
XAudio2CutoffFrequencyToOnePoleCoefficient Fonction inline qui convertit les fréquences de coupure de filtre exprimées en hertz en coefficients de filtre utilisés avec le membre Frequency de la structure XAUDIO2_FILTER_PARAMETERS. |
XAudio2CutoffFrequencyToRadians Fonction inline qui convertit les fréquences de coupure de filtre exprimées en hertz en valeurs de fréquence de radian utilisées dans le membre Frequency de la structure XAUDIO2_FILTER_PARAMETERS. |
XAudio2DecibelsToAmplitudeRatio Fonction inline qui convertit une valeur de décibel en valeur de rapport d’amplitude. |
XAudio2FrequencyRatioToSemitones Fonction inline qui convertit une valeur de rapport de fréquence en une valeur de demi-teinte. |
XAudio2RadiansToCutoffFrequency Fonction inline qui convertit les fréquences de radian utilisées dans XAUDIO2_FILTER_PARAMETERS en fréquences absolues en hertz. |
XAudio2SemitonesToFrequencyRatio Fonction inline qui convertit une valeur de demi-ton en valeur de rapport de fréquence. |
Interfaces
IXAPO Interface d’un objet de traitement audio utilisé dans une chaîne d’effets XAudio2. |
IXAPOHrtfParameters Interface utilisée pour définir les paramètres qui contrôlent la façon dont la fonction de transfert liée à la tête (HRTF) est appliquée à un son. |
IXAPOParameters Interface facultative qui permet à un XAPO d’utiliser des paramètres spécifiques à l’effet. |
IXAudio2 IXAudio2 est l’interface de l’objet XAudio2 qui gère tous les états du moteur audio, le thread de traitement audio, le graphique vocal, etc. |
IXAudio2EngineCallback L’interface IXAudio2EngineCallback contient des méthodes qui notifient le client lorsque certains événements se produisent dans le moteur IXAudio2. |
IXAudio2MasteringVoice Une voix de mastering est utilisée pour représenter le périphérique de sortie audio. |
IXAudio2SourceVoice Utilisez une voix source pour envoyer des données audio au pipeline de traitement XAudio2. |
IXAudio2SubmixVoice Une voix de sous-mixage est principalement utilisée pour améliorer les performances et le traitement des effets. |
IXAudio2Voice IXAudio2Voice représente l’interface de base à partir de laquelle IXAudio2SourceVoice, IXAudio2SubmixVoice et IXAudio2MasteringVoice sont dérivés. Les méthodes répertoriées ci-dessous sont communes à toutes les sous-classes vocales. |
IXAudio2VoiceCallback L’interface IXAudio2VoiceCallback contient des méthodes qui notifient le client lorsque certains événements se produisent dans un IXAudio2SourceVoice donné. |
Structures
FXECHO_INITDATA Paramètres d’initialisation à utiliser avec FXECHO XAPOFX. |
FXECHO_PARAMETERS Paramètres à utiliser avec FXECHO XAPOFX. |
FXEQ_PARAMETERS Paramètres à utiliser avec l’objet XAPO FXEQ. |
FXMASTERINGLIMITER_PARAMETERS Paramètres à utiliser avec fxMasteringLimiter XAPO. |
FXREVERB_PARAMETERS Paramètres à utiliser avec l’objet XAPO FXReverb. |
HrtfApoInit Spécifie les paramètres utilisés pour initialiser l’audio spatial HRTF. |
HrtfDirectivity Descripteur de modèle de directivité de base. Décrit le type de directivité appliquée à un son. |
HrtfDirectivityCardioid Décrit un modèle de directivité cardioïde. |
HrtfDirectivityCone Décrit une directivité conique. |
HrtfDistanceDecay Décrit un comportement de décroissance basé sur la distance. |
HrtfOrientation Indique l’orientation d’un objet de directivité HRTF. |
HrtfPosition Représente une position dans l’espace 3D, à l’aide d’un système de coordonnées droitier. |
X3DAUDIO_CONE Spécifie la direction pour un émetteur non LFE à canal unique en mettant à l’échelle le comportement DSP par rapport à l’orientation de l’émetteur. |
X3DAUDIO_DISTANCE_CURVE Définit une courbe explicite au niveau de la pièce composée de segments linéaires, définissant directement le comportement DSP par rapport à la distance normalisée. |
X3DAUDIO_DISTANCE_CURVE_POINT Définit un paramètre DSP à une distance normalisée donnée. |
X3DAUDIO_DSP_SETTINGS Reçoit les résultats d’un appel à X3DAudioCalculate. |
X3DAUDIO_EMITTER Définit une source audio 3D à point unique ou à plusieurs points qui est utilisée avec un nombre arbitraire de canaux audio. |
X3DAUDIO_LISTENER Définit un point de réception audio 3D. |
XAPO_LOCKFORPROCESS_PARAMETERS Définit les paramètres de mémoire tampon de flux qui restent constants pendant qu’un XAPO est verrouillé. Utilisé avec la méthode IXAPO::LockForProcess. |
XAPO_PROCESS_BUFFER_PARAMETERS Définit les paramètres de mémoire tampon de flux qui peuvent changer d’un appel à l’autre. Utilisé avec la méthode Process. |
XAPO_REGISTRATION_PROPERTIES Décrit les caractéristiques générales d’un XAPO. Utilisé avec IXAPO::GetRegistrationProperties, CXAPOParametersBase::CXAPOParametersBase et CXAPOBase::CXAPOBase. |
XAUDIO2_BUFFER Représente une mémoire tampon de données audio, utilisée avec IXAudio2SourceVoice::SubmitSourceBuffer. |
XAUDIO2_BUFFER_WMA Utilisé avec IXAudio2SourceVoice::SubmitSourceBuffer lors de l’envoi de données xWMA. |
XAUDIO2_DEBUG_CONFIGURATION Contient la nouvelle configuration de débogage global pour XAudio2. Utilisé avec la fonction SetDebugConfiguration. |
XAUDIO2_EFFECT_CHAIN Définit une chaîne d’effets. |
XAUDIO2_EFFECT_DESCRIPTOR Contient des informations sur un XAPO à utiliser dans une chaîne d’effets. |
XAUDIO2_FILTER_PARAMETERS Définit les paramètres de filtre pour une voix source. |
XAUDIO2_PERFORMANCE_DATA Contient des informations sur les performances. (XAUDIO2_PERFORMANCE_DATA) |
XAUDIO2_SEND_DESCRIPTOR Définit une voix de destination qui est la cible d’un envoi à partir d’une autre voix et spécifie si un filtre doit être utilisé. |
XAUDIO2_VOICE_DETAILS Contient des informations sur les indicateurs de création, les canaux d’entrée et la fréquence d’échantillonnage d’une voix. |
XAUDIO2_VOICE_SENDS Définit un ensemble de voix pour recevoir les données d’une seule voix de sortie. |
XAUDIO2_VOICE_STATE Retourne l’état actuel et les données de position du curseur de la voix. |
XAUDIO2FX_REVERB_I3DL2_PARAMETERS Décrit les paramètres I3DL2 (Interactive 3D Audio Rendering Guidelines Level 2.0) à utiliser dans la fonction ReverbConvertI3DL2ToNative. |
XAUDIO2FX_REVERB_PARAMETERS Décrit les paramètres à utiliser dans l’APO de réverbération. |
XAUDIO2FX_VOLUMEMETER_LEVELS Décrit les paramètres à utiliser avec l’APO du compteur de volume. |