Modèle objet source multimédia

Cette rubrique décrit le modèle objet pour les sources multimédias dans Microsoft Media Foundation. Une source multimédia doit implémenter deux objets :

  • Descripteur de présentation, qui décrit le contenu de la source, y compris le nombre de flux et le format de chaque flux. Pour plus d’informations sur les descripteurs de présentation, consultez Les descripteurs de présentation.
  • Un ou plusieurs flux multimédias, qui génèrent les données sources.

La source ne crée pas les flux tant que la lecture ne démarre pas.

Interfaces de source multimédia

Une source multimédia doit exposer les interfaces suivantes via QueryInterface.

Interface Description
IMFMediaSource Obligatoire pour toutes les sources multimédias.
IMFMediaEventGenerator Obligatoire pour toutes les sources multimédias. L’interface IMFMediaSource hérite de cette interface.

 

Si vous le souhaitez, une source multimédia peut implémenter l’interface IMFGetService et implémenter l’une des interfaces suivantes en tant que services :

Interface de service Description
IMFRateControl Contrôle le taux de lecture.
IMFRateSupport Signale la plage de taux de lecture pris en charge.
IMFQualityAdvise Permet au gestionnaire de qualité d’ajuster la qualité audio ou vidéo.
IMFMetadataProvider Fournit des métadonnées.

 

Si la source multimédia peut jouer à des taux autres que la vitesse normale (1,0), elle doit exposer le service de contrôle de débit (IMFRateControl et IMFRateSupport). Dans le cas contraire, il est supposé que la source prend uniquement en charge la lecture à vitesse normale. Pour plus d’informations, consultez Implémentation du contrôle de débit.

Pour plus d’informations sur les interfaces de service et IMFGetService, consultez Interfaces de service.

Interfaces de flux multimédia

Les flux multimédias doivent implémenter les interfaces suivantes.

Interface Description
IMFMediaStream Obligatoire pour tous les flux multimédias.
IMFMediaEventGenerator Obligatoire pour tous les flux multimédias. L’interface IMFMediaStream hérite de cette interface.

 

Actuellement, aucune interface de service n’est définie pour les flux multimédias.

Sources multimédias