안녕하세요? 착한이입니다.
Windows용 멀티미디어 프로그래밍할 때 Directshow를 이용하게 됩니다.
Directshow는 Microsoft 에서 제공한 멀티미디어 프레임워크입니다.
Directshow 필터를 개발하거나 플레이어 개발할 때 Baseclass 및 예제가 필요합니다.
예전에는 Directshow용 SDK(DirectX)가 있었지만 현재는 Windows Classic Samples 에서
Directshow 관련 소스 코드를 확인할 수 있습니다.
Windows Classic Sample 은 아래 github에서 다운로드 가능합니다.
Directshow 필터 개발에 필요한 baseclasses 소스 코드는 다음 링크에서 다운로드 가능합니다.
이 baseclasses 소스 코드를 빌드해서 라이브러리로 만들어서 사용하게 됩니다.
Directshow 필터 예제 소스코드는 다음 링크에서 확인 가능합니다.
소스 필터, 변환 필터, 랜더링 필터를 개발할 때 참고하시면 됩니다.
그리고 Directshow 관련 Player 및 Capture 예제는 다음 링크의 players와 capture 폴더에 확인 가능합니다.
예제별 더 자세한 설명은 다음 링크에서 확인 가능합니다.
https://docs.microsoft.com/en-us/windows/win32/directshow/directshow-samples
Directshow 필터 개발에 유용한 Graphedit 프로그램은 graphedt.exe 파일명으로 다음의 경로에 위치합니다.
필터 등록/해제, 멀티미디어 파일 렌더링, 필터 추가/삭제 등을 할 수 있습니다.
PC에 설치된 Windows SDK 버전을 확인하시길 바랍니다.
Program Files (x86)\Windows Kits\10\bin\SDK버전\x64 폴더
Graphedit의 오픈 소스는 공개되어 있으며, 다음 사이트에서 다운로드 가능합니다.
https://github.com/cplussharp/graph-studio-next
위에서 언급한 소스 코드를 이용하면 Directshow를 이용하여 멀티미디어 처리를 위한 필터 개발이나 프로그램을 개발할 수 있습니다.
Directshow를 이용한 개발을 위해서는 Visual Studio 2019 또는 Visual Studio 2022 가 필요하며, C++ 관련 Feature를 설치해야 합니다.
여기까지 Directshow 관련 사이트에 대해 알아 보았습니다.
Directshow 관련 질문은 댓글 남겨 주시면 답변 드리겠습니다.
그럼 즐겁게 개발하시길 바랍니다.
--------------------------------------------------------
유튜브 채널 방문과 구독 신청 부탁 드립니다.