다음을 통해 공유


IAsyncReader 인터페이스(strmif.h)

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngineMedia Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 DirectShow 대신 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

인터페이스는 IAsyncReader 필터에서 비동기 데이터 요청을 수행합니다.

이 인터페이스는 비동기 읽기 작업을 수행하는 출력 핀에 의해 노출됩니다. 인터페이스는 다운스트림 필터의 입력 핀에서 사용됩니다. 애플리케이션은 이 인터페이스를 사용하지 않습니다. 비동기 파일 원본 필터는 출력 핀에 이 인터페이스를 노출합니다.

필터 개발자: 출력 핀이 바이트 스트림(MEDIATYPE_Stream) 형식으로 데이터를 전달하고 끌어오기 모델을 지원하는 경우 이 인터페이스를 구현합니다. 연결 프로세스 중에 인터페이스에 대한 IAsyncReader 다운스트림 핀 쿼리 여부를 검사. 그렇지 않으면 핀이 연결에 실패하거나 다른 전송을 설정해야 합니다. (핀이 CBasePin에서 파생된 경우 CBasePin::CheckConnect 메서드에서 이 검사 수행합니다.)

이 인터페이스를 사용하는 방법에 대한 자세한 내용은 다음 topics 참조하세요.

상속

IAsyncReader 인터페이스는 IUnknown 인터페이스에서 상속됩니다. IAsyncReader 에는 다음과 같은 유형의 멤버도 있습니다.

메서드

IAsyncReader 인터페이스에는 이러한 메서드가 있습니다.

 
IAsyncReader::BeginFlush

BeginFlush 메서드는 플러시 작업을 시작합니다. (IAsyncReader.BeginFlush)
IAsyncReader::EndFlush

EndFlush 메서드는 플러시 작업을 종료합니다. (IAsyncReader.EndFlush)
IAsyncReader::Length

Length 메서드는 스트림의 총 길이를 검색합니다.
IAsyncReader::Request

Request 메서드는 데이터에 대한 비동기 요청을 큐에 추가합니다.
IAsyncReader::RequestAllocator

RequestAllocator 메서드는 핀 연결 중에 할당자를 요청합니다.
IAsyncReader::SyncRead

SyncRead 메서드는 동기 읽기를 수행합니다. 메서드는 요청이 완료될 때까지 차단합니다. 파일 위치와 버퍼 주소를 정렬할 필요가 없습니다. 요청이 정렬되지 않으면 메서드는 버퍼링된 읽기 작업을 수행합니다.
IAsyncReader::SyncReadAligned

SyncReadAligned 메서드는 동기 읽기를 수행합니다. 메서드는 요청이 완료될 때까지 차단합니다. 파일 위치와 버퍼 주소를 정렬해야 합니다. 필요한 맞춤에 대한 할당자 속성을 검사.
IAsyncReader::WaitForNext

WaitForNext 메서드는 보류 중인 다음 읽기 요청이 완료되기를 기다립니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 strmif.h(Dshow.h 포함)