다음을 통해 공유


사용자 지정 상호 제외 형식 사용

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

프로필에서 상호 제외 개체를 사용하여 사용자 지정 시나리오의 요구 사항을 충족할 수 있습니다. CLSID_WMMUTEX_UNKNOWN GUID 값을 IWMMutualExclusion::SetType전달하면 사용자 지정 시나리오를 사용하고 있음을 상호 배제 개체에 알릴 수 있습니다.

사용자 지정 상호 제외 값이 있는 파일을 읽을 때 스트림 선택을 수동으로 제어해야 합니다. 판독기 개체는 상호 제외에 추가하는 첫 번째 스트림을 기본값으로 사용합니다.

다음 단계를 사용하여 사용자 지정 상호 제외 개체를 만들고 프로필에 추가합니다.

  1. WMCreateProfileManager 함수를 호출하여 프로필 관리자를 만듭니다.

  2. 기존 프로필로 시작하거나 완전히 새로운 프로필을 만듭니다.

    • 기존 프로필을 사용하는 경우 IWMProfileManager 인터페이스의 로드 메서드 중 하나를 호출합니다. 그런 다음 4단계로 건너뜁니다.
    • 완전히 새로운 프로필을 만드는 경우 IWMProfileManager::CreateEmptyProfile호출합니다.
  3. IWMProfile::CreateNewStream호출하여 새 프로필에 스트림을 추가합니다. IWMStreamConfig메서드를 사용하여 필요에 따라 스트림을 구성합니다. QueryInterface 호출하여 스트림 구성 개체의 다른 인터페이스에 액세스할 수도 있습니다.

    CreateNewStream 스트림 구성 개체만 만들고 프로필에 영향을 주지 않습니다. 스트림이 제대로 구성된 후에는 IWMProfile::AddStream 호출하여 스트림을 프로필에 추가해야 합니다.

  4. IWMProfile::CreateNewMutualExclusion호출하여 상호 제외 개체를 만듭니다.

  5. IWMStreamList::AddStream 호출하여 원하는 스트림을 상호 제외 개체에 추가합니다(IWMStreamList상속하는 IWMMutualExclusion직접 사용 가능).

  6. IWMutualExclusion::SetType호출하여 상호 제외 유형을 사용자 지정으로 설정합니다. CLSID_WMMUTEX_Unknown을 형식 GUID로 전달합니다.

  7. IWMProfile::AddMutualExclusion호출하여 구성된 상호 제외 개체를 프로필에 추가합니다.

IWMMutualExclusion 인터페이스

IWMProfile 인터페이스

IWMProfileManager 인터페이스

IWMStreamConfig 인터페이스

IWMStreamList 인터페이스

상호 배제를 사용하여

WMCreateProfileManager