Fonctions de type multimédia

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

Les classes de base DirectShow fournissent des fonctions d’assistance pour gérer la structure AM_MEDIA_TYPE .

La structure AM_MEDIA_TYPE contient un pointeur (le membre pbFormat ) vers un autre bloc de mémoire, appelé bloc de format. Lorsque vous travaillez avec cette structure, vous devez donc faire attention à l’allocation de mémoire afin d’éviter les fuites de mémoire.

Les fonctions suivantes allouent de la mémoire :

  • CreateMediaType alloue une nouvelle structure AM_MEDIA_TYPE et le bloc de format.
  • CopyMediaType copie dans une structure AM_MEDIA_TYPE existante, mais alloue le bloc de format.
  • CreateAudioMediaType initialise une structure AM_MEDIA_TYPE existante et alloue éventuellement le bloc de format.

Les fonctions suivantes libèrent de la mémoire :

  • FreeMediaType libère le bloc de format.
  • DeleteMediaType libère une structure AM_MEDIA_TYPE , y compris le bloc de format.
Fonction Description
CopyMediaType Copie une structure de AM_MEDIA_TYPE allouée à des tâches.
CreateAudioMediaType Initialise une structure de type média en fonction d’une structure de format wave.
CreateMediaType Alloue et initialise une structure AM_MEDIA_TYPE , à partir d’une structure AM_MEDIA_TYPE existante.
DeleteMediaType Supprime une structure de AM_MEDIA_TYPE allouée à une tâche.
FreeMediaType Libère de la mémoire une structure de AM_MEDIA_TYPE allouée à des tâches.

 

Configuration requise

Condition requise Valeur
En-tête
Mtype.h (include Streams.h)
Bibliothèque
Strmbase.lib (builds de vente au détail) ;
Strmbasd.lib (builds de débogage)