mirror of
https://github.com/permissionlesstech/bitchat-android.git
synced 2026-07-25 01:45:22 +00:00
centralize voice recording time
This commit is contained in:
@@ -4,5 +4,9 @@ object MediaConstraints {
|
||||
// Global configurable media size limit (in bytes)
|
||||
// Change this value to adjust the max size for all media transfers
|
||||
const val MAX_MEDIA_BYTES: Long = 1L * 1024L * 1024L // 1 MB
|
||||
}
|
||||
|
||||
// Maximum voice recording duration
|
||||
// Centralizes the limit used for timer display and auto-stop logic
|
||||
const val MAX_RECORDING_SECONDS: Int = 30
|
||||
const val MAX_RECORDING_MS: Long = MAX_RECORDING_SECONDS * 1000L
|
||||
}
|
||||
|
||||
@@ -241,7 +241,7 @@ fun MessageInput(
|
||||
val secs = (elapsedMs / 1000).toInt()
|
||||
val mm = secs / 60
|
||||
val ss = secs % 60
|
||||
val maxSecs = 10 // 10 second max recording time
|
||||
val maxSecs = com.bitchat.android.features.media.MediaConstraints.MAX_RECORDING_SECONDS
|
||||
val maxMm = maxSecs / 60
|
||||
val maxSs = maxSecs % 60
|
||||
Text(
|
||||
|
||||
@@ -20,6 +20,7 @@ import androidx.compose.ui.hapticfeedback.HapticFeedbackType
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.bitchat.android.features.voice.VoiceRecorder
|
||||
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
||||
import com.bitchat.android.features.media.MediaConstraints
|
||||
import com.google.accompanist.permissions.PermissionStatus
|
||||
import com.google.accompanist.permissions.rememberPermissionState
|
||||
import kotlinx.coroutines.Job
|
||||
@@ -82,8 +83,8 @@ fun VoiceRecordButton(
|
||||
val amp = recorder?.pollAmplitude() ?: 0
|
||||
val elapsedMs = (System.currentTimeMillis() - recordingStart).coerceAtLeast(0L)
|
||||
latestOnAmplitude.value(amp, elapsedMs)
|
||||
// Auto-stop after 10 seconds
|
||||
if (elapsedMs >= 10_000 && isRecording) {
|
||||
// Auto-stop after configured max duration
|
||||
if (elapsedMs >= MediaConstraints.MAX_RECORDING_MS && isRecording) {
|
||||
val file = recorder?.stop()
|
||||
isRecording = false
|
||||
recorder = null
|
||||
|
||||
Reference in New Issue
Block a user