-
[Directshow] Introduction to DirectShow Application Programming
DirectShow 공부를 좀 해야겠다.이제 하려는 Project가 DirectShow를 기반으로 동작하여 동영상 편집등등을 하는데 기본지식없이 하는건 무리같다.DirectShow와 응용프로그램의 관계DirectShow에서 말하는 소프트웨어 컴포넌트들을Filter라고 부른다.그 필터의 종류에는 여러가지가 있고 직접 만들수도 있다.필터의 예 )read filesget video from a video capture devicedecode various stream formats, such as MPEG-1 videopass data to the graphics or sound cardAVI 파일을 열었을때의 모습이다.File Source […]
-
[DShow] 여러가지 주저리..
[[[[ 이글은 제가 AVI파일을 DirectShow로 재생하면서 경험한 일을 그냥 두서없이 적은글입니다…. ]]]]AVI 를 재생하기위한 Source Filter들.. 1. AsyncReader와 FileSourceFilter + AVISplitter (CLSID_AsyncReader, CLSID_AviSplitter) Direct Show의 기본.. 단점은 불완전한 파일에 대해서 재생불가.. 열려있는 파일이 재생이 되었던가..?-_- 2. AVIFile-based reader Filter (CLSID_AVIDoc) 아래것의 기본이 되는 필터인듯하다. 하지만, 임의의 AVI파일의 사운드가 들리지 않는 현상이 발생한다. 그래프 에디터로 확인시 연결은 잘되어있지만.. 재생시에 에러리턴.. 추측이지만.. VFW를 기본으로 사용하고.. 오디오가 VBR인경우 인식을 […]
-
[Dshow] 연결된 필터 이름 알아오기
관련 Site에서 간단하게 도움을 받아서 작성한 Function입니다.* Wince에서 NullPlayer를 작성하여 OS에서 연결되는 Filter 정보를확인하고자 하여 아래 함수를 작성하였습니다.코드 :HRESULT GetConnectFiltersName( IGraphBuilder *pGraph ){ IEnumFilters *pEnumFilter = NULL; HRESULT hr = pGraph->EnumFilters( &pEnumFilter ); IBaseFilter *pBaseFilter = NULL; FILTER_INFO stFilterInfo; while( S_OK == pEnumFilter->Next( 1, &pBaseFilter, NULL ) ) { pBaseFilter->QueryFilterInfo( &stFilterInfo ); char sztmp[256]; ::WideCharToMultiByte(CP_ACP, 0, stFilterInfo.achName, -1, sztmp, 256, NULL, […]
-
[Dshow] DirectShow Filter Build시 발생하는 Link Error 해결방법
[Dshow] DirectShow Filter Build시 발생하는 Link Error 해결방법Programming/DirectShow2008/03/11 18:11Some of the DirectShow samples break if you install Visual Studio 2005 Beta 2. Most of the errors that I found fall into three categories:C4430: Missing type specifier. To conform with C++, undeclared types do not default to int. All types must be declared. Fix: Declare the […]
-
Dshow 구조도
DirectShow 기술을 사용하여 필터를 개발하는데 조금이나마 도움이 되었으면 좋겠네요모든 baseclass에 대한 클래스 다이어그램은 아니지만,,,일반적으로 많이 사용되는 클래스에 대해 정리해 보았습니다… < 필터 관련 클래스 > < 핀 관련 클래스 >