fix: fallback to nearest bitrate when switching formats (#152)

This commit is contained in:
Naveen Singh 2025-06-10 17:42:24 +05:30 committed by GitHub
parent 6fab2c287c
commit 9b636a3e65
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 8 additions and 1 deletions

View File

@ -45,6 +45,7 @@ import org.fossify.voicerecorder.helpers.SAMPLING_RATE_BITRATE_LIMITS
import org.fossify.voicerecorder.models.Events
import org.greenrobot.eventbus.EventBus
import java.util.Locale
import kotlin.math.abs
import kotlin.system.exitProcess
class SettingsActivity : SimpleActivity() {
@ -226,7 +227,11 @@ class SettingsActivity : SimpleActivity() {
private fun adjustBitrate() {
val availableBitrates = BITRATES[config.extension]!!
if (!availableBitrates.contains(config.bitrate)) {
config.bitrate = DEFAULT_BITRATE
val currentBitrate = config.bitrate
val closestBitrate = availableBitrates.minByOrNull { abs(it - currentBitrate) }
?: DEFAULT_BITRATE
config.bitrate = closestBitrate
binding.settingsBitrate.text = getBitrateText(config.bitrate)
}
}

View File

@ -1,3 +1,5 @@
@file:Suppress("MagicNumber")
package org.fossify.voicerecorder.helpers
const val REPOSITORY_NAME = "Voice-Recorder"