Windows Media Format 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 | IWMLicenseBackup 및 IWMLicenseRestore 인터페이스에 필요한 속성을 설정, 검색 및 제거합니다. |
IWMBandwidthSharing | 대역폭 공유 개체를 구성합니다. 대역폭 공유 개체는 프로필 개체에 의해 생성되어 개별 비트 전송률에 관계없이 둘 사이에 일정량 이상의 대역폭을 사용하지 않는 스트림을 지정합니다. |
IWMClientConnections | 기록기 네트워크 싱크 개체에 연결된 클라이언트에 대한 정보를 검색합니다. |
IWMClientConnections2 | 기록기 네트워크 싱크 개체에 연결된 클라이언트에 대한 고급 정보를 검색합니다. |
IWMCodecAMVideoAccelerator | Windows Media 디코더 DMO 노출되고 미디어 플레이어의 원본 필터에 의해 호출되어 Windows Media Video 콘텐츠의 디코딩에 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 인터페이스의 AllocateForOutput 및 AllocateForStream 메서드에 대한 확장된 대안을 제공합니다. |
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 | 기록기에서 사후 보기 샘플을 수신하기 위해 애플리케이션에서 구현합니다. |
IWMWriterPreprocess | 다중 패스 인코딩에 대한 설정을 관리합니다. |
IWMWriterPushSink | 밀어넣기 싱크 개체를 관리합니다. |
IWMWriterSink | 기록기 인터페이스에서 원시 Windows Media Format 입력을 관리합니다. 다른 기록기 싱크 인터페이스의 기본 인터페이스로 사용됩니다. |
다음 표에서는 각 인터페이스의 상속과 인스턴스를 가져올 수 있는 개체를 보여 줍니다.
인터페이스 | 에서 상속 | 개체 |
---|---|---|
INSNetSourceCreator | IUnknown | Source Creator 개체 |
INSSBuffer | IUnknown | Buffer 개체 |
INSSBuffer2 | INSSBuffer | Buffer 개체 |
INSSBuffer3 | INSSBuffer2 | Buffer 개체 |
INSSBuffer4 | INSSBuffer3 | Buffer 개체 |
IReferenceClock | IUnknown | Reader 개체 |
IWMAddressAccess | IUnknown | 기록기 네트워크 싱크 개체 |
IWMAddressAccess2 | IWMAddressAccess | 기록기 네트워크 싱크 개체 |
IWMBackupRestoreProps | IUnknown | Backup Restorer 개체 |
IWMBandwidthSharing | IWMStreamList | 대역폭 공유 개체 |
IWMClientConnections | IUnknown | 기록기 네트워크 싱크 개체 |
IWMClientConnections2 | IWMClientConnections | 기록기 네트워크 싱크 개체 |
IWMCodecAMVideoAccelerator | IUnknown | Windows Media 디코더 DMO |
IWMCodecInfo | IUnknown | Profile Manager 개체 |
IWMCodecInfo2 | IWMCodecInfo | Profile Manager 개체 |
IWMCodecInfo3 | IWMCodecInfo2 | Profile Manager 개체 |
IWMCredentialCallback | IUnknown | 애플리케이션에서 구현 |
IWMDRMEditor | IUnknown | 메타데이터 편집기 개체 |
IWMDRMReader | IUnknown | Reader 개체 |
IWMDRMWriter | IUnknown | Writer 개체 |
IWMHeaderInfo | IUnknown | 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체, Writer 개체 |
IWMHeaderInfo2 | IWMHeaderInfo | 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체, Writer 개체 |
IWMHeaderInfo3 | IWMHeaderInfo2 | 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체, Writer 개체 |
IWMImageInfo | IUnknown | 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체 |
IWMIndexer | IUnknown | Indexer 개체 |
IWMIndexer2 | IWMIndexer | Indexer 개체 |
IWMInputMediaProps | IWMMediaProps | 입력 미디어 속성 개체 |
IWMIStreamProps | IUnknown | Stream 개체(IStream) |
IWMLanguageList | IUnknown | Profile 개체, 메타데이터 편집기 개체, Reader 개체, 동기 판독기 개체, Writer 개체 |
IWMLicenseBackup | IUnknown | Backup Restorer 개체 |
IWMLicenseRestore | IUnknown | Backup Restorer 개체 |
IWMMediaProps | IUnknown | 입력 미디어 속성 개체 , 출력 미디어 속성 개체, Stream 구성 개체 |
IWMMetadataEditor | IUnknown | 메타데이터 편집기 개체 |
IWMMetadataEditor2 | IWMMetadataEditor | 메타데이터 편집기 개체 |
IWMMutualExclusion | IWMStreamList | 상호 배제 개체 |
IWMMutualExclusion2 | IWMMutualExclusion | 상호 배제 개체 |
IWMOutputMediaProps | IUnknown | 출력 미디어 속성 개체 |
IWMPacketSize | IUnknown | Profile Manager 개체 |
IWMPacketSize2 | IWMPacketSize | Profile Manager 개체 |
IWMPlayerHook | IUnknown | 애플리케이션에서 구현 |
IWMPlayerTimestampHook | IUnknown | 원본 필터 |
IWMProfile | IUnknown | Profile 개체 |
IWMProfile2 | IWMProfile | Profile 개체 |
IWMProfile3 | IWMProfile2 | Profile 개체 |
IWMProfileManager | IUnknown | Profile Manager 개체 |
IWMProfileManager2 | IWMProfileManager | Profile Manager 개체 |
IWMProfileManagerLanguage | IUnknown | Profile Manager 개체 |
IWMPropertyVault | IUnknown | stream 구성 개체 |
IWMReader | IUnknown | Reader 개체 |
IWMReaderAccelerator | IUnknown | Reader 개체 |
IWMReaderAdvanced | IUnknown | Reader 개체 |
IWMReaderAdvanced2 | IWMReaderAdvanced | Reader 개체 |
IWMReaderAdvanced3 | IWMReaderAdvanced2 | Reader 개체 |
IWMReaderAdvanced4 | IWMReaderAdvanced3 | Reader 개체 |
IWMReaderAllocatorEx | IUnknown | 애플리케이션에서 구현 |
IWMReaderCallback | IWMStatusCallback | 애플리케이션에서 구현 |
IWMReaderCallbackAdvanced | IUnknown | 애플리케이션에서 구현 |
IWMReaderNetworkConfig | IUnknown | Reader 개체 |
IWMReaderNetworkConfig2 | IWMReaderNetworkConfig | Reader 개체 |
IWMReaderStreamClock | IUnknown | Reader 개체 |
IWMReaderTimecode | IUnknown | Reader 개체 |
IWMReaderTypeNegotiation | IUnknown | Reader 개체 |
IWMRegisterCallback | IUnknown | 애플리케이션에서 구현 |
IWMSBufferAllocator | IUnknown | 네트워크 서버에서 구현 |
IWMSInternalAdminNetSource | IUnknown | 네트워크 원본 관리자 개체 |
IWMSInternalAdminNetSource2 | IWMSInternalAdminNetSource | 네트워크 원본 관리자 개체 |
IWMSInternalAdminNetSource3 | IWMSInternalAdminNetSource2 | 네트워크 원본 관리자 개체 |
IWMStatusCallback | IUnknown | 애플리케이션에서 구현 |
IWMStreamConfig | IUnknown | stream 구성 개체 |
IWMStreamConfig2 | IWMStreamConfig | stream 구성 개체 |
IWMStreamConfig3 | IWMStreamConfig2 | stream 구성 개체 |
IWMStreamList | IUnknown | 대역폭 공유 개체, 상호 배제 개체 |
IWMStreamPrioritization | IUnknown | Stream 우선 순위 지정 개체 |
IWMSyncReader | IUnknown | 동기 판독기 개체 |
IWMSyncReader2 | IWMSyncReader | 동기 판독기 개체 |
IWMVideoMediaProps | IWMMediaProps | stream 구성 개체 |
IWMWatermarkInfo | IUnknown | Writer 개체 |
IWMWriter | IUnknown | Writer 개체 |
IWMWriterAdvanced | IUnknown | Writer 개체 |
IWMWriterAdvanced2 | IWMWriterAdvanced | Writer 개체 |
IWMWriterAdvanced3 | IWMWriterAdvanced2 | Writer 개체 |
IWMWriterFileSink | IWMWriterSink | 기록기 파일 싱크 개체 |
IWMWriterFileSink2 | IWMWriterFileSink | 기록기 파일 싱크 개체 |
IWMWriterFileSink3 | IWMWriterFileSink2 | 기록기 파일 싱크 개체 |
IWMWriterNetworkSink | IWMWriterSink | 기록기 네트워크 싱크 개체 |
IWMWriterPostView | IUnknown | Writer 개체 |
IWMWriterPostViewCallback | IUnknown | 애플리케이션에서 구현 |
IWMWriterPreprocess | IUnknown | Writer 개체 |
IWMWriterPushSink | IWMWriterSink | 기록기 밀어넣기 싱크 개체 |
IWMWriterSink | IUnknown | 기록기 파일 싱크 개체, 기록기 네트워크 싱크 개체, 기록기 밀어넣기 싱크 개체 |
발언
이 SDK의 각 인터페이스에 대한 인터페이스 식별자는 "IID_" 앞에 오는 인터페이스의 이름입니다. 예를 들어 IWMReaderAdvanced 인터페이스의 식별자는 IID_IWMReaderAdvanced. 판독기 개체의 IWMReaderAdvanced 인터페이스에 대한 포인터를 가져오려면 다음 코드를 사용합니다. 여기서 pReaderIWMReader 인터페이스에 대한 포인터입니다.
IWMReaderAdvanced *pReaderAdvanced;
hr = pReader->QueryInterface(IID_IWMReaderAdvanced,
(LPVOID*) &pReaderAdvanced);
관련 항목