{ "startupError": "Something went wrong during app startup. The error was: {error}\n\nPlease create an issue on github.com/UnicornsOnLSD/finamp with a screenshot of this page. If this problem persists you can clear your app data to reset the app.", "@startupError": { "description": "The error message that shows when startup fails.", "placeholders": { "error": { "type": "String", "example": "Failed to open download DB" } } }, "serverUrl": "Server URL", "@serverUrl": {}, "internalExternalIpExplanation": "If you want to be able to access your Jellyfin server remotely, you need to use your external IP.\n\nIf your server is on a HTTP port (80/443), you don't have to specify a port. This will likely be the case if your server is behind a reverse proxy.", "@internalExternalIpExplanation": { "description": "Extra info for which IP to use for remote access, and info on whether or not the user needs to specify a port." }, "emptyServerUrl": "Server URL cannot be empty", "@emptyServerUrl": { "description": "Error message that shows when the user submits a login without a server URL" }, "urlStartWithHttps": "URL must start with http:// or https://", "@urlStartWithHttps": { "description": "Error message that shows when the user submits a server URL that doesn't start with http:// or https:// (for example, ftp://0.0.0.0" }, "urlTrailingSlash": "URL must not include a trailing slash", "@urlTrailingSlash": { "description": "Error message that shows when the user submits a server URL that ends with a trailing slash (for example, http://0.0.0.0/)" }, "username": "Username", "@username": {}, "password": "Password", "@password": {}, "logs": "Logs", "@logs": {}, "next": "Next", "@next": {}, "selectMusicLibraries": "Select Music Libraries", "@selectMusicLibraries": { "description": "App bar title for library select screen" }, "couldNotFindLibraries": "Could not find any libraries.", "@couldNotFindLibraries": { "description": "Error message when the user does not have any libraries" }, "unknownName": "Unknown Name", "@unknownName": {}, "songs": "Songs", "@songs": {}, "albums": "Albums", "@albums": {}, "artists": "Artists", "@artists": {}, "genres": "Genres", "@genres": {}, "playlists": "Playlists", "@playlists": {}, "startMix": "Start Mix", "@startMix": {}, "startMixNoSongsArtist": "Long-press an artist to add or remove it from the mix builder before starting a mix", "@startMixNoSongsArtist": { "description": "Snackbar message that shows when the user presses the instant mix button with no artists selected" }, "startMixNoSongsAlbum": "Long-press an album to add or remove it from the mix builder before starting a mix", "@startMixNoSongsAlbum": { "description": "Snackbar message that shows when the user presses the instant mix button with no albums selected" }, "music": "Music", "@music": {}, "clear": "Clear", "@clear": {}, "favourites": "Favourites", "@favourites": {}, "shuffleAll": "Shuffle all", "@shuffleAll": {}, "finamp": "Finamp", "@finamp": {}, "downloads": "Downloads", "@downloads": {}, "settings": "Settings", "@settings": {}, "offlineMode": "Offline Mode", "@offlineMode": {}, "sortOrder": "Sort order", "@sortOrder": {}, "sortBy": "Sort by", "@sortBy": {}, "album": "Album", "@album": {}, "albumArtist": "Album Artist", "@albumArtist": {}, "artist": "Artist", "@artist": {}, "budget": "Budget", "@budget": {}, "communityRating": "Community Rating", "@communityRating": {}, "criticRating": "Critic Rating", "@criticRating": {}, "dateAdded": "Date Added", "@dateAdded": {}, "datePlayed": "Date Played", "@datePlayed": {}, "playCount": "Play Count", "@playCount": {}, "premiereDate": "Premiere Date", "@premiereDate": {}, "productionYear": "Production Year", "@productionYear": {}, "name": "Name", "@name": {}, "random": "Random", "@random": {}, "revenue": "Revenue", "@revenue": {}, "runtime": "Runtime", "@runtime": {}, "syncDownloadedPlaylists": "Sync downloaded playlists", "@syncDownloadedPlaylists": {}, "downloadMissingImages": "Download missing images", "@downloadMissingImages": {}, "downloadedMissingImages": "{count,plural, =0{No missing images found} =1{Downloaded {count} missing image} other{Downloaded {count} missing images}}", "@downloadedMissingImages": { "description": "Message that shows when the user downloads missing images", "placeholders": { "count": { "type": "int" } } }, "downloadErrors": "Download errors", "@downloadErrors": {}, "downloadCount": "{count,plural, =1{{count} download} other{{count} downloads}}", "@downloadCount": { "placeholders": { "count": { "type": "int" } } }, "downloadedItemsCount": "{count,plural,=1{{count} item} other{{count} items}}", "@downloadedItemsCount": { "placeholders": { "count": { "type": "int" } } }, "downloadedImagesCount": "{count,plural,=1{{count} image} other{{count} images}}", "@downloadedImagesCount": { "placeholders": { "count": { "type": "int" } } }, "downloadedItemsImagesCount": "{downloadedItems}, {downloadedImages}", "@downloadedItemsImagesCount": { "description": "This is for merging downloadedItemsCount and downloadedImagesCount as Flutter's intl stuff doesn't support multiple plurals in one string. https://github.com/flutter/flutter/issues/86906", "placeholders": { "downloadedItems": { "type": "String", "example": "12 downloads" }, "downloadedImages": { "type": "String", "example": "1 image" } } }, "dlComplete": "{count} complete", "@dlComplete": { "placeholders": { "count": { "type": "int" } } }, "dlFailed": "{count} failed", "@dlFailed": { "placeholders": { "count": { "type": "int" } } }, "dlEnqueued": "{count} enqueued", "@dlEnqueued": { "placeholders": { "count": { "type": "int" } } }, "dlRunning": "{count} running", "@dlRunning": { "placeholders": { "count": { "type": "int" } } }, "downloadErrorsTitle": "Download Errors", "@downloadErrorsTitle": {}, "noErrors": "No errors!", "@noErrors": {}, "errorScreenError": "An error occurred while getting the list of errors! At this point, you should probably just create an issue on GitHub and delete app data", "@errorScreenError": {}, "failedToGetSongFromDownloadId": "Failed to get song from download ID", "@failedToGetSongFromDownloadId": {}, "deleteDownloadsPrompt": "Are you sure you want to delete the {itemType, select, album{album} playlist{playlist} artist{artist} genre{genre} track{song} other{}} '{itemName}' from this device?", "@deleteDownloadsPrompt": { "placeholders": { "itemName": { "type": "String", "example": "Abandon Ship" }, "itemType": { "type": "String", "example": "album" } }, "description": "Confirmation prompt shown before deleting downloaded media from the local device, destructive action, doesn't affect the media on the server." }, "deleteDownloadsConfirmButtonText": "Delete", "@deleteDownloadsConfirmButtonText": { "description": "Shown in the confirmation dialog for deleting downloaded media from the local device." }, "deleteDownloadsAbortButtonText": "Cancel", "error": "Error", "@error": {}, "discNumber": "Disc {number}", "@discNumber": { "placeholders": { "number": { "type": "int" } } }, "playButtonLabel": "PLAY", "@playButtonLabel": {}, "shuffleButtonLabel": "SHUFFLE", "@shuffleButtonLabel": {}, "songCount": "{count,plural,=1{{count} Song} other{{count} Songs}}", "@songCount": { "placeholders": { "count": { "type": "int" } } }, "editPlaylistNameTooltip": "Edit playlist name", "@editPlaylistNameTooltip": {}, "editPlaylistNameTitle": "Edit Playlist Name", "@editPlaylistNameTitle": {}, "required": "Required", "@required": {}, "updateButtonLabel": "UPDATE", "@updateButtonLabel": {}, "playlistNameUpdated": "Playlist name updated.", "@playlistNameUpdated": {}, "favourite": "Favourite", "@favourite": {}, "downloadsDeleted": "Downloads deleted.", "@downloadsDeleted": {}, "addDownloads": "Add Downloads", "@addDownloads": {}, "location": "Location", "@location": {}, "downloadsAdded": "Downloads added.", "@downloadsAdded": {}, "addButtonLabel": "ADD", "@addButtonLabel": {}, "shareLogs": "Share logs", "@shareLogs": {}, "logsCopied": "Logs copied.", "@logsCopied": {}, "message": "Message", "@message": {}, "stackTrace": "Stack Trace", "@stackTrace": {}, "applicationLegalese": "Licensed with the Mozilla Public License 2.0. Source code available at:\n\ngithub.com/jmshrv/finamp", "@applicationLegalese": {}, "transcoding": "Transcoding", "@transcoding": {}, "downloadLocations": "Download Locations", "@downloadLocations": {}, "audioService": "Audio Service", "@audioService": {}, "interactions": "Interactions", "@interactions": {}, "layoutAndTheme": "Layout & Theme", "@layoutAndTheme": {}, "notAvailableInOfflineMode": "Not available in offline mode", "@notAvailableInOfflineMode": {}, "logOut": "Log Out", "@logOut": {}, "downloadedSongsWillNotBeDeleted": "Downloaded songs will not be deleted", "@downloadedSongsWillNotBeDeleted": {}, "areYouSure": "Are you sure?", "@areYouSure": {}, "jellyfinUsesAACForTranscoding": "Jellyfin uses AAC for transcoding", "@jellyfinUsesAACForTranscoding": {}, "enableTranscoding": "Enable Transcoding", "@enableTranscoding": {}, "enableTranscodingSubtitle": "Transcodes music streams on the server side.", "@enableTranscodingSubtitle": {}, "bitrate": "Bitrate", "@bitrate": {}, "bitrateSubtitle": "A higher bitrate gives higher quality audio at the cost of higher bandwidth.", "@bitrateSubtitle": {}, "customLocation": "Custom Location", "@customLocation": {}, "appDirectory": "App Directory", "@appDirectory": {}, "addDownloadLocation": "Add Download Location", "@addDownloadLocation": {}, "selectDirectory": "Select Directory", "@selectDirectory": {}, "unknownError": "Unknown Error", "@unknownError": {}, "pathReturnSlashErrorMessage": "Paths that return \"/\" can't be used", "@pathReturnSlashErrorMessage": {}, "directoryMustBeEmpty": "Directory must be empty", "@directoryMustBeEmpty": {}, "customLocationsBuggy": "Custom locations are extremely buggy due to issues with permissions. I'm thinking of ways to fix this, but for now I wouldn't recommend using them.", "@customLocationsBuggy": {}, "enterLowPriorityStateOnPause": "Enter Low-Priority State on Pause", "@enterLowPriorityStateOnPause": {}, "enterLowPriorityStateOnPauseSubtitle": "Lets the notification be swiped away when paused. Also allows Android to kill the service when paused.", "@enterLowPriorityStateOnPauseSubtitle": {}, "shuffleAllSongCount": "Shuffle All Song Count", "@shuffleAllSongCount": {}, "shuffleAllSongCountSubtitle": "Amount of songs to load when using the shuffle all songs button.", "@shuffleAllSongCountSubtitle": {}, "viewType": "View Type", "@viewType": {}, "viewTypeSubtitle": "View type for the music screen", "@viewTypeSubtitle": {}, "list": "List", "@list": {}, "grid": "Grid", "@grid": {}, "portrait": "Portrait", "@portrait": {}, "landscape": "Landscape", "@landscape": {}, "gridCrossAxisCount": "{value} Grid Cross-Axis Count", "@gridCrossAxisCount": { "description": "List tile title for grid cross axis count. Value will either be the portrait or landscape key.", "placeholders": { "value": { "type": "String", "example": "Portrait" } } }, "gridCrossAxisCountSubtitle": "Amount of grid tiles to use per-row when {value}.", "@gridCrossAxisCountSubtitle": { "description": "List tile subtitle for grid cross axis count. Value will either be the portrait or landscape key.", "placeholders": { "value": { "type": "String", "example": "landscape" } } }, "showTextOnGridView": "Show text in grid view", "@showTextOnGridView": {}, "showTextOnGridViewSubtitle": "Whether or not to show the text (title, artist etc) on the grid music screen.", "@showTextOnGridViewSubtitle": {}, "showCoverAsPlayerBackground": "Show blurred cover as player background", "@showCoverAsPlayerBackground": {}, "showCoverAsPlayerBackgroundSubtitle": "Whether or not to use blurred cover art as background on player screen.", "@showCoverAsPlayerBackgroundSubtitle": {}, "hideSongArtistsIfSameAsAlbumArtists": "Hide song artists if same as album artists", "@hideSongArtistsIfSameAsAlbumArtists": {}, "hideSongArtistsIfSameAsAlbumArtistsSubtitle": "Whether to show song artists on the album screen if not differing from album artists.", "@hideSongArtistsIfSameAsAlbumArtistsSubtitle": {}, "disableGesture": "Disable gestures", "@disableGesture": {}, "disableGestureSubtitle": "Whether to disables gestures.", "@disableGestureSubtitle": {}, "showFastScroller": "Show fast scroller", "@showFastScroller": {}, "theme": "Theme", "@theme": {}, "system": "System", "@system": {}, "light": "Light", "@light": {}, "dark": "Dark", "@dark": {}, "tabs": "Tabs", "@tabs": {}, "cancelSleepTimer": "Cancel Sleep Timer?", "@cancelSleepTimer": {}, "yesButtonLabel": "YES", "@yesButtonLabel": {}, "noButtonLabel": "NO", "@noButtonLabel": {}, "setSleepTimer": "Set Sleep Timer", "@setSleepTimer": {}, "minutes": "Minutes", "@minutes": {}, "invalidNumber": "Invalid Number", "@invalidNumber": {}, "sleepTimerTooltip": "Sleep timer", "@sleepTimerTooltip": {}, "addToPlaylistTooltip": "Add to playlist", "@addToPlaylistTooltip": {}, "addToPlaylistTitle": "Add to Playlist", "@addToPlaylistTitle": {}, "removeFromPlaylistTooltip": "Remove from playlist", "@removeFromPlaylistTooltip": {}, "removeFromPlaylistTitle": "Remove from Playlist", "@removeFromPlaylistTitle": {}, "newPlaylist": "New Playlist", "@newPlaylist": {}, "createButtonLabel": "CREATE", "@createButtonLabel": {}, "playlistCreated": "Playlist created.", "@playlistCreated": {}, "noAlbum": "No Album", "@noAlbum": {}, "noItem": "No Item", "@noItem": {}, "noArtist": "No Artist", "@noArtist": {}, "unknownArtist": "Unknown Artist", "@unknownArtist": {}, "streaming": "STREAMING", "@streaming": {}, "downloaded": "DOWNLOADED", "@downloaded": {}, "transcode": "TRANSCODE", "@transcode": {}, "direct": "DIRECT", "@direct": {}, "statusError": "STATUS ERROR", "@statusError": {}, "queue": "Queue", "@queue": {}, "addToQueue": "Add to Queue", "@addToQueue": { "description": "Popup menu item title for adding an item to the end of the play queue." }, "playNext": "Play Next", "@playNext": { "description": "Popup menu item title for inserting an item into the play queue after the currently-playing item." }, "replaceQueue": "Replace Queue", "@replaceQueue": {}, "instantMix": "Instant Mix", "@instantMix": {}, "goToAlbum": "Go to Album", "@goToAlbum": {}, "removeFavourite": "Remove Favourite", "@removeFavourite": {}, "addFavourite": "Add Favourite", "@addFavourite": {}, "addedToQueue": "Added to queue.", "@addedToQueue": { "description": "Snackbar message that shows when the user successfully adds items to the end of the play queue." }, "insertedIntoQueue": "Inserted into queue.", "@insertedIntoQueue": { "description": "Snackbar message that shows when the user successfully inserts items into the play queue at a location that is not necessarily the end." }, "queueReplaced": "Queue replaced.", "@queueReplaced": {}, "removedFromPlaylist": "Removed from playlist.", "@removedFromPlaylist": {}, "startingInstantMix": "Starting instant mix.", "@startingInstantMix": {}, "anErrorHasOccured": "An error has occured.", "@anErrorHasOccured": {}, "responseError": "{error} Status code {statusCode}.", "@responseError": { "placeholders": { "error": { "type": "String", "example": "Forbidden" }, "statusCode": { "type": "int", "example": "403" } } }, "responseError401": "{error} Status code {statusCode}. This probably means you used the wrong username/password, or your client is no longer logged in.", "@responseError401": { "placeholders": { "error": { "type": "String", "example": "Unauthorized" }, "statusCode": { "type": "int", "example": "401" } } }, "removeFromMix": "Remove From Mix", "@removeFromMix": {}, "addToMix": "Add To Mix", "@addToMix": {}, "redownloadedItems": "{count,plural, =0{No redownloads needed.} =1{Redownloaded {count} item} other{Redownloaded {count} items}}", "@redownloadedItems": { "placeholders": { "count": { "type": "int" } } }, "bufferDuration": "Buffer Duration", "@bufferDuration": {}, "bufferDurationSubtitle": "How much the player should buffer, in seconds. Requires a restart.", "@bufferDurationSubtitle": {}, "language": "Language", "confirm": "Confirm", "showUncensoredLogMessage": "This log contains your login information. Show?", "resetTabs": "Reset tabs", "noMusicLibrariesTitle": "No Music Libraries", "@noMusicLibrariesTitle": { "description": "Title for message that shows on the views screen when no music libraries could be found." }, "noMusicLibrariesBody": "Finamp could not find any music libraries. Please ensure that your Jellyfin server contains at least one library with the content type set to \"Music\".", "refresh": "REFRESH", "swipeInsertQueueNext": "Play Swiped Song Next", "@swipeInsertQueueNext": {}, "swipeInsertQueueNextSubtitle": "Enable to insert a song as next item in queue when swiped in song list instead of appending it to the end.", "@swipeInsertQueueNextSubtitle": {}, "redesignBeta": "Try the Beta", "@redesignBeta": {}, "playbackOrderShuffledTooltip": "Shuffling. Tap to toggle.", "@playbackOrderShuffledTooltip": {}, "playbackOrderLinearTooltip": "Playing in order. Tap to toggle.", "@playbackOrderLinearTooltip": {}, "loopModeAllTooltip": "Looping all. Tap to toggle.", "@loopModeAllTooltip": {}, "loopModeOneTooltip": "Looping one. Tap to toggle.", "@loopModeOneTooltip": {}, "loopModeNoneTooltip": "Not looping. Tap to toggle.", "@loopModeNoneTooltip": {}, "skipToPrevious": "Skip to Previous Song", "@skipToPrevious": {}, "skipToNext": "Skip to Next Song", "@skipToNext": {}, "togglePlayback": "Toggle Playback", "@togglePlayback": {}, "playArtist": "Play all albums by {artist}", "@playArtist": { "placeholders": { "artist": { "type": "String", "example": "The Beatles" } } }, "shuffleArtist": "Shuffle all albums by {artist}", "@shuffleArtist": { "placeholders": { "artist": { "type": "String", "example": "The Beatles" } } }, "downloadArtist": "Download all albums by {artist}", "@downloadArtist": { "placeholders": { "artist": { "type": "String", "example": "The Beatles" } } }, "deleteFromDevice": "Delete from Device", "@deleteFromDevice": {}, "download": "Download", "@download": {}, "sync": "Synchronize with Server", "@sync": {}, "about": "About Finamp", "@about": {} }