프레임 삽입

기본적으로 AVStream에서 요청자는 할당자에서 빈 프레임을 획득하여 큐에 배치합니다. 그런 다음 미니 드라이버는 핀 중심 처리 또는 필터 중심 처리프레임을 채웁니다. 프레임은 전송을 가로질러 회로의 다음 개체로 이동하고, 결국 회로를 완료하고 요청자에게 돌아갑니다. 그런 다음 AVStream은 프레임을 다시 사용합니다.

미니 드라이버는 삽입 모드를 사용하여 이 기본 동작을 재정의할 수 있습니다. 삽입 모드에서 미니 드라이버는 회로에 프레임을 배치하는 역할을 담당합니다. 프레임은 기본 방식으로 회로 주위에 전파됩니다. 프레임이 시작된 AVStream 개체로 돌아가면 AVStream은 미니 드라이버 제공 AVStrMiniFrameReturn 루틴을 호출합니다.

이 루틴에서 미니 드라이버는 예를 들어 프레임의 할당을 취소하거나, 프레임 반환 시 보류 중인 작업을 완료하거나, 프레임을 다시 채우고 다시 재장전할 수 있습니다.

삽입 모드를 설정하기 위해 미니 드라이버는 KsPinRegisterFrameReturnCallback을 호출하고 AVStrMiniFrameReturn 루틴에 대한 포인터를 제공합니다.

필터가 중지 상태에 있지 않으면 KsPinRegisterFrameReturnCallback을 호출하지 마세요.

회로에 프레임을 삽입하려면 KsPinSubmitFrame 또는 KsPinSubmitFrameMdl을 호출합니다.

아래 다이어그램에서는 원본 필터, 내부 변환 필터 및 원본 삽입 프레임이 있는 렌더링 필터로 구성된 AVStream 필터 집합을 보여 줍니다.

avstream 필터 집합을 보여 주는 다이어그램