Méthode IMFASFStreamConfig ::GetPayloadExtension (wmcontainer.h)

Récupère des informations sur une extension de charge utile existante.

Syntaxe

HRESULT GetPayloadExtension(
  [in]      WORD  wPayloadExtensionNumber,
  [out]     GUID  *pguidExtensionSystemID,
  [out]     WORD  *pcbExtensionDataSize,
  [out]     BYTE  *pbExtensionSystemInfo,
  [in, out] DWORD *pcbExtensionSystemInfo
);

Paramètres

[in] wPayloadExtensionNumber

Index d’extension de charge utile. Les index valides varient de 0 à un nombre inférieur au nombre d’extensions obtenues en appelant IMFASFStreamConfig ::GetPayloadExtensionCount.

[out] pguidExtensionSystemID

Reçoit un GUID qui identifie l’extension de charge utile. Pour obtenir la liste des extensions de charge utile prédéfinies, consultez GUID d’extension de charge utile ASF. Les applications peuvent également définir des extensions de charge utile personnalisées.

[out] pcbExtensionDataSize

Reçoit le nombre d’octets ajoutés à chaque exemple pour l’extension.

[out] pbExtensionSystemInfo

Pointeur vers une mémoire tampon qui reçoit des informations sur ce système d’extension. Ces informations sont identiques pour tous les exemples et sont stockées dans l’en-tête de contenu (et non dans chaque exemple). Ce paramètre peut être NULL. Pour rechercher la taille requise de la mémoire tampon, définissez ce paramètre sur NULL ; la taille est retournée dans pcbExtensionSystemInfo.

[in, out] pcbExtensionSystemInfo

En entrée, spécifie la taille de la mémoire tampon pointée vers pbExtensionSystemInfo. À la sortie, reçoit la taille requise de la mémoire tampon pbExtensionSystemInfo en octets.

Valeur retournée

Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Code de retour Description
S_OK
S_OK
E_INVALIDARG
Argument non valide.
MF_E_BUFFERTOOSMALL
La mémoire tampon spécifiée dans pbExtensionSystemInfo est trop petite.
MF_E_INVALIDINDEX
Le paramètre wPayloadExtensionNumber est hors de portée.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête wmcontainer.h
Bibliothèque Mfuuid.lib

Voir aussi

IMFASFStreamConfig

IMFASFStreamConfig ::AddPayloadExtension

IMFASFStreamConfig ::GetPayloadExtensionCount