Skip to content
This repository was archived by the owner on Mar 30, 2026. It is now read-only.

Commit 2eb5cb7

Browse files
committed
fix: audio delay nicht working
1 parent 6722b86 commit 2eb5cb7

3 files changed

Lines changed: 14 additions & 24 deletions

File tree

app/src/main/java/live/mehiz/mpvkt/ui/player/controls/components/panels/AudioDelayPanel.kt

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,7 @@ import androidx.compose.material3.MaterialTheme
1414
import androidx.compose.material3.Text
1515
import androidx.compose.runtime.Composable
1616
import androidx.compose.runtime.collectAsState
17-
import androidx.compose.runtime.derivedStateOf
1817
import androidx.compose.runtime.getValue
19-
import androidx.compose.runtime.remember
2018
import androidx.compose.runtime.setValue
2119
import androidx.compose.ui.Alignment
2220
import androidx.compose.ui.Modifier
@@ -43,20 +41,12 @@ fun AudioDelayPanel(
4341
) {
4442
val delayControlCard = createRef()
4543

46-
val delay by MPVLib.propFloat["audio-delay"].collectAsState()
47-
val delayInt by remember { derivedStateOf { (delay!! * 1000).toInt() } }
44+
val delay by MPVLib.propDouble["audio-delay"].collectAsState()
4845
DelayCard(
49-
delay = delayInt,
50-
onDelayChange = {
51-
MPVLib.setPropertyFloat("audio-delay", delay!! / 1000f)
52-
},
53-
onApply = { preferences.defaultAudioDelay.set(delayInt) },
54-
onReset = {
55-
MPVLib.setPropertyFloat(
56-
"audio-delay",
57-
preferences.defaultAudioDelay.get() / 1000f
58-
)
59-
},
46+
delayMs = (delay!! * 1000).toInt(),
47+
onDelayChange = { MPVLib.setPropertyDouble("audio-delay", it / 1000.0) },
48+
onApply = { preferences.defaultAudioDelay.set((delay!! * 1000).toInt()) },
49+
onReset = { MPVLib.setPropertyDouble("audio-delay", (preferences.defaultAudioDelay.get() / 1000.0)) },
6050
title = { AudioDelayCardTitle(onClose = onDismissRequest) },
6151
delayType = DelayType.Audio,
6252
modifier = Modifier.constrainAs(delayControlCard) {

app/src/main/java/live/mehiz/mpvkt/ui/player/controls/components/panels/SubtitleDelayPanel.kt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ fun SubtitleDelayPanel(
7474
val secondaryDelayInt by remember { derivedStateOf { (secondaryDelay!! * 1000).toInt() } }
7575
val speed by MPVLib.propFloat["sub-speed"].collectAsState()
7676
SubtitleDelayCard(
77-
delay = if (affectedSubtitle == SubtitleDelayType.Secondary) secondaryDelayInt else delayInt,
77+
delayMs = if (affectedSubtitle == SubtitleDelayType.Secondary) secondaryDelayInt else delayInt,
7878
onDelayChange = {
7979
when (affectedSubtitle) {
8080
SubtitleDelayType.Both -> {
@@ -110,7 +110,7 @@ fun SubtitleDelayPanel(
110110

111111
@Composable
112112
fun SubtitleDelayCard(
113-
delay: Int,
113+
delayMs: Int,
114114
onDelayChange: (Int) -> Unit,
115115
speed: Float,
116116
onSpeedChange: (Float) -> Unit,
@@ -122,7 +122,7 @@ fun SubtitleDelayCard(
122122
modifier: Modifier = Modifier,
123123
) {
124124
DelayCard(
125-
delay = delay,
125+
delayMs = delayMs,
126126
onDelayChange = onDelayChange,
127127
onApply = onApply,
128128
onReset = onReset,
@@ -165,7 +165,7 @@ enum class SubtitleDelayType(
165165
@Suppress("LambdaParameterInRestartableEffect") // Intentional
166166
@Composable
167167
fun DelayCard(
168-
delay: Int,
168+
delayMs: Int,
169169
onDelayChange: (Int) -> Unit,
170170
onApply: () -> Unit,
171171
onReset: () -> Unit,
@@ -192,7 +192,7 @@ fun DelayCard(
192192
title()
193193
OutlinedNumericChooser(
194194
label = { Text(stringResource(R.string.player_sheets_sub_delay_card_delay)) },
195-
value = delay,
195+
value = delayMs,
196196
onChange = onDelayChange,
197197
step = 50,
198198
min = Int.MIN_VALUE,
@@ -208,13 +208,13 @@ fun DelayCard(
208208
horizontalArrangement = Arrangement.spacedBy(MaterialTheme.spacing.smaller),
209209
) {
210210
var timerStart by remember { mutableStateOf<Long?>(null) }
211-
var finalDelay by remember { mutableIntStateOf(delay) }
211+
var finalDelay by remember { mutableIntStateOf(delayMs) }
212212
LaunchedEffect(isDirectionPositive) {
213213
if (isDirectionPositive == null) {
214214
onDelayChange(finalDelay)
215215
return@LaunchedEffect
216216
}
217-
finalDelay = delay
217+
finalDelay = delayMs
218218
timerStart = System.currentTimeMillis()
219219
val startingDelay: Int = finalDelay
220220
while (isDirectionPositive != null && timerStart != null) {

app/src/main/java/live/mehiz/mpvkt/ui/player/controls/components/panels/SubtitleSettingsTypographyCard.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ fun SubtitleSettingsTypographyCard(
126126
val borderStyle by remember {
127127
derivedStateOf { SubtitlesBorderStyle.entries.first { it.value == mpvBorderStyle } }
128128
}
129-
val borderSize by MPVLib.propInt["sub-border-size"].collectAsState()
129+
val borderSize by MPVLib.propInt["sub-outline-size"].collectAsState()
130130
val shadowOffset by MPVLib.propInt["sub-shadow-offset"].collectAsState()
131131
Row(
132132
Modifier
@@ -248,7 +248,7 @@ fun SubtitleSettingsTypographyCard(
248248
valueText = borderSize.toString(),
249249
onChange = {
250250
preferences.borderSize.set(it)
251-
MPVLib.setPropertyInt("sub-border-size", it)
251+
MPVLib.setPropertyInt("sub-outline-size", it)
252252
},
253253
max = 100,
254254
icon = { Icon(Icons.Default.BorderColor, null) },

0 commit comments

Comments
 (0)