DirectShow DirectShow 의 사용법 스트림 버퍼 엔진의 사용법 스트림 버퍼 엔진의 버퍼링 [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
이 주제는 Windows XP Service Pack 1에만 적용.
스트림 버퍼 싱크 필터는, 캡춰 한 데이터 파일을 일시 배킹 파일에 저장 한다. 디폴트에서는, 6 개의 파일을 사용한다. 각 파일은 5 분간의 데이터를 저장 해, 전체의 버퍼 사이즈는 30 분간이다. (디폴트 설정은 IStreamBufferConfigure 인터페이스에 의해 변경할 수 있다. )
버퍼의 상한에 이르면 스트림 버퍼 싱크 필터는 가장 낡은 파일로부터 순서에 파일을 삭제해 나간다. 소스 그래프가 그 파일로부터 읽어내고 있는 한중간인 경우, 싱크 필터는 대신에 다음에 낡은 파일을 삭제한다. 재생에는 "타임 홀" 이 생긴다. 소스 그래프의 포즈가 너무 길거나 버퍼의 선두로 향해 역방향으로 시크 하면, 타임 홀이 생긴다.
스트림 버퍼 소스 필터는 파일이 삭제된 공백 부분에 이르면 다음의 파일로 이동한다. 그러나, 프레젠테이션 타임은 변함없기 때문에, 낡은 파일의 최종 프레임이, 삭제된 파일의 재생 시간만 표시된다. 따라서, 그 시간은 비디오가 포즈 하고 있는 것처럼 보인다. 이 상태를 피하려면 , 소스 그래프는 다음에 유효한 데이터를 순서 방향으로 시크 하는 것.
파일이 낡아졌는지, 낡아질 것 같은 때, 스트림 버퍼 엔진은 애플리케이션에 경고하는 몇개의 그래프 이벤트를 송신한다.
더 자세한 정보는, 「스트림 버퍼 엔진의 이벤트 코드」를 참조할것.
녹화 내용은 낡게 안 된다. 더 자세한 정보는, 「스트림 버퍼 녹화의 생성」을 참조할것.