하드웨어 비디오 코덱 지원
LINE Planet은 1대1 통화나 그룹 통화(컨퍼런스)에서 사용자 기기의 하드웨어 비디오 코덱이 활성화되거나 비활성화되도록 요청할 수 있습니다.
여기서는 하드웨어 비디오 코덱의 활성화 또는 비활성화를 설정하고 그 결과를 확인하는 법을 안내합니다.
지원 통화 유형 | 최소 SDK 버전 |
---|---|
1대1 통화, 그룹 통화 | PlanetKit 3.2 |
Note
하드웨어 비디오 코덱을 지원하기 위해 LINE Planet 자체에서 H.264 코덱을 제공하지는 않으며, 사용자 기기에 H.264 하드웨어 코덱이 있는 경우 LINE Planet은 사용자 기기의 H.264 하드웨어 코덱이 활성화되도록 요청합니다. 자세한 내용은 LINE Planet 통화 품질을 참고하세요.
하드웨어 비디오 코덱 활성화 또는 비활성화 설정
이 섹션에서는 하드웨어 비디오 코덱을 활성화하거나 비활성화하도록 설정하는 방법을 설명합니다.
Note
- 아래와 같은 이유로, 반드시 하드웨어 비디오 코덱이 활성화된다고 보장하지는 않습니다.
- 1대1 통화에서 피어가 하드웨어 비디오 코덱을 이용할 수 없을 때가 있습니다.
- LINE Planet 팀이 운영상의 이슈로 해당 기능을 비활성화할 경우가 있습니다.
- PlanetKit 6.0 이전에는 1대1 통화를 발신/수신하거나 그룹 통화에 참여할 때 통화 파라미터를 이용해 하드웨어 비디오 코덱 활성화 여부를 설정했습니다. 그러나 PlanetKit 6.0부터는 각 1대1 통화나 그룹 통화마다 개별적으로 설정하는 대신
PlanetKitManager
를 통해 하드웨어 비디오 코덱 활성화 여부를 설정합니다.
SDK를 초기화할 때 withSetPreferredHardwareCodecKey()
를 사용하여 하드웨어 비디오 코덱 활성화 여부를 설정할 수 있습니다.
class YourApplication {
func initializePlanetKit() {
let logLevel: PlanetKitLogLevel = .simple
let logSizeLimit: PlanetKitLogSizeLimit = .small
// Create preferred hardware codec settings
let preferredHardwareCodec = PlanetKitPreferredHardwareCodec(/* set params*/)
let settingBuilder = PlanetKitInitialSettingBuilder()
.withEnableKitLogKey(level: logLevel, enable: true, logSize: logSizeLimit)
.withSetKitServerKey(serverUrl: planet_base_url)
// Configure the preferred hardware codec settings
.withSetPreferredHardwareCodecKey(preferredHardwareCodec: preferredHardwareCodec)
let initialSettings = settingBuilder.build()
// Initialize PlanetKit with the preferred hardware codec settings
PlanetKitManager.shared.initialize(initialSettings: initialSettings)
...
}
}
초기화 후 하드웨어 비디오 코덱 활성화 여부를 설정하려면 새 설정과 함께 update()
를 사용하세요.
func updatePlanetKit() {
// Create a preferred hardware codec instance with the current settings
let preferredHardwareCodec = PlanetKitPreferredHardwareCodec(/* set params*/)
// Create update settings with the new hardware codec preferences
let updateSettings = PlanetKitInitialSettingBuilder()
.withSetPreferredHardwareCodecKey(preferredHardwareCodec: preferredHardwareCodec)
.build()
// Update PlanetKit with the preferred hardware codec settings
PlanetKitManager.shared.update(initialSettings: updateSettings)
}
하드웨어 비디오 코덱 활성화 여부 확인
하드웨어 비디오 코덱의 활성화/비활성화 결과는 콜 셋업(call setup) 과정에서 결정됩니다. 따라서 didConnect
이벤트가 발생한 후에 결과를 확인해야 합니다.
- 1대1 통화에서는
didConnect
에서 전달한PlanetKitCallConnectedParam
의isVideoHardwareCodecEnabled
를 사용하여 하드웨어 코덱 활성화 여부를 확인할 수 있습니다. - 그룹 통화에서는
didConnect
에서 전달한PlanetKitConferenceConnectedParam
의isVideoHardwareCodecEnabled
를 사용하여 하드웨어 코덱 활성화 여부를 확인할 수 있습니다.
관련 API
하드웨어 비디오 코덱 지원과 관련된 API는 다음과 같습니다.