Windows에서 사용 가능한 모든 비디오 코덱을 열거하는 가장 좋은 방법은 무엇입니까?
-
09-06-2019 - |
문제
Windows XP / Vista 컴퓨터에서 모든 비디오 코덱을 열거 할 수있는 좋은 방법을 찾고 있습니다.
압축기 및 압축 해제기를 포함한 비디오 코덱 세트를 사용자에게 제공해야합니다. 출력은 다음과 같습니다. 라코 디스
제가 겪고있는 문제는 시스템에서 사용할 수있는 모든 디코더를 캡처 할 수있는 신뢰할 수있는 방법이 없다는 것입니다. 예 :
- DirectShow를 사용하여 모든 압축 해제기를 열거 할 수 있지만 압축 (인코더)에 대한 정보는 없습니다.
- Windows 용 비디오 구성 요소를 모두 열거 할 수 있지만 인코더인지 디코더인지는 표시되지 않습니다.
- 작업을 완벽하게 수행 할 수있는 DirectShow 필터 (예 : Motion JPEG 필터)가 있지만 특정 DirectShow 필터가 "비디오 디코더"라는 표시는 없습니다.
Windows API를 사용하여이 문제에 대한 일반화 솔루션을 찾은 사람이 있습니까? Windows Vista Media Foundation API 가 이러한 문제를 해결합니까?
해결책
이는 DirectShow에서 가장 잘 처리됩니다.
DirectShow는 현재 플랫폼 SDK의 일부입니다. 라코 디스
다음 호출은 콘솔에 대한 모든 비디오 압축기를 열거합니다. 라코 디스
MSDN 페이지 필터 카테고리 에는 모든기타 '공식'카테고리
좋은 출발점이되기를 바랍니다.
다른 팁
위의 답변은 압축 해제기를 고려하지 않습니다.CLSID_VideoDecompressorCategory가 없습니다.필터가 동영상 압축 해제 기인지 묻는 방법이 있나요?
내가 알지 못합니다.
이 목록에있는 대부분의 필터는 코덱이므로 인코더와 디코더를 모두 포함합니다.
필터 라코 디스
설치된 VfW 필터를 감싸는 래퍼입니다.
(일부 소프트웨어 회사는 자체 카테고리를 생성하므로 일부 머신에는 '비공식'카테고리가있을 수 있습니다.)
설치된 모든 카테고리를 보려면 DirectShow SDK와 함께 제공되는 GraphEdit를 사용하십시오.
GraphEdit 자체는 DirectShow의 내부 기능을 볼 수있는 훌륭한 도구입니다.따라서 시스템의 필터 (및 상호 작용)에 대한 자세한 정보의 출처가 될 수 있습니다.
또 다른 점을 잊었습니다.
Windows Media Foundation은 WMV / WMA를 사용하기위한 도구 키트입니다.DirectShow가 지원하는 모든 것을 제공하지는 않습니다.실제로 Windows Media 용 SDK 일뿐입니다. WMV / WMA에는 DirectShow에 대한 바인딩이 있으므로 DirectShow 응용 프로그램에서 WM * 파일 / 스트림을 사용할 수 있습니다.