Windows Media 형식 SDK 인터페이스

[이 페이지와 연결된 기능인 Windows Media Format 11 SDK는 레거시 기능입니다. 원본 판독기 및 싱크 작성기에 의해 대체되었습니다. 원본 판독기 및 싱크 작성기는 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 Windows Media Format 11 SDK 대신 소스 판독기 및 싱크 기록기를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

다음 두 표에서는 이 SDK에서 지원하는 인터페이스에 대해 설명하고 개체 및 기타 인터페이스와의 관계를 보여 줍니다.

인터페이스 설명
INSNetSourceCreator 암호를 캐시하고 프록시 서버를 찾는 데 사용할 수 있는 관리 네트워크 원본 플러그 인을 만듭니다.
INSSBuffer 버퍼 개체에 저장된 버퍼를 제어합니다. 이 인터페이스는 이 SDK의 메서드에 샘플을 전달하는 데 사용됩니다.
INSSBuffer2 INSSBuffer에서 상속됩니다. 이 인터페이스의 새 메서드는 이 릴리스에서 구현되지 않으므로 문서화되지 않았습니다.
INSSBuffer3 버퍼 속성을 설정하고 검색합니다. 버퍼 속성은 이 SDK의 메서드로 전달되거나 전달될 때 버퍼로 정보를 전달하는 데 사용됩니다.
INSSBuffer4 버퍼 속성을 열거합니다.
IReferenceClock 표준 참조 클록에 대한 액세스를 제공합니다.
IRMGetLicense 클라이언트 쪽 라이선스 취득을 수행합니다.
IWMAddressAccess 기록기 네트워크 싱크 개체의 IP 액세스 목록을 제어합니다.
IWMAddressAccess2 IWMAddressAccess 인터페이스에 IPv6 지원을 추가합니다.
IWMAuthorizer 인증서에 대한 액세스를 제공합니다.
IWMBackupRestoreProps IWMLicenseBackupIWMLicenseRestore 인터페이스에 필요한 속성을 설정, 검색 및 제거합니다.
IWMBandwidthSharing 대역폭 공유 개체를 구성합니다. 대역폭 공유 개체는 개별 비트 속도에 관계없이 둘 사이의 특정 대역폭 이상을 사용하지 않는 스트림을 지정하기 위해 프로필 개체에 의해 만들어집니다.
IWMClientConnections 기록기 네트워크 싱크 개체에 연결된 클라이언트에 대한 정보를 검색합니다.
IWMClientConnections2 기록기 네트워크 싱크 개체에 연결된 클라이언트에 대한 고급 정보를 검색합니다.
IWMCodecAMVideoAccelerator Windows Media Decoder DMO 에 의해 노출되고 미디어 플레이어의 원본 필터에서 호출되어 Windows Media 비디오 콘텐츠의 디코딩을 위해 DirectX VA를 사용하도록 설정하는 데 필요한 다양한 연결을 설정합니다.
IWMCodecInfo 시스템에 로드된 지원되는 오디오 코덱에 사용 가능한 형식을 검색합니다. 이러한 형식은 프로필에서 오디오 스트림을 만들 때 사용됩니다.
IWMCodecInfo2 코덱의 이름 및 각 에서 지원하는 형식에 대한 설명에 대한 액세스를 제공합니다.
IWMCodecInfo3 코덱 속성 및 오디오 형식 속성에 대한 액세스를 제공합니다. 또한 기능 지원을 위해 코덱을 쿼리할 수 있습니다.
IWMCodecVideoAccelerator 이 인터페이스는 지원되지 않습니다. 대신 IWMCodecAMVideoAccelerator 를 사용합니다.
IWMCredentialCallback 사용자의 자격 증명을 획득하고 원격 사이트에 액세스할 수 있는 권한이 있는지 확인합니다.
IWMDeviceRegistration 로컬 네트워크에 연결된 디지털 미디어 재생 디바이스에 대한 항목이 포함된 디바이스 등록 데이터베이스를 관리합니다.
IWMDRMEditor 애플리케이션이 보호된 콘텐츠에 대한 라이선스 없이 DRM 헤더 속성을 검사할 수 있도록 합니다.
IWMDRMMessageParser 디지털 미디어 재생 디바이스에서 받은 메시지를 구문 분석합니다.
IWMDRMReader 라이선스를 획득하고 DRM 속성을 구성하며 클라이언트를 개별화합니다.
IWMDRMReader2 Windows Media Rights Manager 10 SDK를 사용하여 만든 라이선스를 읽습니다.
IWMDRMReader3 라이선스에서 승인된 보호 시스템을 가져오는 방법을 제공하여 콘텐츠 전사를 사용하도록 설정합니다.
IWMDRMTranscryptor DRM으로 보호된 콘텐츠를 네트워크 디바이스용 Windows Media DRM 10 보안 전송 프로토콜을 사용하여 보낼 수 있는 데이터 스트림으로 변환합니다.
IWMDRMWriter 기록기 개체에서 라이선스 만들기 기능을 제공합니다.
IWMDRMWriter2 네트워크 디바이스용 Windows Media DRM 10을 지원하는 디바이스로 스트리밍하기 위해 암호화된 데이터가 포함된 스트림 샘플을 허용하도록 기록기를 구성합니다.
IWMDRMWriter3 보호된 콘텐츠를 가져오기 위해 암호화된 스트림 샘플을 작성할 수 있습니다.
IWMGetSecureChannel 이 인터페이스는 한 통신 당사자가 다른 당사자의 IWMSecureChannel 인터페이스를 가져오는 데 사용됩니다.
IWMHeaderInfo 메타데이터, 표식 등의 헤더 정보를 관리 합니다.
IWMHeaderInfo2 파일을 만드는 데 사용되는 코덱에 대한 정보에 대한 액세스를 제공합니다.
IWMHeaderInfo3 특성 언어 지원 및 기타 고급 메타데이터 기능을 제공합니다.
IWMImageInfo 파일에서 ID3v2 "APIC" 프레임을 검색합니다. WM/Picture 특성을 사용하려면 이 인터페이스를 사용하지 않아야 합니다.
IWMIndexer 파일을 수동으로 인덱싱하는 메서드를 제공합니다.
IWMIndexer2 인덱싱 구성 옵션을 제공합니다.
IWMInputMediaProps 입력 미디어 스트림의 속성을 관리합니다.
IWMIStreamProps IStream 개체의 속성을 읽습니다.
IWMLanguageList ASF 파일의 언어 목록을 관리합니다.
IWMLicenseBackup 일반적으로 다른 컴퓨터로 복원할 수 있도록 라이선스를 백업합니다.
IWMLicenseRestore 라이선스를 복원합니다.
IWMMediaProps 스트림에 대한 미디어 형식 구조에 대한 액세스를 제공합니다.
IWMMetadataEditor 메타데이터 편집을 위한 파일 관리를 제공합니다.
IWMMetadataEditor2 메타데이터 편집기에서 사용할 파일을 여는 향상된 방법을 제공합니다.
IWMMutualExclusion 상호 제외 개체를 구성합니다. 상호 배타적 스트림 그룹을 지정하기 위해 프로필 개체에서 상호 제외 개체를 만듭니다.
IWMMutualExclusion2 상호 제외를 위한 그룹화 및 명명 지원을 추가합니다.
IWMOutputMediaProps 출력 스트림의 속성을 관리합니다.
IWMPacketSize ASF 파일에서 패킷의 최대 크기를 관리합니다.
IWMPacketSize2 ASF 파일에서 패킷의 최소 크기를 관리합니다.
IWMPlayerHook DirectX VA(DirectX Video Acceleration)를 사용하는 플레이어 애플리케이션에 의해 구현됩니다. 이를 통해 비디오 스트림의 샘플이 압축 해제를 위해 DirectX VA 지원 비디오 카드 전달될 때 애플리케이션별 처리를 수행할 수 있습니다.
IWMPlayerTimestampHook 플레이어 또는 플레이어 원본 필터에서 구현됩니다. 이를 통해 필터는 비디오 샘플의 타임스탬프를 다운스트림으로 전달하기 전에 수정할 수 있습니다.
IWMProfile 프로필 만들기 및 편집을 관리합니다. 프로필은 스트림 형식, 비트 속도 등과 같은 파일 형식을 설명합니다. 대부분의 애플리케이션은 기존 프로필을 사용하며 이 인터페이스를 구현할 필요가 없습니다.
IWMProfile2 프로필 ID에 대한 액세스를 제공합니다.
IWMProfile3 대역폭 공유, 스트림 우선 순위 지정 및 프로필에서 지원하는 기타 고급 기능을 처리하는 메서드를 제공합니다.
IWMProfileManager 프로필 로드 및 저장을 관리합니다.
IWMProfileManager2 프로필 관리자 개체에서 사용하는 시스템 프로필의 버전 번호를 관리합니다.
IWMProfileManagerLanguage 열거된 시스템 프로필의 언어를 관리합니다.
IWMPropertyVault 속성을 관리하기 위한 표준화된 인터페이스를 제공합니다.
IWMProximityDetection 로컬 네트워크에서 디바이스의 유효성을 검사합니다. 네트워크 디바이스용 Windows Media DRM 10 보안 전송 프로토콜을 사용하여 데이터를 수신하려면 먼저 디바이스의 유효성을 검사해야 합니다.
IWMReader ASF 파일의 비동기 읽기를 관리합니다.
IWMReaderAccelerator WM Reader 개체에 구현됩니다. 디코더 DMO에서 인터페이스를 가져오기 위해 플레이어 또는 플레이어 소스 필터에서 호출됩니다.
IWMReaderAdvanced 사용자가 제공한 클록, 버퍼 할당, 반환 통계 및 스트림 선택 알림 수신과 같은 판독기의 고급 기능을 제공합니다.
IWMReaderAdvanced2 기존 판독기 개체에 대한 고급 메서드의 추가 범위를 제공합니다.
IWMReaderAdvanced3 판독기 개체에 대한 추가 고급 메서드를 제공합니다.
IWMReaderAdvanced4 언어 선택 및 기타 고급 읽기 기능을 지원합니다.
IWMReaderAdvanced5 플레이어 후크 콜백 인터페이스를 판독기 개체와 연결할 수 있습니다.
IWMReaderAdvanced6 샘플 보호를 사용하도록 설정합니다.
IWMReaderAllocatorEx IWMReaderCallbackAdvanced 인터페이스의 AllocateForOutputAllocateForStream 메서드에 대한 확장된 대안을 제공합니다.
IWMReaderCallback 현재 읽기 작업에 대한 샘플 및 상태 정보를 제공하기 위해 애플리케이션에 의해 구현됩니다.
IWMReaderCallbackAdvanced 필요에 따라 애플리케이션에서 기존 판독기 콜백 개체에 고급 기능을 제공하기 위해 구현됩니다.
IWMReaderNetworkConfig 네트워크 구성 설정을 관리합니다.
IWMReaderNetworkConfig2 추가 네트워크 구성 기능을 제공합니다.
IWMReaderPlaylistBurn 재생 목록의 파일을 CD에 복사하기 위한 DRM 권한을 확인합니다.
IWMReaderStreamClock 스트림 클록에서 타이머를 설정 및 취소하고 스트림 클록의 현재 값을 검색하는 데 사용됩니다.
IWMReaderTimecode 파일의 SMPTE 시간 코드에 대한 정보를 제공합니다.
IWMReaderTypeNegotiation 스트림의 출력 속성에 대한 특정 변경 내용이 제대로 작동하는지 여부를 테스트하는 데 사용할 수 있는 단일 메서드를 제공합니다.
IWMRegisterCallback 애플리케이션이 싱크 개체에서 상태 메시지를 가져올 수 있도록 합니다.
IWMRegisteredDevice 디바이스 등록 데이터베이스의 항목에 있는 데이터에 대한 액세스를 제공합니다.
IWMSBufferAllocator 서버에서 버퍼를 할당하는 메서드를 제공합니다.
IWMSecureChannel 두 DLL이 서로 유효성을 검사하고 보안 통신을 수행할 수 있도록 하는 메서드를 제공합니다.
IWMSInternalAdminNetSource 암호 캐시 및 프록시 위치를 관리합니다.
IWMSInternalAdminNetSource2 IWMSInternalAdminNetSource보다 더 안전한 암호 캐싱 메서드를 제공합니다.
IWMSInternalAdminNetSource3 프록시 서버를 찾는 향상된 방법을 제공합니다.
IWMStatusCallback 이 SDK의 여러 개체의 상태 응답하기 위해 애플리케이션에 의해 구현됩니다.
IWMStreamConfig 프로필에서 사용할 스트림의 구성을 관리합니다.
IWMStreamConfig2 추가 스트림 조작 메서드를 제공합니다.
IWMStreamConfig3 스트림에 대한 언어 정보를 관리합니다.
IWMStreamList 스트림 간의 관계를 정의하는 다양한 개체를 관리합니다.
IWMStreamPrioritization 스트림 우선 순위 지정 개체를 구성하는 메서드를 제공합니다.
IWMSyncReader 동기 호출을 사용하여 파일을 읽는 기능을 제공합니다.
IWMSyncReader2 동기 판독기에서 SMPTE 시간 코드 지원을 추가합니다.
IWMVideoMediaProps 비디오 스트림의 속성을 관리합니다.
IWMWatermarkInfo 사용 가능한 워터마크에 대한 액세스를 제공합니다.
IWMWriter ASF 파일을 작성하기 위한 기본 인터페이스로 사용됩니다.
IWMWriterAdvanced 기존 기록기 개체에 대한 고급 기능을 제공합니다.
IWMWriterAdvanced2 특히 디인터레이스된 비디오를 처리하기 위한 몇 가지 고급 기능을 제공합니다.
IWMWriterAdvanced3 자세한 기록기 통계에 대한 메서드를 제공합니다.
IWMWriterFileSink 파일 싱크 개체를 관리합니다.
IWMWriterFileSink2 파일 싱크 개체의 확장된 관리를 제공합니다.
IWMWriterFileSink3 또한 파일 싱크 개체의 기능을 확장합니다.
IWMWriterNetworkSink 네트워크 싱크 개체를 관리합니다.
IWMWriterPostView 기록기에서 샘플의 출력을 관리합니다. 인코딩 프로세스 중에 파일의 인코딩된 콘텐츠를 확인하는 데 사용됩니다.
IWMWriterPostViewCallback 기록기에서 postview 샘플을 수신하도록 애플리케이션에 의해 구현됩니다.
IWMWriterPreprocess 다중 패스 인코딩에 대한 설정을 관리합니다.
IWMWriterPushSink 밀어넣기 싱크 개체를 관리합니다.
IWMWriterSink 기록기 인터페이스에서 원시 Windows Media Format 입력을 관리합니다. 다른 기록기 싱크 인터페이스의 기본 인터페이스로 사용됩니다.

 

다음 표에서는 각 인터페이스의 상속과 instance 가져올 수 있는 개체를 보여 있습니다.

인터페이스 상속 원본 개체
INSNetSourceCreator IUnknown Source Creator 개체
INSSBuffer IUnknown 버퍼 개체
INSSBuffer2 INSSBuffer 버퍼 개체
INSSBuffer3 INSSBuffer2 버퍼 개체
INSSBuffer4 INSSBuffer3 버퍼 개체
IReferenceClock IUnknown 판독기 개체
IWMAddressAccess IUnknown 기록기 네트워크 싱크 개체
IWMAddressAccess2 IWMAddressAccess 기록기 네트워크 싱크 개체
IWMBackupRestoreProps IUnknown Backup Restorer 개체
IWMBandwidthSharing IWMStreamList 대역폭 공유 개체
IWMClientConnections IUnknown 기록기 네트워크 싱크 개체
IWMClientConnections2 IWMClientConnections 기록기 네트워크 싱크 개체
IWMCodecAMVideoAccelerator IUnknown Windows Media 디코더 DMO
IWMCodecInfo IUnknown 프로필 관리자 개체
IWMCodecInfo2 IWMCodecInfo 프로필 관리자 개체
IWMCodecInfo3 IWMCodecInfo2 프로필 관리자 개체
IWMCredentialCallback IUnknown 애플리케이션에서 구현
IWMDRMEditor IUnknown 메타데이터 편집기 개체
IWMDRMReader IUnknown 판독기 개체
IWMDRMWriter IUnknown 기록기 개체
IWMHeaderInfo IUnknown 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체, 기록기 개체
IWMHeaderInfo2 IWMHeaderInfo 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체, 기록기 개체
IWMHeaderInfo3 IWMHeaderInfo2 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체, 기록기 개체
IWMImageInfo IUnknown 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체
IWMIndexer IUnknown 인덱서 개체
IWMIndexer2 IWMIndexer 인덱서 개체
IWMInputMediaProps IWMMediaProps 입력 미디어 속성 개체
IWMIStreamProps IUnknown Stream 개체(IStream)
IWMLanguageList IUnknown Profile 개체, 메타데이터 편집기 개체, Reader 개체, 동기 Reader 개체, Writer 개체
IWMLicenseBackup IUnknown Backup Restorer 개체
IWMLicenseRestore IUnknown Backup Restorer 개체
IWMMediaProps IUnknown 입력 미디어 속성 개체, 출력 미디어 속성 개체, 스트림 구성 개체
IWMMetadataEditor IUnknown 메타데이터 편집기 개체
IWMMetadataEditor2 IWMMetadataEditor 메타데이터 편집기 개체
IWMMutualExclusion IWMStreamList 상호 제외 개체
IWMMutualExclusion2 IWMMutualExclusion 상호 제외 개체
IWMOutputMediaProps IUnknown 출력 미디어 속성 개체
IWMPacketSize IUnknown 프로필 관리자 개체
IWMPacketSize2 IWMPacketSize 프로필 관리자 개체
IWMPlayerHook IUnknown 애플리케이션에서 구현
IWMPlayerTimestampHook IUnknown 원본 필터
IWMProfile IUnknown Profile 개체
IWMProfile2 IWMProfile Profile 개체
IWMProfile3 IWMProfile2 Profile 개체
IWMProfileManager IUnknown 프로필 관리자 개체
IWMProfileManager2 IWMProfileManager 프로필 관리자 개체
IWMProfileManagerLanguage IUnknown 프로필 관리자 개체
IWMPropertyVault IUnknown 스트림 구성 개체
IWMReader IUnknown 판독기 개체
IWMReaderAccelerator IUnknown 판독기 개체
IWMReaderAdvanced IUnknown 판독기 개체
IWMReaderAdvanced2 IWMReaderAdvanced 판독기 개체
IWMReaderAdvanced3 IWMReaderAdvanced2 판독기 개체
IWMReaderAdvanced4 IWMReaderAdvanced3 판독기 개체
IWMReaderAllocatorEx IUnknown 애플리케이션에서 구현
IWMReaderCallback IWMStatusCallback 애플리케이션에서 구현
IWMReaderCallbackAdvanced IUnknown 애플리케이션에서 구현
IWMReaderNetworkConfig IUnknown 판독기 개체
IWMReaderNetworkConfig2 IWMReaderNetworkConfig 판독기 개체
IWMReaderStreamClock IUnknown 판독기 개체
IWMReaderTimecode IUnknown 판독기 개체
IWMReaderTypeNegotiation IUnknown 판독기 개체
IWMRegisterCallback IUnknown 애플리케이션에서 구현
IWMSBufferAllocator IUnknown 네트워크 서버에서 구현
IWMSInternalAdminNetSource IUnknown 네트워크 원본 관리자 개체
IWMSInternalAdminNetSource2 IWMSInternalAdminNetSource 네트워크 원본 관리자 개체
IWMSInternalAdminNetSource3 IWMSInternalAdminNetSource2 네트워크 원본 관리자 개체
IWMStatusCallback IUnknown 애플리케이션에서 구현
IWMStreamConfig IUnknown 스트림 구성 개체
IWMStreamConfig2 IWMStreamConfig 스트림 구성 개체
IWMStreamConfig3 IWMStreamConfig2 스트림 구성 개체
IWMStreamList IUnknown 대역폭 공유 개체, 상호 제외 개체
IWMStreamPrioritization IUnknown Stream Prioritization 개체
IWMSyncReader IUnknown 동기 판독기 개체
IWMSyncReader2 IWMSyncReader 동기 판독기 개체
IWMVideoMediaProps IWMMediaProps 스트림 구성 개체
IWMWatermarkInfo IUnknown 기록기 개체
IWMWriter IUnknown 기록기 개체
IWMWriterAdvanced IUnknown 기록기 개체
IWMWriterAdvanced2 IWMWriterAdvanced 기록기 개체
IWMWriterAdvanced3 IWMWriterAdvanced2 기록기 개체
IWMWriterFileSink IWMWriterSink 기록기 파일 싱크 개체
IWMWriterFileSink2 IWMWriterFileSink 기록기 파일 싱크 개체
IWMWriterFileSink3 IWMWriterFileSink2 기록기 파일 싱크 개체
IWMWriterNetworkSink IWMWriterSink 기록기 네트워크 싱크 개체
IWMWriterPostView IUnknown 기록기 개체
IWMWriterPostViewCallback IUnknown 애플리케이션에서 구현
IWMWriterPreprocess IUnknown 기록기 개체
IWMWriterPushSink IWMWriterSink 기록기 밀어넣기 싱크 개체
IWMWriterSink IUnknown 기록기 파일 싱크 개체, 기록기 네트워크 싱크 개체, 기록기 푸시 싱크 개체

 

설명

이 SDK의 각 인터페이스에 대한 인터페이스 식별자는 "IID_" 앞에 오는 인터페이스의 이름입니다. 예를 들어 IWMReaderAdvanced 인터페이스의 식별자는 IID_IWMReaderAdvanced. 판독기 개체의 IWMReaderAdvanced 인터페이스에 대한 포인터를 가져오려면 다음 코드를 사용합니다. 여기서 pReaderIWMReader 인터페이스에 대한 포인터입니다.

IWMReaderAdvanced *pReaderAdvanced;
hr = pReader->QueryInterface(IID_IWMReaderAdvanced,
                             (LPVOID*) &pReaderAdvanced);

개체

프로그래밍 참조