Interface IAsyncReader (strmif.h)
[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.]
L’interface IAsyncReader
effectue une demande de données asynchrone sur un filtre.
Cette interface est exposée par des broches de sortie qui effectuent des opérations de lecture asynchrones. L’interface est utilisée par la broche d’entrée sur le filtre en aval. Les applications n’utilisent pas cette interface. Le filtre source de fichier asynchrone expose cette interface sur sa broche de sortie.
Développeurs de filtres : implémentez cette interface si votre broche de sortie fournit des données sous la forme d’un flux d’octets (MEDIATYPE_Stream) et prend en charge le modèle d’extraction. Pendant le processus de connexion, case activée si les requêtes de broche en aval pour l’interfaceIAsyncReader
. Si ce n’est pas le cas, votre broche doit échouer la connexion ou établir un autre transport. (Si votre code pin dérive de CBasePin, effectuez cette case activée dans la méthode CBasePin::CheckConnect.)
Pour plus d’informations sur l’utilisation de cette interface, consultez les rubriques suivantes :
Héritage
L’interface IAsyncReader hérite de l’interface IUnknown. IAsyncReader a également les types de membres suivants :
Méthodes
L’interface IAsyncReader possède ces méthodes.
IAsyncReader::BeginFlush La méthode BeginFlush commence une opération de vidage. (IAsyncReader.BeginFlush) |
IAsyncReader::EndFlush La méthode EndFlush met fin à une opération de vidage. (IAsyncReader.EndFlush) |
IAsyncReader::Length La méthode Length récupère la longueur totale du flux. |
IAsyncReader::Request La méthode Request met en file d’attente une demande asynchrone de données. |
IAsyncReader::RequestAllocator La méthode RequestAllocator demande un allocateur pendant la connexion de broche. |
IAsyncReader::SyncRead La méthode SyncRead effectue une lecture synchrone. La méthode est bloquée jusqu’à ce que la demande soit terminée. Les positions de fichier et l’adresse de mémoire tampon n’ont pas besoin d’être alignées. Si la requête n’est pas alignée, la méthode effectue une opération de lecture mise en mémoire tampon. |
IAsyncReader::SyncReadAligned La méthode SyncReadAligned effectue une lecture synchrone. La méthode est bloquée jusqu’à ce que la demande soit terminée. Les positions de fichier et l’adresse de mémoire tampon doivent être alignées ; case activée les propriétés d’allocation pour l’alignement requis. |
IAsyncReader::WaitForNext La méthode WaitForNext attend la fin de la prochaine demande de lecture en attente. |
Configuration requise
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | strmif.h (include Dshow.h) |