DirectShow 보유 사용이 금지되고 있는 인터페이스 ICaptureGraphBuilder SetOutputFileName   [목차열람] [주소복사] [슬롯비우기]
ICaptureGraphBuilder::SetOutputFileName
 
Microsoft DirectX 9.0

ICaptureGraphBuilder::SetOutputFileName

 :  ICaptureGraphBuilder 인터페이스의 사용은 피하는 것. 대신에,ICaptureGraphBuilder2 를 사용하는 것.

지정된 파일명으로 비트를 디스크에 보존하는 필터 그래프의 렌더링 섹션을 생성 한다.

구문

HRESULT SetOutputFileName(
    const GUID *pType,
    LPCOLESTR lpwstrFile,
    IBaseFilter **ppf,
    IFileSinkFilter **pSink
);

파라미터

pType

[in] 미디어 서브 타입을 나타내는 GUID 의 포인터. &MEDIASUBTYPE_Avi 가 아니면 안된다.

lpwstrFile

[in] 출력 파일명이 저장 되고 있는 와이드 캐릭터 캐릭터 라인의 포인터.

ppf

[out] 멀티플렉서 필터에 상당하는 IBaseFilter 인터페이스의 포인터 주소. 이 메서드는 IBaseFilter 인터페이스의 참조 카운트를 인크리먼트(increment) 하기 위한(해), 필터를 사용한 후는, 이 인수에 대해서 Release 메서드를 사용하는 것에 의해, 참조 카운트를 감소 할 필요가 있다.

pSink

[out] 필터 라이터에 상당하는 IFileSinkFilter 인터페이스의 포인터 주소. 이 메서드는 IFileSinkFilter 인터페이스의 참조 카운트를 인크리먼트(increment) 하기 위한(해), 필터를 사용한 후는, 이 인수에 대해서 Release 메서드를 사용하는 것에 의해, 참조 카운트를 감소 할 필요가 있다.

반환값

HRESULT 값을 돌려준다. 다음의 몇개의 값을 돌려준다.

설명
E_FAIL 실패.
E_INVALIDARG 무효인 인수. 지원 되고 있는 출력 포맷은 AVI (Audio-Video Interleaved) 뿐인다.
E_OUTOFMEMORY 메모리 부족.
E_POINTER NULL 포인터 인수.
E_UNEXPECTED 예기치 않은 에러가 발생했다.
NOERROR 성공.
S_OK AVI 멀티플렉서 필터의 인스턴스가 올바르고 생성 되었다.

주의

이 메서드는, 멀티플렉서와 파일 라이터를 필터 그래프에 삽입해,IFileSinkFilter::SetFileName 를 호출해 출력 파일명을 설정한다.

이 메서드로부터 돌려받는 ppf 인수를 RenderStream 의 호출로 pfRenderer 인수로서 사용할 수 있다.

이 메서드의 pSink 인수를 SetFileName 의 호출로 사용해,ICaptureGraphBuilder::SetOutputFileName 에 의해 설정된 파일명을 변경할 수 있다.

참조

↑TOP