Partager via


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)