MÉTHODE IMFPMediaPlayer::CreateMediaItemFromObject (mfplay.h)
Crée un élément multimédia à partir d’un objet .
Syntaxe
HRESULT CreateMediaItemFromObject(
[in] IUnknown *pIUnknownObj,
[in] BOOL fSync,
[in] DWORD_PTR dwUserData,
[out] IMFPMediaItem **ppMediaItem
);
Paramètres
[in] pIUnknownObj
Pointeur vers l’interface IUnknown de l’objet. Consultez la section Notes.
[in] fSync
Si la valeur est TRUE, la méthode se bloque jusqu’à ce qu’elle se termine. Si la valeur est FALSE, la méthode ne bloque pas et se termine de manière asynchrone.
[in] dwUserData
Valeur définie par l’application à stocker dans l’élément multimédia. Pour récupérer cette valeur à partir de l’élément multimédia, appelez IMFPMediaItem::GetUserData.
[out] ppMediaItem
Reçoit un pointeur vers l’interface IMFPMediaItem . L’appelant doit libérer l’interface. Si fSync a la valeur TRUE, ce paramètre doit être un pointeur valide. Si bSync a la valeur FALSE, ce paramètre doit être NULL.
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 |
|
Argument non valide. |
|
Demande non valide. Cette erreur peut se produire lorsque fSync a la valeur FALSE et que l’application n’a pas fourni d’interface de rappel. Consultez la section Notes. |
|
La méthode Shutdown de l’objet a été appelée. |
Notes
Le paramètre pIUnknownObj doit spécifier l’un des éléments suivants :
- Pointeur vers une source multimédia. Les sources multimédias exposent l’interface IMFMediaSource . Il est de la responsabilité de l’appelant d’appeler IMFMediaSource::Shutdown sur la source du média.
- Pointeur vers un flux d’octets. Les flux d’octets exposent l’interface IMFByteStream . En interne, la méthode appelle la méthode IMFSourceResolver::CreateObjectFromByteStream pour créer une source multimédia à partir du flux d’octets. Par conséquent, un gestionnaire de flux d’octets doit être inscrit pour le flux d’octets. Pour plus d’informations sur les gestionnaires de flux d’octets, consultez Gestionnaires de schémas et gestionnaires de Byte-Stream.
La méthode CreateMediaItemFromObject peut être appelée de manière synchrone ou asynchrone :
- Si fSync a la valeur TRUE, la méthode se termine de manière synchrone. Le pointeur IMFPMediaItem est retourné dans le paramètre ppMediaItem .
- Si fSync a la valeur FALSE, la méthode se termine de manière asynchrone. Une fois l’opération terminée, la méthode de rappel IMFPMediaPlayerCallback::OnMediaPlayerEvent de l’application est appelée. Le type d’événement est MFP_EVENT_TYPE_MEDIAITEM_CREATED. Les données d’événement contiennent le pointeur IMFPMediaItem pour le nouvel élément multimédia.
Si vous effectuez plusieurs appels asynchrones à CreateMediaItemFromObject, il n’est pas garanti qu’ils se terminent dans le même ordre. Utilisez le paramètre dwUserData pour mettre en correspondance les éléments multimédias créés avec les demandes en attente.
Configuration de la source
Si pIUnknownObj pointe vers un flux d’octets, vous pouvez configurer la source multimédia en effectuant les étapes suivantes :- Appelez QueryInterface sur le pointeur IMFPMediaPlayer pour obtenir l’interface IPropertyStore .
- Appelez IPropertyStore::SetValue pour définir les propriétés de la source multimédia. Pour obtenir la liste des propriétés de configuration, consultez Configuration d’une source multimédia. Des sources multimédias tierces peuvent définir des propriétés personnalisées.
- Appelez la méthode CreateMediaItemFromObject pour créer l’élément multimédia.
Spécifications
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | mfplay.h |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour