초록
본 논문에서는 DirectShow 프로그래밍의 주요 개발 도구인 그래프 에디터에서 작성된 필터 연결 그래프로부터 C 소스 코드를 자동 생성하는 시스템에 대한 설명한다. 기존의 DirectShow 프로그래밍 환경에서는 그래프 에디터를 이용한 프로그램 설계 및 실행 확인 작업과 실제 프로그램 코드를 작성하는 프로그램 개발 작업이 별도로 이루어진다. 이에 반해, 본 시스템을 사용할 경우, 멀티미디어 응용 프로그램 개발자는 소스 코드를 직접 일일이 수정할 필요 없이, 그래프 에디터를 이용하여 필터 삽입 및 필터 연결을 통한 프로그램 설계 작업을 수행한 다음, GRF 파일로 저장하기만 하면, 원하는 C 소스 프로그램을 자동적으로 얻을 수 있기 때문에 보다 효과적이고 훨씬 신속한 DirectShow 프로그래밍이 가능하다. 더욱이 본 시스템은, 고정된 개수의 매우 제한된 미디어 제어 기능만을 소스 코드에 추가할 수 있는 기존의 시스템과는 달리, 시스템 사용자인 프로그램 개발자로 하여금 자신이 개발하고자 하는 응용 프로그램에 추가할 미디어 제어 기능을 보다 쉽고 다양하게 선택할 수 있도록 지원하기 때문에 보다 실용적인 도구로 활용될 수 있다.
In this paper, we present an automatic C source code generation system for DirectShow based multimedia application programming. In this system, C source code is automatically synthesized from the filter connection graph edited with GraphEdit, a utility tool provided with DirectShow SDK package from Microsoft. In traditional DirectShow programming environments, program design and brief testing steps are usually done with GraphEdit tool just by inserting filters and connecting them properly, while actual implementation of the program should be done separately. The filter connection graph information from GraphEdit is used just as a reference in such the implementation step. Therefore, our system which automatically generates C source code directly from the filter connection graph of GraphEdit seems very useful and many programmers can develop DirectShow based multimedia application programs more effectively and quickly using our system. In addition, our system supports more various media stream control functions for the generated application programs than the existing system such as Wizard which supports limited and fixed number of media control functions only. This feature allows more flexibility in the user interface of the generated source program and makes our system more practical for DirectShow based programming.