2013년 12월 8일 일요일

SDK - ATEM Switchers (2. 기초 스위처 제어)

2. 기초 스위처 제어
스위처 API는 ATEM 스위처 장비를 제어하기 위한 프레임워크를 제공한다. API는 스위처 입력 설정, 변화수행이나 컷 만들기같은 운용을 활성화한다.

2.1.1 스위처 설정과 변화
스위처 제어를 위한 응용프로그램은 다음의 단계를 수행할 것이다.

  • IBMDSwithcerDiscovery::ConnectTo 를 사용하여 스위처 장비에 연결하고 IBMDSwitcher 객체 인터페이스를 얻는다.
  • IBMDSwitcher::CreateIterator를 사용하여 IBMDSwitcherInputIterator 객체 인터페이스를 가져온다.
  • IBMDSwitcherInputIterator::Next에 의해 반환된 IBMDSwitcherInput은 IBMDSwitcherInput::GetInputId를 사용하여 입력의 유일한 ID를 끌어내고, IBMDSwitcherInput::GetString나 IBMDSwitcherInput::GetInt를 사용하여 입력의 이름과 같은 입력의 다른 속성들을 끌어낸다.
  • IBMDSwitcher::CreateIterator을 사용하여 IBMDSwitcherMixEffectBlockIterator 객체 인터페이스를 가져온다.
  • IBMDSwitcherMixEffectBlock 객체 인터페이스는 IBMDSwitcherMixEffectBlockIterator::Next를 사용하여 획득한다.
  • IBMDSwitcherMixEffectBlock::SetInt 사용하여 프로그램을 구성하고, 입력 할당에 의한 혼합 효과 블럭을 위한 미리보기 입력은  IBMDSwitcherInput::GetInputID에 의해 반환된다.
  • IBMDSwitcherMixEffectBlock::PerformTransition 호출에 의해 프로그램과 미리보기 입력 사이의 변환을 수행한다.
  • IBMDSwitcherMixEffectBlock::AddCallback을 사용하여 콜백을 설치하고 IBMDSwithcerMixEffectBlockCallback::PropertyChanged 콜백으로 변환을 통한 진행 결정과 변환 완료를 한 때를 받는다.

2.2 스위처 자료형
2.2.1 기초 스위처 자료형
  • BMDSwitcherInputId
    • BMDSwitcherInputId는 부호있는 64비트 정수형과 각 스위처 입력을 위한 유일한 ID가 사용된다.

2.2.2 스위처 이벤트형
BMDSwitcherEventType은 IBMDSwitcher를 위한 가능한 이벤트 형을 열거한다.
  • bmdSwitcherEventTypeVideoModeChanged
    • 비디오 표준 변경
  • bmdSwitcherEventTypeDownConverterModeChanged
    • 하향 변환 모드 변경
  • bmdSwitcherEventTypePowerStatusChanged
    • 전원 상태 변경
  • bmdSwitcherEventTypeDisconnected
    • 스위처 연결끊김

2.2.3 스위처 전원 상태
BMDSwitcherPowerStatus는 가능한 전원 상태 플래그를 열거한다. 형은 IBMDSwitcher 객체 인터페이스에 의해 사용된다.
  • bmdSwitcherPowerStatusSupply1
    • 공급 1 전원
  • bmdSwitcherPowerStatusSupply2
    • 공급 2 전원

2.2.4 스위처 비디오 모드
BMDSwitcherVideoMode는 스위처에 의해 사용되어지는 비디오 표준을 열거한다.
  • bmdSwitcherVideoMode525i5994NTSC
    • 세로 525픽셀, 인터레이스, 59.94Hz(NTSC)
  • bmdSwitcherVideoMode625i50AL
    • 세로 625픽셀, 인터레이스, 50Hz(PAL)
  • bmdSwitcherVideoMode525i5994Anamorphic
    • 세로 525픽셀, 인터레이스, 59.94Hz(anamorphic 16:9 widescreen)
  • bmdSwitcherVideoMode625i50Anamorphic
    • 세로 625픽셀, 인터레이스, 50Hz(anamorphic 16:9 widescreen)
  • bmdSwitcherVideoMode720p50
    • 세로 720픽셀, 프로그래시브, 50Hz
  • bmdSwitcherVideoMode720p5994
    • 세로 720픽셀, 프로그래시브, 59.94Hz
  • bmdSwitcherVideoMode1080i50
    • 세로 1080픽셀, 인터레이스, 50Hz
  • bmdSwitcherVideoMode1080i5994
    • 세로 1080픽셀, 인터레이스, 59.94Hz
  • bmdSwitcherVideoMode1080p2398
    • 세로 1080픽셀, 프로그래시브, 23.98Hz
  • bmdSwitcherVideoMode1080p24
    • 세로 1080픽셀, 프로그래시브, 24Hz
  • bmdSwitcherVideoMode1080p25
    • 세로 1080픽셀, 프로그래시브, 25Hz
  • bmdSwitcherVideoMode1080p2997
    • 세로 1080픽셀, 프로그래시브, 29.97Hz
  • bmdSwitcherVideoMode1080p50
    • 세로 1080픽셀, 프로그래시브, 50Hz
  • bmdSwitcherVideoMode1080p5994
    • 세로 1080픽셀, 프로그래시브, 59.94Hz
  • bmdSwitcherVideoMode4KHDp2398
    • 세로 2160픽셀, 가로 3840픽셀, 프로그래시브, 23.98Hz
  • bmdSwitcherVideoMode4KHDp24
    • 세로 2160픽셀, 가로 3840픽셀, 프로그래시브, 24Hz
  • bmdSwitcherVideoMode4KHDp25
    • 세로 2160픽셀, 가로 3840픽셀, 프로그래시브, 25Hz
  • bmdSwitcherVideoMode4KHDp2997
    • 세로 2160픽셀, 가로 3840픽셀, 프로그래시브, 29.97Hz

2.2.5 스위처 하향 변환 모드
BMDSwitcherDownConverterMode는 방송 표준 사이의 하향 변환을 위한 가능한 모드를 열거한다.
  • bmdSwitcherDownConverterModeCentreCut
    • 중심 자르기 변환
  • bmdSwitcherDownConverterModeLetterbox
    • 편지 상자 변환
  • bmdSwitcherDownConverterModeAnamorphic
    • 아나모픽 변환

2.2.6 스위처 입력 속성
BMDSwitcherInputPropertyId는 스위처 입력의 가능한 속성들을 열거한다.
  • bmdSwitcherInputPropertyIdPortType
    • 입력 포트형으로 BMDSwitcherPortType
  • bmdSwitcherInputPropertyIdInputAvailability
    • 입력 유효성으로 BMDSwitcherInputAvailability
  • bmdSwitcherInputPropertyIdShortName
    • 짧은 이름 설명 스위처 입력으로 4글자 제한 문자열
  • bmdSwitcherInputPropertyIdLongName
    • 긴 이름 설명 스위처 입력으로 20글자 제한 문자열
  • bmdSwitcherInputPropertyIdIsProgramTallied
    • 현재 프로그램에 부합되는 입력인지 아닌지를 표시하는 플래그
  • bmdSwitcherInputPropertyIdIsPreviewTallied
    • 현재 미리보그에 부합되는 입력인지 아닌지를 표시하는 플래그
  • bmdSwitcherInputPropertyIdAvailableExternalPortTypes
    • 유효한 외부 포트형으로 BMDSwitcherExternalPortType의 bit 마스크
  • bmdSwitcherInputPropertyIdCurrentExternalPortType
    • 선택된 외부 포트 형으로 BMDSwitcherExternalPortType

2.2.7 스위처 외부 포트형
BMDSwitcherExternalPortType은 입력을 위한 외부 포트 형의 다른 종류를 열거한다. 이 열거는 입력 포트가 하나 이상의 연결 형을 지원할 동안 bitset을 표현한다.
  • bmdSwitcherExternalPortTypeSDI
    • SDI 연결
  • bmdSwitcherExternalPortTypeHDMI
    • HDMI 연결
  • bmdSwitcherExternalPortTypeComponent
    • 콤포넌트 연결
  • bmdSwitcherExternalPortTypeComposite
    • 콤포지트 연결, 오직 SD 비디오 모드에서만 유효
  • bmdSwitcherExternalPortTypeSVideo
    • SVideo 연결, 오직 SD 비디오 모드에서만 유효
  • bmdSwitcherExternalPortTypeXLR
    • XLR 오디오 연결
  • bmdSwitcherExternalPortTypeAESEBU
    • AES EBU 오디오 연결
  • bmdSwitcherExternalPortTypeRCA
    • RCA 오디오 연결
  • bmdSwitcherExternalPortTypeInternal
    • 이것은 내부 입력 포트임

2.2.8 스위처 포트 타입
BMDSwitcherPortType은 스위치을 위해 유효한 가능한 스위처 입력 포트형을 열거한다.
  • bmdSwitcherPortTypeExternal
    • 포트는 물리적 연결자로 된 외부 포트이다.
  • bmdSwitcherPortTypeBlack
    • 포트는 검정 비디오 생성 포트이다.
  • bmdSwitcherPortTypeColorBars
    • 포트는 컬러바 생성 포트이다.
  • bmdSwitcherPortTypeColorGenerator
    • 포트는 색깔 생성 포트이다.
  • bmdSwitcherPortTypeMediaPlayerFill
    • 포트는 미디어 재생 채움 포트이다.
  • bmdSwitcherPortTypeMediaPlayerCut
    • 포트는 미디어 컷 포트이다.
  • bmdSwitcherPortTypeSuperSource
    • 포트는 슈퍼 소스 포트이다.
  • bmdSwitcherPortTypeMixEffectBlockOutput
    • 포트는 혼합 효과 블럭 출력 포트이다.
  • bmdSwitcherPortTypeAuxOutput
    • 포트는 보조 출력 포트이다.

2.2.9 스위처 입력 가능한 것
BMDSwitcherInputAvailability는 포트에 입력 가능한 것의 다른 종류를 열거한다. 이 열거는 입력이 다중으로 이용가능한 것을 가질수 있는동안 bitset을 표현한다.
  • bmdSwitcherInputAvailabilityMixEffectBlock0
    • 입력은 혼합 효과 블럭 0에 의해 사용되어지는 것이 유효하다.
  • bmdSwitcherInputAvailabilityMixEffectBlock1
    • 입력은 혼합 효과 블럭 1에 의해 사용되어지는 것이 유효하다.
  • bmdSwitcherInputAvailabilityAuxOutputs
    • 입력은 보조 출력에 의해 사용되어지는 것이 유효하다.
  • bmdSwitcherInputAvailabilityMultiView
    • 입력은 다중보기창으로 경로설정되어질 수 있다.
  • bmdSwitcherInputAvailabilitySuperSourceArt
    • 입력은 수퍼 소스 아트를 위해 사용되어지는 것이 유효하다.
  • bmdSwitcherInputAvailabilitySuperSourceBox
    • 입력은 수퍼 소스 박스를 위해 사용되어지는 것이 유효하다.
  • bmdSwitcherInputAvailabilityInputCut
    • 입력은 컷으로 사용되어지는 것이 유효하다.

2.2.10 스위처 혼합 효과 블럭 속성
BMDSwitcherMixEffectBlockPropertyId는 혼합 효과 블럭의 가능한 속성을 열거한다.

  • bmdSwitcherMixEffectBlockPropertyIdProgramInput
    • BMDSwitcherInputId 으로 프로그램 입력
  • bmdSwitcherMixEffectBlockPropertyIdPreviewInput
    • BMDSwitcherInputId 으로 프리뷰 입력
  • bmdSwitcherMixEffectBlockPropertyIdTransitionPosition
    • 시작 0에서 끝 1의 변화를 통한 진행을 0과 1 사이의 실수값 표현
  • bmdSwitcherMixEffectBlockPropertyIdTransitionFramesRemaining
    • 변화에서 남은 프레임의 정수 숫자
  • bmdSwitcherMixEffectBlockPropertyIdInTransition
    • 변화에서 혼합 효과 블럭 중인 상태의 논리값
  • bmdSwitcherMixEffectBlockPropertyIdFadeToBlackFramesRemaining
    • 검정으로 사라짐에서 남은 프레임의 정수 숫자
  • bmdSwitcherMixEffectBlockPropertyIdFadeToBlack
    • 검정으로 사라짐에서 혼합 효과 블럭 중인 상태의 논리값
  • bmdSwitcherMixEffectBlockPropertyIdPreviewLive
    • 프리뷰가 실시간일때 논리값 true
  • bmdSwitcherMixEffectBlockPropertyIdPreviewTransition
    • 프리뷰 변화가 활성일 때 논리값 true
  • bmdSwitcherMixEffectBlockPropertyIdInputAvailabilityMask
    • 이 혼합 효과 블럭에 상응하는 BMDSwitcherInputAvailability 비트 값
  • bmdSwitcherMixEffectBlockPropertyIdFadeToBlackRate
    • 프레임에서 검정으로 사라짐 비율
  • bmdSwitcherMixEffectBlockPropertyIdFadeToBlackFullyBlack
    • 검정으로 사라짐이 완전 검정일 때 논리값은 true
  • bmdSwitcherMixEffectBlockPropertyIdFadeToBlackInTransition
    • 검정으로 사람짐이 변화중일 때 논리값은 true

2.2.11 스위처 연결 오류
BMDSwitcherConnectToFailure는 스위처에 연결 시 발생할 수 있는 가능한 오류를 열거한다.



2.2.12 스위처 다중보기 레이아웃
BMDSwitcherMultiViewLayout은 다중보기에서 가능한 레이아웃 포멧을 열거한다.


2.2.13 스위처 색 이벤트
BMDSwitcherInputColorEventType은 IBMDSwitcherInputColorCallback를 위한 가능한 이벤트 형식을 열거한다.


2.2.14 스위처 보조(Aux) 이벤트
BMDSwitcherInputAuxEventType은 IBMDSwitcherInputAuxCallback를 위한 가능한 이벤트 형식을 열거한다.


2.2.15 스위처 다중보기 이벤트
BMDSwitcherMultiViewEventType은 IBMDSwitcherMultiViewCallback를 위한 가능한 이벤트 형식을 열거한다.


2.3 인터페이스 참조 (IBMDSwitcherDiscovery 인터페이스)
IBMDSwitcherDiscovery 객체 인터페이스는 물리적 스위처 장치로의 연결에 사용된다.

IBMDSwitcherDiscovery 객체 인터페이스에 참조는 native COM을 지원하는 플랫폼의 CoCreateInstance나, 다른 플랫폼의 CreateBMDSwitcherDiscoveryInstance로부터 얻을 수 있다.

  • 메소드
    • ConnectTo
  • 설명
    • 스위처에 연결


2.3.1.1 IBMDSwitcherDiscovery::ConnectTo 메소드
ConnectTo 메소드는 설정된 스위처에 연결하고, 스위처의 IBMDSwitcher 객체 인터페이스를 반환한다.
Note: ConnectTo는 동기 네트워크 연결로 동작한다. 이것은 호스트이름 크기와 네트워크 응답시간에 따라 몇초가 걸릴 것이다.

  • 문법
    • HRESULT connectTo(string deviceAddress, IBMDSwitcher** switcherDevice, BMDSwitcherConnectToFailure* failReason);
  • 파라미터
    • deviceAddress
      • in
      • 연결할려는 네트워크 호스트이름 또는 스위처의 IP 주소
    • switcherDevice
      • out
      • 연결된 스위처의 IBMDSwitcher 객체 인터페이스
    • failReason
      • out
      • BMDSwitcherConnectToFailure 값인 연결 실패의 이유
  • 반환값
    • E_FAIL
      • 실패
    • S_OK
      • 성공
    • E_POINTER
      • 스위처장치 또는 실패이유 파라미터가 잘못됨.

2.3.2 IBMDSwitcher 인터페이스
IBMDSwitcher 객체 인터페이스는 물리적 스위처 장치를 표현한다.
  • 관계된 인터페이스
    • IBMDSwitcherDiscovery
      • 인터페이스ID
        • IID_IBMDSwitcherDiscovery
      • IBMDSwitcher IBMDSwitcherDiscovery::ConnectTo 메소드 호출 성공 후에 객체는 반환될 것이다.
  • 메소드
    • GetProductName
      • 스위처의 제품 이름을 가져옴
    • GetVideoMode
      • 스위처에 적용된 비디오 표준을 가져옴
    • SetVideoMode
      • 스위처에 적용된 비디오 표준을 설정
    • GetDownConverterMode
      • 방송 표준들 사이로 하향 변화될 때 적용된 변환 모드를 가져옴
    • SetDownConverterMode
      • 방송 표준들 사이로 하향 변화될 때 적용된 변환 모드를 설정
    • GetPowerStatus
      • 스위처의 전원 상태를 가져옴
    • DoesSupportVideoMode
      • 비디오 표준이 스위처에의해 지원되는지 아닌지를 결정
    • CreateIterator
      • 반복자 생성
    • AddCallback
      • 스위처 이벤트를 받을 콜백 추가
    • RemoveCallback
      • 콜백 제거


2.3.3 IBMDSwitcherCallback 인터페이스
IBMDSwitcherCallback 객체 인터페이스는 IBMDSwitcher 객체에서 이벤트 발생 때 호출되는 메소드를 포함하고 있는 콜백 클래스이다. 모든 콜백 메소드처럼, 이 콜백 메소드는 다른 스레드로부터 호출될 것이다.

  • 관계된 인터페이스
    • IBMDSwitcher
      • 인터페이스ID
        • IID_IBMDSwitcher
      • IBMDSwitcherCallback 객체 인터페이스는 IBMDSwitcher::AddCallback로 설정되고 IBMDSwitcher::RemoveCallback로 제거된다.
  • 메소드
    • Notify
      • 인벤트 발생시 호출된다.

2.3.4 IBMDSwitcherInputIterator 인터페이스
IBMDSwitcherInputIterator 객체 인터페이스는 사용가능한 스위처 입력의 열거에 사용된다.
  • 관계된 인터페이스
    • IBMDSwitcher
      • 인터페이스ID
        • IID_IBMDSwitcher
      • IBMDSwitcher::CreateIterator는 IID_IBMDSwitcherInputIterator IDD가 설정될 때 IBMDSwitcherInputIterator 객체 인터페이스를 반환한다.
  • 메소드
    • Next
      • 다음 사용가능한 스위처 입력 반환
    • GetById
      • 입력 ID로 스위처 입력 반환

2.3.5 IBMDSwitcherInput 인터페이스
IBMDSwitcherInput 객체 인터페이스는 물리적 스위처 장치를 표시한다.
  • 관계된 인터페이스
    • IBMDSwitcherInputDiscovery
      • 인터페이스ID
        • IID_IBMDSwitcherInputDiscovery
      • IBMDSwitcherInput 객체는 IBMDSwitcherInputDiscovery::ConnectTo 메소드 호출 성공 후에 반환될 것이다.
  • 메소드
    • AddCallback
      • 수신 입력 속성 변경에 콜백 추가
    • RemoveCallback
      • 콜백 제거
    • GetInputId
      • 이 입력의 유일한 ID 가져옴
    • GetFlag
      • 논리 인코딩 모드 설정의 현재 값 가져옴
    • GetInt
      • int64_t 인코딩 모드 설정의 현재 값 가져옴
    • GetFloat
      • double 인코딩 모드 설정의 현재 값 가져옴
    • GetString
      • 문자열 인코딩 모드 설정의 현재 값 가져옴
    • SetFlag
      • 논리 인코딩 모드 설정의 값 설정
    • SetInt
      • int64_t  인코딩 모드 설정의 값 설정
    • SetFloat
      • double 인코딩 모드 설정의 값 설정
    • SetString
      • 문자열 인코딩 모드 설정의 값 설정

2.3.6 IBMDSwitcherInputCallback 인터페이스
IBMDSwitcherInputCallback 객체 인터페이스는 스위처 입력 속성 변경 시 호출되는 콜백 클래스이다.
  • 관계된 인터페이스
    • IBMDSwitcherInput
      • 인터페이스ID
        • IID_IBMDSwitcherInput
      • IBMDSwitcherInputCallback 객체 인터페이스는 IBMDSwitcherInput::AddCallback로 설정될 것이다.
  • 메소드
    • PropertyChanged
      • 스위처 입력 속성 변경됨

2.3.7 IBMDSwitcherMixEffectBlockIterator 인터페이스
IBMDSwitcherMixEffectBlockIterator 객체 인터페이스는 사용가능한 혼합 효과 블럭 열거에 사용된다.
  • 관계된 인터페이스
    • IBMDSwitcher
      • 인터페이스ID
        • IID_IBMDSwitcher
      • IBMDSwitcher::CreateIterator는 IID_IBMDSwitcherMixEffectBlockIterator IID가 설정될 때 IBMDSwitcherMixEffectBlockIterator 객체 인터페이스를 반환한다.
  • 메소드
    • Next
      • 다음 사용가능한 스위처 혼합 효과 블럭 반환

2.3.8 IBMDSwitcherMixEffectBlock 인터페이스
IBMDSwitcherMixEffectBlock 객체 인터페이스는 스위처 장치의 혼합 효과 블럭을 표시한다.
  • 관계된 인터페이스
    • IBMDSwitcherMixEffectBlockIterator
      • 인터페이스 ID
        • IID_IBMDSwitcherMixEffectBlockIterator
      • IBMDSwitcherMixEffectBlockIterator::Next는 스위처 장치의 각각의 사용가능한 혼합 효과 블럭을 위한 IBMDSwitcherMixEffectBlock 객체 인터페이스를 반환한다.
  • 메소드
    • CreateIterator
      • 반복자 생성
    • AddCallback
      • 수신 혼합 효과 블럭 속성 변경에 콜백 추가
    • RemoveCallback
      • 콜백 제거
    • GetFlag
      • 논리 인코딩 모드 설정의 현재 값 가져옴
    • GetInt
      • int64_t 인코딩 모드 설정의 현재 값 가져옴
    • GetFloat
      • double 인코딩 모드 설정의 현재 값 가져옴
    • GetString
      • 문자열 인코딩 모드 설정의 현재 값 가져옴
    • SetFlag
      • 논리 인코딩 모드 설정의 값 설정
    • SetInt
      • int64_t  인코딩 모드 설정의 값 설정
    • SetFloat
      • double 인코딩 모드 설정의 값 설정
    • SetString
      • 문자열 인코딩 모드 설정의 값 설정

2.3.9 IBMDSwitcherMixEffectBlockCallback Interface
IBMDSwitcherMixEffectBlockCallback 객체 인터페이스는 혼합 효과 블럭 속성 변경 시 호출되는 콜백 클래스이다.
  • 관계된 클래스
    • IBMDSwitcherMixEffectBlock
      • 인터페이스ID
        • IID_IBMDSwitcherMixEffectBlock
      • IBMDSwitcherMixEffectBlockCallback 객체 인터페이스는 IBMDSwitcherMixEffectBlock::AddCallback로 설정될 것이다.
  • 메소드
    • PropertyChanged
      • 혼합 효과 블럭 속성 변경

2.3.10 IBMDSwitcherInputColor 인터페이스
IBDSwitcherInputColor 객체 인터페이스는 색 생성 입력 포트 관리에 사용된다.
  • 관계된 인터페이스
    • IBMDSwitcherInput
      • 인터페이스ID
        • IID_IBMDSwitcherInput
      • IBMDSwitcherInputColor 객체 인터페이스는 IBMDSwitcherInput::QueryInterface로 포함될 수 있다.
  • 메소드
    • GetHue
      • 현재 색조값 가져옴
    • SetHue
      • 색조값 설정
    • GetSaturation
      • 현재 채도값 가져옴
    • SetSaturation
      • 채도값 설정
    • GetLuma
      • 현재 밝기값 가져옴
    • SetLuma
      • 밝기값 설정
    • AddCallback
      • 색 입력 콜백 추가
    • RemoveCallback
      • 색입력 콜백 제거


2.3.11 IBMDSwitcherInputColorCallback 인터페이스
IBMDSwitcherInputColorCallback 객체 인터페이스는 IBMDSwitcherInputColor 객체의 이벤트 발생 시 호출되는 메소드를 포함하고 있는 콜백 클래스이다. 모든 콜백 메소드처럼, 이 콜백 메소다는 다른 스레드로부터 호출될 것이다.
  • 관계된 인터페이스
    • IBMDSwitcherInputColor
      • 인터페이스ID
        • IID_IBMDSwitcherInputColor
      • IBMDSwitcherInputColorCallback 객체 인터페이스는 IBMDSwitcherInputColor::AddCallback로 설정되고 IBMDSwitcherInputColor::RemoveCallback로 제거된다.
  • 메소드
    • Notify
      • 이벤트 발생 시 호출됨

2.3.12 IBMDSwitcherInputAux 인터페이스
IBMDSwitcherInputAux 객체 인터페이스는 보조 출력 포트 관리에 사용된다.
  • 관계된 인터페이스
    • IBMDSwitcherInput
      • 인터페이스ID
        • IID_IBMDSwitcherInput
      • IBMDSwitcherInputAux 객체 인터페이스는 IBMDSwitcherInput::QueryInterface로 포함될 수 있다.
  • 메소드
    • GetInputSource
      • 선택된 입력 소드 가져옴
    • SetInputSource
      • 입력 소스 선택
    • GetInputAvailabilityMask
      • 보조 포트에 상응하는 BMDSwitcherInputAvailability 비트 값 가져옴
    • AddCallback
      • 보조 콜백 추가
    • RemoveCallback
      • 보조 콜백 제거

2.3.13 IBMDSwitcherInputAuxCallback 인터페이스
IBMDSwitcherInputAuxCallback 객체 인터페이스는 IBMDSwitcherInputAux 객체의 이벤트 발생 시 호출되는 메소드를 포함하고 있는 콜백 클래스이다. 모든 콜백 메소드처럼, 이 콜백 메소드는 다른 스레드로부터 호출될 것이다.
  • 관계된 인터페이스
    • IBMDSwitcherInputAux
      • 인터페이스ID
        • IID_IBMDSwitcherInputAux
      • IBMDSwitcherInputAuxCallback 객체 인터페이스는 IBMDSwitcherInputAux::AddCallback로 설정되고 IBMDSwitcherInputAux::RemoveCallback로 제거된다.
  • 메소드
    • Notify
      • 이벤트 발생시 호출됨

2.3.14 IBMDSwitcherMultiViewIterator 인터페이스
IBMDSwitcherMultiViewIterator는 사용가능한 다중보기 열거에 사용된다.

2.3.15 IBMDSwitcherMultiView 인터페이스
IBMDSwitcherMultiView 객체 인터페이스는 레이아웃 포맷 설정같은 다중보기 출력의 제어 함수 접근이나 다른 입력을 창으로 경로설정에 사용된다.
  • 관계된 인터페이스
    • IBMDSwitcherMultiViewIterator
      • 인터페이스ID
        • IID_IBMDSwitcherMultiViewIterator
      • IBMDSwitcherMultiView 객체는 IBMDSwitcherMultiViewIterator::Next 메소드 호출 성공 후에 반환될 것이다.
  • 메소드
    • GetLayout
      • 현제 레이아웃 포맷 가져옴
    • SetLayout
      • 레이아웃 포맷 설정
    • GetWindowInput
      • 창의 현재 입력 경로설정 가져옴
    • SetWindowInput
      • 창의 입력 경로설정 설정
    • GetWiondowCount
      • 사용가능한 창의 개수 가져옴
    • GetInputAvailabilityMask
      • 다중보기를 위한 상응하는 BMDSwitcherInputAvailability 비트 값 가져옴
    • CanRouteInputs
      • 다중보기가 고객 창에-입력 경로설정인지 아닌지 결정
    • AddCallback
      • 다중보기 콜백 추가
    • RemoveCallback
      • 다중보기 콜백 제거

2.3.16 IBMDSwitcherMultiViewCallback 인터페이스
IBMDSwitcherMultiViewCallback 객체 인터페이스는 IBMDSwitcherMultiView 객체의 이벤트 발생 시 호출되는 메소드를 포함한 콜백 클래스이다.

댓글 없음:

댓글 쓰기