From 760be7636add49825bf08ce0d2147d8d22f185c3 Mon Sep 17 00:00:00 2001 From: edde746 <86283021+edde746@users.noreply.github.com> Date: Mon, 9 Feb 2026 18:38:40 +0100 Subject: [PATCH] fix: playback speed having no effect on Android TV Closes #424 --- .../com/edde746/plezy/exoplayer/ExoPlayerCore.kt | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/android/app/src/main/kotlin/com/edde746/plezy/exoplayer/ExoPlayerCore.kt b/android/app/src/main/kotlin/com/edde746/plezy/exoplayer/ExoPlayerCore.kt index 70fa5098..524bfe49 100644 --- a/android/app/src/main/kotlin/com/edde746/plezy/exoplayer/ExoPlayerCore.kt +++ b/android/app/src/main/kotlin/com/edde746/plezy/exoplayer/ExoPlayerCore.kt @@ -714,7 +714,16 @@ class ExoPlayerCore(private val activity: Activity) : Player.Listener { } fun setPlaybackSpeed(speed: Float) { - exoPlayer?.setPlaybackSpeed(speed.coerceIn(0.25f, 4f)) + val clampedSpeed = speed.coerceIn(0.25f, 4f) + exoPlayer?.setPlaybackSpeed(clampedSpeed) + + // Disable tunneling when speed != 1.0 — tunneled playback bypasses + // ExoPlayer's audio processors, silently ignoring speed changes. + trackSelector?.setParameters( + trackSelector!!.buildUponParameters() + .setTunnelingEnabled(clampedSpeed == 1f) + ) + delegate?.onPropertyChange("speed", speed.toDouble()) }