Lecteur, objet

[La fonctionnalité associée à cette page, le Kit de développement logiciel (SDK) Windows Media Format 11, est une fonctionnalité héritée. Il a été remplacé par lecteur source et enregistreur récepteur. Le lecteur source et l’enregistreur récepteur ont été optimisés pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise le lecteur source et l’enregistreur récepteur au lieu du Kit de développement logiciel (SDK) Windows Media Format 11, 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.]

L’objet lecteur lit des exemples de données à partir de fichiers multimédias. L’objet lecteur prend actuellement en charge les fichiers utilisant la structure de fichiers ASF (Advanced Systems Format) ainsi que les fichiers MP3. Les données fournies par l’objet lecteur ne sont pas compressées et prêtes pour le rendu par défaut, bien que des exemples puissent être remis sans être décompressés si vous le souhaitez. Les exemples sont fournis de manière asynchrone à partir de l’objet lecteur ; vous devez configurer une fonction de rappel pour les recevoir. Pour la lecture synchrone des fichiers ASF, utilisez l’objet lecteur synchrone. Ni le lecteur ni le lecteur synchrone ne restituent les données. Vous devez fournir vos propres routines de rendu pour afficher le média récupéré à partir d’un fichier.

Lorsqu’un fichier contient un média encodé qui peut être décodé avec un codec pris en charge par l’objet lecteur, vous pouvez contrôler le format de la sortie non compressée. Pour modifier le format de la sortie décompressée d’un flux, vous devez récupérer l’objet de propriétés multimédias de sortie par défaut pour ce flux, y apporter des modifications et le réaffecter au flux dans le lecteur. Les objets de propriétés de média de sortie sont subordonnés à l’objet lecteur et doivent uniquement être créés à l’aide de la méthode IWMReader::GetOutputProps .

L’objet reader est créé par la fonction WMCreateReader, qui définit un pointeur vers une interface IWMReader . Les autres interfaces de l’objet lecteur peuvent être obtenues en appelant la méthode QueryInterface .

Les interfaces suivantes sont prises en charge par l’objet lecteur.

Interface Description
IReferenceClock Fournit l’accès à l’horloge système utilisée par le lecteur.
IWMDRMReader Gère l’acquisition de licences, les propriétés DRM et l’individualisation du client.
IWMDRMReader2 Fournit l’accès aux licences qui utilisent des niveaux de protection de sortie (OPL) pour spécifier des droits.
IWMHeaderInfo Définit et récupère les informations d’en-tête, notamment les métadonnées, les marqueurs et les données de script.
IWMHeaderInfo2 Récupère des informations sur les codecs utilisés pour encoder le contenu dans le fichier. Hérite de toutes les méthodes d’IWMHeaderInfo.
IWMHeaderInfo3 Prend en charge les grandes tailles d’attributs, les noms d’attributs en double et la prise en charge de plusieurs langues. Hérite de toutes les méthodes de IWMHeaderInfo et IWMHeaderInfo2.
IWMPacketSize Récupère la taille du plus grand paquet du fichier chargé dans le lecteur.
IWMPacketSize2 Récupère la taille du plus petit paquet du fichier chargé dans le lecteur.
IWMProfile Fournit l’accès aux informations de profil du fichier chargé dans le lecteur.
IWMProfile2 Récupère l’identificateur global unique (GUID), le cas échéant, associé au profil. Hérite de toutes les méthodes d’IWMProfile.
IWMProfile3 Prend en charge le partage de bande passante et les informations de hiérarchisation du flux dans le profil. Hérite de toutes les méthodes de IWMProfile et IWMProfile2.
IWMReader Fournit des fonctionnalités de lecture de fichiers de base, y compris des opérations telles que l’ouverture, la fermeture, le démarrage, la pause, la reprise, l’arrêt et l’obtention et la définition des propriétés de sortie.
IWMReaderAccelerator Communique avec l’accélération vidéo DirectX.
IWMReaderAdvanced Fournit des fonctionnalités avancées du lecteur, telles qu’une horloge fournie par l’utilisateur, l’allocation de mémoire tampon, des statistiques de retour et des notifications de sélection de flux.
IWMReaderAdvanced2 Fournit une plage supplémentaire de méthodes avancées pour un objet lecteur existant. Hérite de toutes les méthodes de IWMReaderAdvanced.
IWMReaderAdvanced3 Fournit un contrôle avancé de la recherche et de la diffusion en continu. Hérite de toutes les méthodes de IWMReaderAdvanced et IWMReaderAdvanced2.
IWMReaderAdvanced4 Fournit des options de lecture avancées, y compris la prise en charge de plusieurs langues. Hérite de toutes les méthodes de IWMReaderAdvanced, IWMReaderAdvanced2 et IWMReaderAdvanced3.
IWMReaderNetworkConfig Contrôle les paramètres de configuration réseau.
IWMReaderNetworkConfig2 Fournit l’accès aux paramètres de configuration réseau avancés. Hérite de toutes les méthodes d’IWMReaderNetworkConfig.
IWMReaderStreamClock Définit et annule les minuteurs sur les horloges de flux et récupère la valeur actuelle d’une horloge de flux spécifiée.
IWMReaderTimecode Fournit des informations sur les plages de code de temps SMPTE dans le fichier chargé dans le lecteur.
IWMReaderTypeNegotiation Teste si les modifications apportées aux propriétés de sortie d’un flux fonctionnent correctement.

 

Les interfaces de rappel suivantes peuvent être implémentées dans l’application pour suivre la progression d’un objet lecteur.

Interface Description
IWMCredentialCallback Acquiert les informations d’identification des utilisateurs et vérifie qu’ils ont l’autorisation d’accéder à un site distant.
IWMReaderAllocatorEx Fournit des alternatives développées aux méthodes AllocateForOutput et AllocateForStream de l’interface IWMReaderCallbackAdvanced .
IWMReaderCallback Fournit des méthodes de rappel pour les méthodes Start et Opend’IWMReader.
IWMReaderCallbackAdvanced Fournit des méthodes de rappel pour les méthodes de l’interface IWMReaderAdvanced .
IWMStatusCallback Obligatoire lorsque status informations doivent être communiquées à l’application hôte.

 

Objets

Lecture de fichiers ASF

Lecteur synchrone, objet