Documentation Index
Fetch the complete documentation index at: https://mintlify.com/vivizzz007/vivi-music/llms.txt
Use this file to discover all available pages before exploring further.
VIVI Music’s Player & Audio settings control every aspect of how music is streamed, processed, and queued — from the bitrate that hits your ears to whether your queue survives an app restart. These settings are accessible from Settings → Player & Audio.
Audio
Queue
Notifications
Audio Quality & Processing
VIVI Music streams audio from YouTube Music’s infrastructure and optionally from JioSaavn. These settings control stream quality, volume handling, and hardware offload behavior.YouTube Music Quality
| Preference Key | Type | Default | Description |
|---|
audioQuality | String (enum) | AUTO | Sets the target YouTube Music stream quality. |
audioNormalization | Boolean | true | Normalizes the playback volume across tracks so loud and quiet songs play at a consistent loudness level. |
enableOffload | Boolean | false | Routes audio decoding to a dedicated hardware DSP co-processor, significantly reducing battery consumption during long listening sessions. Automatically disabled when Crossfade is on because offload is incompatible with real-time audio mixing. |
The audioQuality key accepts values from the AudioQuality enum:| Value | Description |
|---|
AUTO | Automatically selects the best quality for your connection (default) |
HIGH | Forces the highest available bitrate stream |
LOW | Forces a lower bitrate stream to conserve data |
Audio Offload and Crossfade are mutually exclusive. Enabling Crossfade automatically disables Audio Offload because the crossfade engine needs direct access to the audio pipeline.
JioSaavn Streaming
VIVI Music supports supplemental streaming from JioSaavn for tracks with better regional availability. Navigate to Settings → Player & Audio → JioSaavn Settings to configure these options.| Preference Key | Type | Default | Description |
|---|
enableSaavnStreaming | Boolean | false | Enables JioSaavn as a supplemental audio source. |
saavnAudioQuality | String (enum) | QUALITY_320 | Target bitrate for JioSaavn streams. |
The saavnAudioQuality key accepts values from the SaavnAudioQuality enum:| Value | API Value | Label |
|---|
QUALITY_320 | 320kbps | High (320 kbps) |
QUALITY_160 | 160kbps | Medium (160 kbps) |
QUALITY_96 | 96kbps | Low (96 kbps) |
Crossfade
Crossfade blends the end of one track into the beginning of the next. It is currently in beta.| Preference Key | Type | Default | Description |
|---|
crossfadeEnabled | Boolean | false | Enables crossfade between tracks. A beta disclaimer dialog appears the first time you enable this. |
crossfadeDuration | Float | 5f | Duration of the crossfade overlap in seconds (1–15 s), adjusted via a slider. |
crossfadeGapless | Boolean | true | When enabled, the crossfade transition begins immediately after the track ends with no gap. |
Skip Silence
| Preference Key | Type | Default | Description |
|---|
skipSilence | Boolean | false | Detects and skips over prolonged silent passages within a track. |
skipSilenceInstant | Boolean | false | When enabled alongside skipSilence, silent sections are jumped immediately rather than faded through. Requires skipSilence to be active. |
Equalizer
VIVI Music ships its own built-in equalizer. Navigate to Settings → Equalizer (settings/equalizer) to access the full EQ controls and presets.Google Cast
| Preference Key | Type | Default | Description |
|---|
enableGoogleCast | Boolean | true | Enables Google Cast (Chromecast) support. Only available in the GMS (Google Play Services) variant of the app; not present in the F-Droid/FOSS build. |
The Cast toggle is hidden entirely in the FOSS build of VIVI Music where BuildConfig.CAST_AVAILABLE is false.
Queue & Playback Behavior
These settings determine how VIVI Music manages the playback queue, shuffle state, and automatic queue growth.Queue Persistence
| Preference Key | Type | Default | Description |
|---|
persistentQueue | Boolean | true | Saves the current playback queue to the local database so it is fully restored the next time the app opens. |
persistentShuffleAcrossQueues | Boolean | false | Maintains the shuffle state even when you switch to a different queue or playlist. |
rememberShuffleAndRepeat | Boolean | true | Remembers the shuffle and repeat mode between sessions. |
shufflePlaylistFirst | Boolean | false | When starting a playlist in shuffle mode, plays the first track in the list before shuffling the rest. |
Queue Growth
| Preference Key | Type | Default | Description |
|---|
autoLoadMore | Boolean | true | Automatically appends recommended tracks to the queue when it is about to end, keeping music playing indefinitely. |
disableLoadMoreWhenRepeatAll | Boolean | false | Prevents autoLoadMore from adding new tracks when the repeat-all mode is active, so the current queue loops cleanly. |
preventDuplicateTracksInQueue | Boolean | false | Checks the queue before adding a track and skips it if it is already present. |
autoSkipNextOnError | Boolean | false | Automatically advances to the next queued track if the current one fails to load or stream. |
autoDownloadOnLike | Boolean | false | Immediately downloads a track to local storage when you like it. |
Similar Content
| Preference Key | Type | Default | Description |
|---|
similarContent | Boolean | true | Enables YouTube’s similar content and radio recommendations when autoLoadMore extends the queue. |
Miscellaneous Playback
| Preference Key | Type | Default | Description |
|---|
stopMusicOnTaskClear | Boolean | false | Stops playback and clears the queue when VIVI Music is removed from the Android recents panel. |
pauseOnMute | Boolean | false | Pauses playback when the device volume is muted (stream volume reaches 0). |
resumeOnBluetoothConnect | Boolean | false | Automatically resumes playback when a Bluetooth audio device connects. |
keepScreenOn | Boolean | false | Prevents the screen from dimming or locking while the full-screen player is open. |
seekExtraSeconds | Boolean | false | Adds extra seconds to the forward and backward seek actions for quicker navigation through long tracks. |
History Duration
| Preference Key | Type | Default | Description |
|---|
historyDuration | Float | 30f | Controls how many days of listening history are retained (1–100 days). Older entries are automatically pruned. |
Set historyDuration to a higher value (e.g. 365) if you rely on VIVI’s year-in-review Wrapped feature, which needs a full year of data to generate accurate stats.
Notifications
VIVI Music can send OS-level notifications for new music releases from your followed artists.| Preference Key | Type | Default | Description |
|---|
enableNotifications | Boolean | — | Master switch for all VIVI Music notifications. |
newReleaseNotifications | Boolean | — | Sends a notification when a followed artist releases new music on YouTube Music. |
tasteBasedReleaseNotifications | Boolean | — | Sends personalized release notifications based on your listening history and music taste profile, not just followed artists. |
Notification delivery depends on the Android system notification permission being granted. On Android 13+, VIVI Music will prompt for this permission on first launch. You can also manage it at any time in Android Settings → Apps → VIVI Music → Notifications.