feat(player): звуки для сна (белый/розовый/коричневый шум) + Smart Sleep Fade
SleepSoundPlayer — процедурная генерация цветного шума через AudioTrack (розовый — фильтр Келлета, коричневый — random walk). В таймере сна выбор звука: радио плавно перетекает в выбранный шум (кроссфейд ≤90с), шум играет, к концу затухает — как в спеке («Smart Sleep Fade»). В шторке таймера — чипы выбора звука. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -75,7 +75,8 @@ class PlayerViewModel @Inject constructor(
|
||||
// Таймер сна: оставшееся время в мс (null = выключен).
|
||||
val sleepRemainingMs: StateFlow<Long?> = playerController.sleepRemainingMs
|
||||
|
||||
fun startSleepTimer(minutes: Int) = playerController.startSleepTimer(minutes * 60_000L)
|
||||
fun startSleepTimer(minutes: Int, sound: com.radiola.service.SleepSound? = null) =
|
||||
playerController.startSleepTimer(minutes * 60_000L, sound)
|
||||
fun cancelSleepTimer() = playerController.cancelSleepTimer()
|
||||
|
||||
private var nowPlayingJob: Job? = null
|
||||
|
||||
Reference in New Issue
Block a user