Partager via


Méthode IMFSourceReader ::SetCurrentMediaType (mfreadwrite.h)

Définit le type de média pour un flux.

Ce type de média définit le format que le Lecteur source produit en tant que sortie. Il peut différer du format natif fourni par la source multimédia. Pour plus d'informations, consultez la section Notes.

Syntaxe

HRESULT SetCurrentMediaType(
  [in]      DWORD        dwStreamIndex,
  [in, out] DWORD        *pdwReserved,
  [in]      IMFMediaType *pMediaType
);

Paramètres

[in] dwStreamIndex

Flux à configurer. La valeur peut être l’une des valeurs suivantes.

Valeur Signification
0 à 0xFFFFFFFB
Index de base zéro d’un flux.
MF_SOURCE_READER_FIRST_VIDEO_STREAM
0xFFFFFFFC
Premier flux vidéo.
MF_SOURCE_READER_FIRST_AUDIO_STREAM
0xFFFFFFFD
Premier flux audio.

[in, out] pdwReserved

Réservé. Défini sur NULL.

[in] pMediaType

Pointeur vers l’interface IMFMediaType du type de média.

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
MF_E_INVALIDMEDIATYPE
Au moins un décodeur a été trouvé pour le type de flux natif, mais le type spécifié par pMediaType a été rejeté.
MF_E_INVALIDREQUEST
Un ou plusieurs exemples de demandes sont toujours en attente.
MF_E_INVALIDSTREAMNUMBER
Le paramètre dwStreamIndex n’est pas valide.
MF_E_TOPO_CODEC_NOT_FOUND
Impossible de trouver un décodeur pour le type de flux natif.

Remarques

Pour chaque flux, vous pouvez définir le type de média sur l’un des éléments suivants :

  • Un des types natifs proposés par la source multimédia. Pour énumérer les types natifs, appelez IMFSourceReader ::GetNativeMediaType.
  • Si le type de média natif est compressé, vous pouvez spécifier un format non compressé correspondant. Le lecteur source recherche un décodeur qui peut décoder du format natif au format non compressé spécifié.
La prise en charge du rééchantillonnage audio a été ajoutée au lecteur source avec Windows 8. Dans les versions de Windows antérieures à Windows 8, le lecteur source ne prend pas en charge le rééchantillonnage audio. Si vous devez rééchantillonner l’audio dans les versions de Windows antérieures à Windows 8, vous pouvez utiliser le DSP de rééchantillonnage audio.

Si vous définissez l’attribut MF_SOURCE_READER_ENABLE_VIDEO_PROCESSING sur TRUE lorsque vous créez le Lecteur source, le Lecteur source convertit la vidéo YUV en RVB-32. Cette conversion n’est pas optimisée pour la lecture vidéo en temps réel.

Cette interface est disponible sur Windows Vista si le Supplément de mise à jour de la plateforme pour Windows Vista est installé.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7, Windows Vista et supplément de mise à jour de plateforme pour Windows Vista [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête mfreadwrite.h

Voir aussi

IMFSourceReader

Lecteur source