Méthode IApoAuxiliaryInputConfiguration ::IsInputFormatSupported (audioenginebaseapo.h)
Vérifie qu’un format d’entrée auxiliaire spécifique est pris en charge par APO.
Syntaxe
HRESULT IsInputFormatSupported(
IAudioMediaType *pRequestedInputFormat,
IAudioMediaType **ppSupportedInputFormat
);
Paramètres
pRequestedInputFormat
Format d’entrée à vérifier.
ppSupportedInputFormat
L’APO remplit ce paramètre avec le format d’entrée pris en charge le plus proche du format passé à la méthode.
Valeur retournée
HRESULT
HRESULT | Description |
---|---|
S_OK | Opération terminée correctement. L’APO doit ajouter une référence à pRequestedInputFormat et la renvoyer dans ppSupportedInputFormat |
S_FALSE | Le format n’est pas pris en charge. L’APO doit retourner un format pris en charge suggéré dans ppSupportedInputFormat |
APOERR_FORMAT_NOT_SUPPORTED | Le format n’est pas pris en charge. L’APO ne doit pas modifier ppSupportedInputFormat |
E_POINTER | Pointeur non valide passé à cette fonction. |
Autres valeurs | Un autre composant est à l’origine d’une défaillance. Ces échecs sont suivis par le système. |
Remarques
Si l’APO peut accepter le format demandé, il doit ajouter une référence au format demandé, le renvoyer comme format de sortie pris en charge et renvoyer S_OK.
Si l’APO ne peut pas accepter le format demandé, il peut suggérer un autre format demandé. Dans ce cas, il doit créer et renvoyer le format suggéré, puis retourner S_FALSE.
Le format pris en charge retourné doit être « le plus proche » du format demandé, ce qui signifie que le format doit avoir les mêmes valeurs pour les propriétés suivantes, spécifiées dans l’ordre de priorité.
- exemple de format
- profondeur de bits
- nombre de canaux
- taux d’échantillonnage
Le format suggéré peut uniquement différer du format demandé si S_FALSE est retourné. Lors du retour d’un échec, le format suggéré doit être conservé intact.
Cette API peut être appelée à tout moment. Les résultats retournés dépendent de l’état interne de l’APO qui peut être manipulé par des interfaces utilisateur externes. Une fois que l’APO est verrouillé pour le traitement, ce format ne peut pas et ne sera pas modifié.
Cette méthode ne peut pas être appelée à partir d’un thread de traitement en temps réel.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10 Build 20348 |
En-tête | audioenginebaseapo.h |