本文にスキップする
Version: 6.0

ハードウェアビデオコーデックのサポート

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通話やグループ通話毎に個別に設定する代わりにPlanetKit通じてハードウェアビデオコーデックの有効化または無効化を設定します。

SDKを初期化した後、setPreferredHardwareCodec()を使用してハードウェアコーデックの有効化の可否を設定します。

class YourApplication : Application() {
override fun onCreate() {
...
val configBuilder = PlanetKit.PlanetKitConfiguration.Builder(this)
.setServerUrl(planet_base_url)
.enableLog(true)
.setLogLevel(PlanetKitLogLevel.SIMPLE)
.setLogSizeLimit(PlanetKitLogSizeLimit.SMALL)

PlanetKit.initialize(configBuilder.build()) { isSuccessful, isVideoHwCodecSupport, userAgent ->
...
// Create preferred hardware codec settings
val preferredHardwareCodec = PlanetKitPreferredHardwareCodec(/* set properties */)
// Configure the preferred hardware codec settings
PlanetKit.setPreferredHardwareCodec(preferredHardwareCodec)
}
...
}
}

ハードウェアビデオコーデックにおける有効化の可否の確認

ハードウェアビデオコーデックの有効化/無効化の結果は、コールセットアップ(call setup)の過程で決定されます。そのため、onConnectedイベントが発生した後に結果を確認する必要があります。

  • 1対1通話では、onConnectedから引き渡されたPlanetKitCallConnectedParamisVideoHardwareCodecEnabledを使用してハードウェアコーデックの有効化の可否を確認できます。
  • グループ通話では、onConnectedから引き渡されたisVideoHardwareCodecEnabledを使用してハードウェアコーデックの有効化の可否を確認できます。

関連API

ハードウェアビデオコーデックのサポートに関連するAPIは、次のとおりです。