DirectShow DirectShow 레퍼런스 인터페이스 IMediaControl Pause   [목차열람] [주소복사] [슬롯비우기]
IMediaControl::Pause
 
Microsoft DirectX 9.0

IMediaControl::Pause

Pause 메서드는, 필터 그래프의 필터를 모두 포즈 한다.

구문

HRESULT Pause(void);

반환값

HRESULT 값을 돌려준다. 가능한 값은 다음과 같다.

설명
S_FALSE 그래프의 포즈에 성공했지만, 상태의 처리이 완료하고 있지 않는 필터가 있다.
S_OK 그래프의 필터가 모두 포즈 상태에의 처리을 완료했다.

주의

필터 그래프를 포즈 하면, 다음에 그래프를 실행 할 때 즉석에서 렌더링 되도록(듯이) 그래프가 머리 내 된다. 그래프가 포즈 하고 있을 때, 데이터는 처리되지만, 렌더링은 행해지지 않는다. 데이터는, 버퍼에 여유가 있는 한, 그래프에 인도해져 변환 필터로 처리되지만, 그 데이터를 렌더링 필터가 렌더링 할 것은 없다. 다만, 비디오 렌더러는 현재의 샘플의 정적인 포스터 프레임을 표시한다.

이 메서드가 S_FALSE 를 돌려주는 경우는,IMediaControl::GetState 메서드를 호출해, 상태의 처리의 완료를 대기하는지, 또는 처리이 완료하고 있는지를 확인하는 것. Pause 를 호출해 비디오 파일의 최초의 프레임을 표시한 후는 반드시, 즉석에서 GetState 를 호출해, 상태 처리이 완료한 것을 확인하는 것. 상태 처리이 완료하고 있지 않으면 비디오 직사각형이 검어지는 경우가 있다.

실패했을 경우, 메서드는, 돌아오기 전에 그래프를 정지한다.

참조

↑TOP