Partager via


Pour récupérer des exemples multimédias avec le lecteur asynchrone

[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.]

Une fois que vous avez reçu le message WMT_OPENED status dans votre implémentation de IWMStatusCallback::OnStatus, vous pouvez commencer à recevoir des exemples en appelant IWMReader::Start. Le lecteur asynchrone fournit des exemples à votre implémentation d’IWMReaderCallback::OnSample. Les échantillons sont livrés dans l’ordre au moment de la présentation.

Start est un appel asynchrone. Il retourne presque immédiatement et continue à s’exécuter sur des threads distincts. Le lecteur asynchrone utilise plusieurs threads lors du décodage du contenu et de la distribution d’exemples. Une fois la fin du fichier atteinte, le lecteur envoie un message WMT_EOF status à votre implémentation du rappel OnStatus. Lorsque WMT_EOF est envoyé, le lecteur arrête son propre traitement ; vous n’avez pas besoin de répondre à WMT_EOF avec un appel à IWMReader::Stop.

IWMReader Interface

Pour implémenter des messages de lecteur dans le rappel OnStatus

Pour implémenter le rappel onSample