From ad74c0a9203742f9e56f2e70c5d5bb5303e60f15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Tue, 23 Nov 2021 11:41:30 -0500 Subject: [PATCH] requestKeyFrame: adapt for API changes Change-Id: I0575361fba597333c7bfa35cef4da86c2bc47163 --- .../src/main/java/cx/ring/services/CameraService.kt | 12 +++++------- .../java/cx/ring/services/HardwareServiceImpl.kt | 4 ++-- .../main/kotlin/net/jami/services/DaemonService.kt | 2 +- .../main/kotlin/net/jami/services/HardwareService.kt | 2 +- 4 files changed, 9 insertions(+), 11 deletions(-) diff --git a/ring-android/app/src/main/java/cx/ring/services/CameraService.kt b/ring-android/app/src/main/java/cx/ring/services/CameraService.kt index 0a930464c..043cb6916 100644 --- a/ring-android/app/src/main/java/cx/ring/services/CameraService.kt +++ b/ring-android/app/src/main/java/cx/ring/services/CameraService.kt @@ -491,14 +491,12 @@ class CameraService internal constructor(c: Context) { return Pair(codec, encoderInput) } - fun requestKeyFrame() { - Log.w(TAG, "requestKeyFrame()") + fun requestKeyFrame(camId: String) { + Log.w(TAG, "requestKeyFrame() $camId") try { - /*if (currentCodec != null) { - val params = Bundle() - params.putInt(MediaCodec.PARAMETER_KEY_REQUEST_SYNC_FRAME, 0) - currentCodec!!.setParameters(params) - }*/ + mParams[camId]?.mediaCodec?.setParameters(Bundle().apply { + putInt(MediaCodec.PARAMETER_KEY_REQUEST_SYNC_FRAME, 0) + }) } catch (e: IllegalStateException) { Log.w(TAG, "Can't send keyframe request", e) } diff --git a/ring-android/app/src/main/java/cx/ring/services/HardwareServiceImpl.kt b/ring-android/app/src/main/java/cx/ring/services/HardwareServiceImpl.kt index 8bd6a922b..9144173a3 100644 --- a/ring-android/app/src/main/java/cx/ring/services/HardwareServiceImpl.kt +++ b/ring-android/app/src/main/java/cx/ring/services/HardwareServiceImpl.kt @@ -468,8 +468,8 @@ class HardwareServiceImpl( videoEvents.onNext(VideoEvent(started = false)) } - override fun requestKeyFrame() { - cameraService.requestKeyFrame() + override fun requestKeyFrame(camId: String) { + cameraService.requestKeyFrame(camId) } override fun setBitrate(camId: String, bitrate: Int) { diff --git a/ring-android/libjamiclient/src/main/kotlin/net/jami/services/DaemonService.kt b/ring-android/libjamiclient/src/main/kotlin/net/jami/services/DaemonService.kt index edc5fc7ad..1a1c969c4 100644 --- a/ring-android/libjamiclient/src/main/kotlin/net/jami/services/DaemonService.kt +++ b/ring-android/libjamiclient/src/main/kotlin/net/jami/services/DaemonService.kt @@ -303,7 +303,7 @@ class DaemonService( } override fun requestKeyFrame(camId: String) { - mHardwareService.requestKeyFrame() + mHardwareService.requestKeyFrame(camId) } override fun setBitrate(camId: String, bitrate: Int) { diff --git a/ring-android/libjamiclient/src/main/kotlin/net/jami/services/HardwareService.kt b/ring-android/libjamiclient/src/main/kotlin/net/jami/services/HardwareService.kt index b1d1fd291..36361ccd6 100644 --- a/ring-android/libjamiclient/src/main/kotlin/net/jami/services/HardwareService.kt +++ b/ring-android/libjamiclient/src/main/kotlin/net/jami/services/HardwareService.kt @@ -95,7 +95,7 @@ abstract class HardwareService( abstract fun startCapture(camId: String?) abstract fun stopCapture(camId: String) abstract fun hasMicrophone(): Boolean - abstract fun requestKeyFrame() + abstract fun requestKeyFrame(camId: String) abstract fun setBitrate(camId: String, bitrate: Int) abstract fun addVideoSurface(id: String, holder: Any) abstract fun updateVideoSurfaceId(currentId: String, newId: String) -- GitLab