Compartilhar via


Interface IAsyncReader (strmif.h)

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

A IAsyncReader interface executa uma solicitação de dados assíncrona em um filtro.

Essa interface é exposta por pinos de saída que executam operações de leitura assíncronas. A interface é usada pelo pino de entrada no filtro downstream. Os aplicativos não usam essa interface. O filtro Origem do Arquivo Assíncrono expõe essa interface em seu pino de saída.

Filtrar desenvolvedores: implemente essa interface se o pin de saída fornecer dados na forma de um fluxo de bytes (MEDIATYPE_Stream) e oferecer suporte ao modelo de pull. Durante o processo de conexão, marcar se o pin downstream consulta a IAsyncReader interface. Se isso não acontecer, o pino deverá falhar na conexão ou estabelecer algum outro transporte. (Se o pin derivar de CBasePin, execute esta marcar no método CBasePin::CheckConnect.)

Para obter mais informações sobre como usar essa interface, consulte os seguintes tópicos:

Herança

A interface IAsyncReader herda da interface IUnknown . O IAsyncReader também tem esses tipos de membros:

Métodos

A interface IAsyncReader tem esses métodos.

 
IAsyncReader::BeginFlush

O método BeginFlush inicia uma operação de liberação. (IAsyncReader.BeginFlush)
IAsyncReader::EndFlush

O método EndFlush encerra uma operação de liberação. (IAsyncReader.EndFlush)
IAsyncReader::Length

O método Length recupera o comprimento total do fluxo.
IAsyncReader::Request

O método Request enfileira uma solicitação assíncrona de dados.
IAsyncReader::RequestAllocator

O método RequestAllocator solicita um alocador durante a conexão de pino.
IAsyncReader::SyncRead

O método SyncRead executa uma leitura síncrona. O método é bloqueado até que a solicitação seja concluída. As posições do arquivo e o endereço do buffer não precisam ser alinhados. Se a solicitação não estiver alinhada, o método executará uma operação de leitura em buffer.
IAsyncReader::SyncReadAligned

O método SyncReadAligned executa uma leitura síncrona. O método é bloqueado até que a solicitação seja concluída. As posições do arquivo e o endereço do buffer devem ser alinhados; marcar as propriedades do alocador para o alinhamento necessário.
IAsyncReader::WaitForNext

O método WaitForNext aguarda a conclusão da próxima solicitação de leitura pendente.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho strmif.h (inclua Dshow.h)