ICodecAPI 인터페이스(strmif.h)

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngine 및 Media Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드가 DirectShow 대신 Media Foundation에서 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

ICodecAPI 인터페이스는 인코더 또는 디코더 필터에서 설정을 설정하고 검색합니다.

참고

strmif.h에 선언된 API는 UWP(유니버설 Windows 플랫폼) 앱에서 지원되지 않습니다. UWP 앱에서 ICodecAPI를 사용하려면 icodecapi.h에 선언된 버전을 사용합니다.

상속

ICodecAPI 인터페이스는 IUnknown 인터페이스에서 상속됩니다. ICodecAPI 에는 다음과 같은 유형의 멤버도 있습니다.

메서드

ICodecAPI 인터페이스에는 이러한 메서드가 있습니다.

 
ICodecAPI::GetAllSettings

GetAllSettings 메서드는 코덱의 현재 속성을 가져와서 스트림에 씁니다. (ICodecAPI.GetAllSettings)
ICodecAPI::GetDefaultValue

GetDefaultValue 메서드는 코덱 속성의 기본값을 가져옵니다. (ICodecAPI.GetDefaultValue)
ICodecAPI::GetParameterRange

GetParameterRange 메서드는 코덱 속성의 값 범위를 가져옵니다. (ICodecAPI.GetParameterRange)
ICodecAPI::GetParameterValues

GetParameterValues 메서드는 코덱 속성에 대해 가능한 값 목록을 가져옵니다. (ICodecAPI.GetParameterValues)
ICodecAPI::GetValue

GetValue 메서드는 코덱 속성의 현재 값을 가져옵니다.
ICodecAPI::IsModifiable

IsModifiable 메서드는 코덱의 현재 구성을 고려하여 코덱 속성을 변경할 수 있는지 여부를 쿼리합니다. (ICodecAPI.IsModifiable)
ICodecAPI::IsSupported

IsSupported 메서드는 코덱이 지정된 속성을 지원하는지 여부를 쿼리합니다. (ICodecAPI.IsSupported)
ICodecAPI::RegisterForEvent

RegisterForEvent 메서드는 코덱에서 이벤트를 수신하도록 애플리케이션을 등록합니다. (ICodecAPI.RegisterForEvent)
ICodecAPI::SetAllDefaults

SetAllDefaults 메서드는 모든 코덱 속성을 기본값으로 다시 설정합니다. (ICodecAPI.SetAllDefaults)
ICodecAPI::SetAllDefaultsWithNotify

SetAllDefaultsWithNotify 메서드는 모든 코덱 속성을 기본값으로 다시 설정하고 변경된 속성 목록을 반환합니다. (ICodecAPI.SetAllDefaultsWithNotify)
ICodecAPI::SetAllSettings

SetAllSettings 메서드는 스트림에서 코덱 속성을 읽고 코덱에서 설정합니다. (ICodecAPI.SetAllSettings)
ICodecAPI::SetAllSettingsWithNotify

SetAllSettingsWithNotify 메서드는 스트림에서 코덱 속성을 읽고, 코덱에 설정하고, 변경된 속성 목록을 반환합니다. (ICodecAPI.SetAllSettingsWithNotify)
ICodecAPI::SetValue

SetValue 메서드는 코덱 속성의 값을 설정합니다. (ICodecAPI.SetValue)
ICodecAPI::SetValueWithNotify

SetValueWithNotify 메서드는 코덱에서 속성을 설정하고 결과적으로 변경된 다른 속성 목록을 반환합니다. (ICodecAPI.SetValueWithNotify)
ICodecAPI::UnregisterForEvent

UnregisterForEvent 메서드는 지정된 인코더 이벤트에 대한 애플리케이션의 등록을 취소합니다. (ICodecAPI.UnregisterForEvent)

설명

이 인터페이스는 코덱(인코더 또는 디코더)에서 속성을 설정하기 위한 제네릭 메커니즘을 정의합니다. 코덱 속성은 키/값 쌍입니다. 여기서 키는 GUID이고 값은 VARIANT입니다. VARIANT 데이터의 해석은 속성 GUID에 따라 달라집니다. 코덱 속성 GUID 목록은 코덱 API 속성을 참조하세요.

코덱 프로필

코덱은 필요에 따라 시스템 레지스트리에 프로필 및 기능 정보를 저장할 수 있습니다. 이 정보를 사용하면 애플리케이션이 디바이스 열거 중에 디바이스를 쿼리할 수 있습니다. 기본 프로필은 다음 레지스트리 키에 저장됩니다.
HKEY_LOCAL_MACHINE
   Software
      Classes
         CLSID
            Category
               Profiles
각 프로필은 기본 문자열이 프로필의 텍스트 설명인 레지스트리 키입니다. 각 값에는 GUID 이름이 있으며 그 뒤에 숫자 GUID 값이 포함된 문자열 값이 있습니다. 예를 들면 다음과 같습니다.
C++
  HLKM\Software\Classes\CLSID\<category>\Profiles\DVD
    default "HQ DVD"
    REG_SZ {...} = "0"
    REG_SZ {...} = "1234"
여기서 {...}는 애플리케이션이 사용자 인터페이스에 매핑할 수 있는 속성 GUID입니다. Microsoft는 현재 표준 프로필 집합의 정의를 고려하고 있습니다.

기본 코덱 기능은 HLKM\Software\Classes\CLSID<에 저장됩니다. category>\Instance< CLSID>\Capabilities를 필터링합니다. 각 값에는 GUID 이름이 있으며 그 뒤에 숫자 GUID 값이 포함된 문자열 값이 있습니다. 예를 들면 다음과 같습니다.

C++
HLKM\Software\Classes\CLSID\<category>\Instance\<My DVD encoder>\Capabilities
     default "My DVD encoder"
     REG_SZ_MULTI {...}
여기서 {...}는 애플리케이션이 사용자 인터페이스에 매핑할 수 있는 속성 GUID입니다.

요구 사항

   
지원되는 최소 클라이언트 WINDOWS XP SP2 [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2003 R2 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 strmif.h(Dshow.h 포함)

추가 정보

Windows Media Center Edition의 디코더 설정

인코더 API