게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
SampleGrabber를 통하여 웹캠의 미리보기 이미지를 저장하싶습니다
게시물ID : programmer_21832짧은주소 복사하기
작성자 : 한시운
추천 : 0
조회수 : 501회
댓글수 : 0개
등록시간 : 2017/12/06 16:28:24

작업환경 : C++Builder XE2, DiretShow 2007

한줄요약 : DirectShow의 IVideoWinodow에 저장된 왭캠 화면을 직접 불러와 이미지 형태로 저장하고 싶습니다.
한줄 요약 코드 : pSampleGrabber->GetCurrentBuffer(&nBufferSize, pBuffer);
상세내용 :
pVidWin에서 화면에 뿌려주기 전에 pVidWin의 미디어 정보를 캡쳐해서 이미지 형태로 저장하고 싶습니다.
그래서 SampleGrabber가 이에 적합하다 듣고 이리저리 해봤는대 결국은 구현에 실패했습니다.
pSampleGrabber->GetCurrentBuffer(&nBufferSize, pBuffer); 이 부분이 자꾸 에러가 나서 그런것 같은대

어떻게 해야 좋을까요?

일부코드 :

hr = CoCreateInstance(CLSID_SampleGrabber, NULL, CLSCTX_INPROC_SERVER,

IID_IBaseFilter, (void **)&pSampleGrabberFilter);

Check_hr("CoCreateInstance pSampleGrabberFilter");


hr = pSampleGrabberFilter->QueryInterface(IID_ISampleGrabber,

(LPVOID*)&pSampleGrabber);

Check_hr("QueryInterface pSampleGrabber");


// 버퍼를 준비

pSampleGrabber->SetBufferSamples(TRUE);

long nBufferSize = MediaType.lSampleSize;

long *pBuffer = (long *)malloc(nBufferSize);


// 현재 표시되고 있는 영상을 정지화면으로서 취득

hr = pSampleGrabber->GetCurrentBuffer(&nBufferSize, pBuffer);

Check_hr("GetCurrentBuffer pBuffer");

전체코드 : 링크에 첨부파일 참조

http://blog.naver.com/hss9205/221156888101

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호