mirror of
https://github.com/zarzet/SpotiFLAC-Mobile.git
synced 2026-09-30 21:29:36 +02:00
Remove the presence setting, platform bridge, SDK archive, and SDK preparation from local and CI builds. Reject leftover Discord native libraries in release APK audits.
6826 lines
252 KiB
Plaintext
6826 lines
252 KiB
Plaintext
{
|
||
"upgradeIntroWelcome": "Welcome to\nSpotiFLAC-Mobile 5.0",
|
||
"upgradeIntroThemeTitle": "Make it\nyour own.",
|
||
"upgradeIntroThemeBody": "Choose a look. Your choice applies immediately, and you can change it later in Appearance.",
|
||
"upgradeIntroThemeMaterialBody": "The familiar layout, with Material controls and your accent color.",
|
||
"upgradeIntroThemeMornyeBody": "Glass navigation, a redesigned Library and an immersive player.",
|
||
"upgradeIntroRustTitle": "A new engine.\nBuilt with Rust.",
|
||
"upgradeIntroRustBody": "In 5.0, the app’s backend has moved from Go to Rust. It is the engine working behind the screens you use every day.",
|
||
"upgradeIntroRustEngineTitle": "Working behind the scenes",
|
||
"upgradeIntroRustEngineBody": "Rust handles downloads, audio metadata, library scanning and the extension runtime on Android and iOS.",
|
||
"upgradeIntroRustMemoryTitle": "More careful with memory",
|
||
"upgradeIntroRustMemoryBody": "Reused buffers and fewer copies reduce temporary allocations when processing artwork and extension data.",
|
||
"upgradeIntroRustKeepTitle": "Keep your music",
|
||
"upgradeIntroRustKeepBody": "No need to download your collection again. Your saved music and settings stay in place, with no new setup required.",
|
||
"upgradeIntroWelcomeBody": "A quick look at what has changed, and where to find it.",
|
||
"upgradeIntroMornyeBody": "A new look for your player, lyrics and navigation.",
|
||
"upgradeIntroLibrarySummary": "Browse your music by playlist, artist or album.",
|
||
"upgradeIntroRepoSummary": "Choose your music sources and providers through extensions.",
|
||
"upgradeIntroLibraryTitle": "Get to know\nyour Library.",
|
||
"upgradeIntroLibraryBody": "In Mornye, browse by category or find your albums in Recently Added.",
|
||
"upgradeIntroDownloadsBody": "Pause and retry from Downloads at the top right. Finished music moves to Recently Added.",
|
||
"upgradeIntroSearchBody": "Search saved music here. The separate Search tab looks through your extensions.",
|
||
"upgradeIntroPlayerTitle": "Set up\nyour player.",
|
||
"upgradeIntroPlayerBody": "You can change your theme and playback options at any time. Here is where to find them.",
|
||
"upgradeIntroAppearanceBody": "Change themes in Settings → Appearance. In Mornye, scroll down for compact navigation; scroll up to expand it.",
|
||
"upgradeIntroAutoMixBody": "Match tempo and beats between tracks. Enable it in Settings → Local Library → Playback. Off by default.",
|
||
"upgradeIntroSettingsBody": "In Mornye, tap your profile on Home to open Settings and edit your name and photo.",
|
||
"upgradeIntroSkip": "Skip",
|
||
"upgradeIntroContinue": "Continue",
|
||
"upgradeIntroDone": "Start listening",
|
||
"upgradeIntroReplay": "What’s new in 5.0",
|
||
"cacheMotionArtwork": "Offline motion covers",
|
||
"cacheMotionArtworkDesc": "Album videos saved with downloads. Removing them keeps your music files and static covers.",
|
||
"nowPlayingVolume": "Volume",
|
||
"@nowPlayingVolume": {
|
||
"description": "System volume control label in the Mornye player"
|
||
},
|
||
"appearanceStyle": "App Style",
|
||
"@appearanceStyle": {
|
||
"description": "Appearance section for choosing the app visual style"
|
||
},
|
||
"@@locale": "es_ES",
|
||
"@@last_modified": "2026-04-28",
|
||
"appName": "SpotiFLAC Mobile",
|
||
"@appName": {
|
||
"description": "App name - DO NOT TRANSLATE"
|
||
},
|
||
"navHome": "Inicio",
|
||
"@navHome": {
|
||
"description": "Bottom navigation - Home tab"
|
||
},
|
||
"navLibrary": "Biblioteca",
|
||
"@navLibrary": {
|
||
"description": "Bottom navigation - Library tab"
|
||
},
|
||
"navSettings": "Ajustes",
|
||
"@navSettings": {
|
||
"description": "Bottom navigation - Settings tab"
|
||
},
|
||
"navStore": "Repositorio",
|
||
"@navStore": {
|
||
"description": "Bottom navigation - Extension repo tab"
|
||
},
|
||
"homeTitle": "Inicio",
|
||
"@homeTitle": {
|
||
"description": "Home screen title"
|
||
},
|
||
"homeSubtitle": "Pega una URL compatible o busca por nombre",
|
||
"@homeSubtitle": {
|
||
"description": "Subtitle shown below search box"
|
||
},
|
||
"homeEmptyTitle": "Aún no hay proveedores de búsqueda",
|
||
"@homeEmptyTitle": {
|
||
"description": "Title shown on home when no providers are available yet"
|
||
},
|
||
"homeEmptySubtitle": "Instalar una extensión para continuar.",
|
||
"@homeEmptySubtitle": {
|
||
"description": "Subtitle shown on home when no providers are available yet"
|
||
},
|
||
"homeSupports": "Compatible con: URL de pistas, álbumes, listas de reproducción y artistas",
|
||
"@homeSupports": {
|
||
"description": "Info text about supported URL types"
|
||
},
|
||
"homeRecent": "Recientes",
|
||
"@homeRecent": {
|
||
"description": "Section header for recent searches"
|
||
},
|
||
"historyFilterAll": "Todo",
|
||
"@historyFilterAll": {
|
||
"description": "Filter chip - show all items"
|
||
},
|
||
"historyFilterAlbums": "Álbumes",
|
||
"@historyFilterAlbums": {
|
||
"description": "Filter chip - show albums only"
|
||
},
|
||
"historyFilterSingles": "Pistas",
|
||
"@historyFilterSingles": {
|
||
"description": "Filter chip - show singles only"
|
||
},
|
||
"libraryRecentlyAdded": "Recently Added",
|
||
"libraryDownloads": "Downloads",
|
||
"libraryNoActiveDownloads": "No active downloads",
|
||
"librarySearchHint": "Search your library",
|
||
"libraryEmptyCollection": "Your music will appear here",
|
||
"historySearchHint": "Buscar en historial...",
|
||
"@historySearchHint": {
|
||
"description": "Search bar placeholder in history"
|
||
},
|
||
"settingsTitle": "Ajustes",
|
||
"@settingsTitle": {
|
||
"description": "Settings screen title"
|
||
},
|
||
"settingsDownload": "Descargar",
|
||
"@settingsDownload": {
|
||
"description": "Settings section - download options"
|
||
},
|
||
"settingsAppearance": "Apariencia",
|
||
"@settingsAppearance": {
|
||
"description": "Settings section - visual customization"
|
||
},
|
||
"settingsExtensions": "Extensiones",
|
||
"@settingsExtensions": {
|
||
"description": "Settings section - extension management"
|
||
},
|
||
"settingsAbout": "Acerca de",
|
||
"@settingsAbout": {
|
||
"description": "Settings section - app info"
|
||
},
|
||
"downloadTitle": "Descargar",
|
||
"@downloadTitle": {
|
||
"description": "Download settings page title"
|
||
},
|
||
"downloadAskQualitySubtitle": "Mostrar selector de calidad para cada descarga",
|
||
"@downloadAskQualitySubtitle": {
|
||
"description": "Subtitle for ask quality toggle"
|
||
},
|
||
"downloadFilenameFormat": "Formato del nombre del archivo",
|
||
"@downloadFilenameFormat": {
|
||
"description": "Setting for output filename pattern"
|
||
},
|
||
"downloadSingleFilenameFormat": "Formato del nombre de archivo para pistas individuales",
|
||
"@downloadSingleFilenameFormat": {
|
||
"description": "Setting for output filename pattern for singles/EPs"
|
||
},
|
||
"downloadSingleFilenameFormatDescription": "Patrón de nombre de archivo para sencillos y EP. Utiliza las mismas etiquetas que el formato para álbumes.",
|
||
"@downloadSingleFilenameFormatDescription": {
|
||
"description": "Subtitle description for single filename format setting"
|
||
},
|
||
"downloadFolderOrganization": "Organización de carpetas",
|
||
"@downloadFolderOrganization": {
|
||
"description": "Title of the folder organization picker bottom sheet"
|
||
},
|
||
"appearanceTitle": "Apariencia",
|
||
"@appearanceTitle": {
|
||
"description": "Appearance settings page title"
|
||
},
|
||
"appearanceThemeSystem": "Sistema",
|
||
"@appearanceThemeSystem": {
|
||
"description": "Follow system theme"
|
||
},
|
||
"appearanceThemeLight": "Claro",
|
||
"@appearanceThemeLight": {
|
||
"description": "Light theme"
|
||
},
|
||
"appearanceThemeDark": "Oscuro",
|
||
"@appearanceThemeDark": {
|
||
"description": "Dark theme"
|
||
},
|
||
"appearanceDynamicColor": "Color Dinámico",
|
||
"@appearanceDynamicColor": {
|
||
"description": "Material You dynamic colors"
|
||
},
|
||
"appearanceDynamicColorSubtitle": "Usar colores de tu fondo de pantalla",
|
||
"@appearanceDynamicColorSubtitle": {
|
||
"description": "Subtitle for dynamic color"
|
||
},
|
||
"appearanceHistoryView": "Vista del Historial",
|
||
"@appearanceHistoryView": {
|
||
"description": "Layout style for history"
|
||
},
|
||
"appearanceHistoryViewList": "Lista",
|
||
"@appearanceHistoryViewList": {
|
||
"description": "List layout option"
|
||
},
|
||
"appearanceHistoryViewGrid": "Cuadrícula",
|
||
"@appearanceHistoryViewGrid": {
|
||
"description": "Grid layout option"
|
||
},
|
||
"optionsPrimaryProvider": "Proveedor Principal",
|
||
"@optionsPrimaryProvider": {
|
||
"description": "Main search provider setting"
|
||
},
|
||
"optionsPrimaryProviderSubtitle": "Servicio utilizado para buscar por nombre de pista o álbum",
|
||
"@optionsPrimaryProviderSubtitle": {
|
||
"description": "Subtitle for primary provider"
|
||
},
|
||
"optionsUsingExtension": "Usando la extensión: {extensionName}",
|
||
"@optionsUsingExtension": {
|
||
"description": "Shows active extension name",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"optionsDefaultSearchTab": "Pestaña de búsqueda predeterminada",
|
||
"@optionsDefaultSearchTab": {
|
||
"description": "Title for the preferred default search tab setting"
|
||
},
|
||
"optionsDefaultSearchTabSubtitle": "Elige qué pestaña se abre primero al mostrar nuevos resultados de búsqueda.",
|
||
"@optionsDefaultSearchTabSubtitle": {
|
||
"description": "Subtitle for the preferred default search tab setting"
|
||
},
|
||
"optionsAutoFallback": "Cambio automático",
|
||
"@optionsAutoFallback": {
|
||
"description": "Auto-retry with other services"
|
||
},
|
||
"optionsAutoFallbackSubtitle": "Probar otros servicios si la descarga falla",
|
||
"@optionsAutoFallbackSubtitle": {
|
||
"description": "Subtitle for auto fallback"
|
||
},
|
||
"optionsEmbedLyrics": "Incrustar letras",
|
||
"@optionsEmbedLyrics": {
|
||
"description": "Embed lyrics in audio files"
|
||
},
|
||
"optionsEmbedLyricsSubtitle": "Guarda las letras sincronizadas junto a las pistas descargadas",
|
||
"@optionsEmbedLyricsSubtitle": {
|
||
"description": "Subtitle for embed lyrics"
|
||
},
|
||
"optionsReplayGain": "ReplayGain",
|
||
"@optionsReplayGain": {
|
||
"description": "Title for ReplayGain setting toggle"
|
||
},
|
||
"optionsReplayGainSubtitleOn": "Analizar la sonoridad e incrustar etiquetas ReplayGain (EBU R128)",
|
||
"@optionsReplayGainSubtitleOn": {
|
||
"description": "Subtitle when ReplayGain is enabled"
|
||
},
|
||
"optionsReplayGainSubtitleOff": "Desactivado: no hay etiquetas de normalización de sonoridad",
|
||
"@optionsReplayGainSubtitleOff": {
|
||
"description": "Subtitle when ReplayGain is disabled"
|
||
},
|
||
"trackReplayGain": "Reescanear ReplayGain",
|
||
"@trackReplayGain": {
|
||
"description": "Three-dot menu option to scan loudness and write ReplayGain tags"
|
||
},
|
||
"trackReplayGainScanning": "Analizando el nivel de volumen...",
|
||
"@trackReplayGainScanning": {
|
||
"description": "Snackbar/progress message while scanning ReplayGain for a single track"
|
||
},
|
||
"trackReplayGainSuccess": "Etiquetas ReplayGain agregadas",
|
||
"@trackReplayGainSuccess": {
|
||
"description": "Snackbar message after ReplayGain tags written for a single track"
|
||
},
|
||
"trackReplayGainFailed": "No se pudieron agregar las etiquetas ReplayGain",
|
||
"@trackReplayGainFailed": {
|
||
"description": "Snackbar message when ReplayGain scan/write fails"
|
||
},
|
||
"selectionReplayGainCount": "ReplayGain ({count})",
|
||
"@selectionReplayGainCount": {
|
||
"description": "Batch selection action button label for ReplayGain",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"replayGainBatchConfirmTitle": "Agregar ReplayGain",
|
||
"@replayGainBatchConfirmTitle": {
|
||
"description": "Title of the batch ReplayGain confirmation dialog"
|
||
},
|
||
"replayGainBatchConfirmMessage": "¿Analizar el volumen y escribir las etiquetas ReplayGain en {count} pista(s)?",
|
||
"@replayGainBatchConfirmMessage": {
|
||
"description": "Message of the batch ReplayGain confirmation dialog",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"replayGainBatchAnalyzing": "Analizando ReplayGain...",
|
||
"@replayGainBatchAnalyzing": {
|
||
"description": "Progress dialog title while batch scanning ReplayGain"
|
||
},
|
||
"replayGainBatchSuccess": "Se agregaron las etiquetas ReplayGain a {success} de {total} pistas",
|
||
"replayGainUnsupportedDecoder": "Algunas pistas no se pudieron analizar porque el decodificador de ReplayGain no es compatible con su códec de audio. Los archivos no se modificaron.",
|
||
"@replayGainBatchSuccess": {
|
||
"description": "Snackbar after batch ReplayGain completes",
|
||
"placeholders": {
|
||
"success": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"optionsArtistTagMode": "Modo de etiqueta de artista",
|
||
"@optionsArtistTagMode": {
|
||
"description": "Setting title for how artist metadata is written into files"
|
||
},
|
||
"optionsArtistTagModeDescription": "Elige cómo se escriben varios artistas en las etiquetas incrustadas.",
|
||
"@optionsArtistTagModeDescription": {
|
||
"description": "Bottom-sheet description for artist tag mode setting"
|
||
},
|
||
"optionsArtistTagModeJoined": "Valor único combinado",
|
||
"@optionsArtistTagModeJoined": {
|
||
"description": "Artist tag mode option that joins multiple artists into one value"
|
||
},
|
||
"optionsArtistTagModeJoinedSubtitle": "Escribir un solo valor de ARTISTA como «Artista A, Artista B» para máxima compatibilidad con reproductores.",
|
||
"@optionsArtistTagModeJoinedSubtitle": {
|
||
"description": "Subtitle for joined artist tag mode"
|
||
},
|
||
"optionsArtistTagModeSplitVorbis": "Separar etiquetas para FLAC/Opus",
|
||
"@optionsArtistTagModeSplitVorbis": {
|
||
"description": "Artist tag mode option that writes repeated ARTIST tags for Vorbis formats"
|
||
},
|
||
"optionsArtistTagModeSplitVorbisSubtitle": "Escribe una etiqueta de artista por cada artista en FLAC y Opus; MP3 y M4A se mantienen combinados.",
|
||
"@optionsArtistTagModeSplitVorbisSubtitle": {
|
||
"description": "Subtitle for split Vorbis artist tag mode"
|
||
},
|
||
"optionsExtensionStore": "Repositorio de extensiones",
|
||
"@optionsExtensionStore": {
|
||
"description": "Show/hide repo tab"
|
||
},
|
||
"optionsExtensionStoreSubtitle": "Mostrar la pestaña del repositorio en la navegación",
|
||
"@optionsExtensionStoreSubtitle": {
|
||
"description": "Subtitle for extension repo toggle"
|
||
},
|
||
"optionsCheckUpdates": "Buscar actualizaciones",
|
||
"@optionsCheckUpdates": {
|
||
"description": "Auto update check toggle"
|
||
},
|
||
"optionsCheckUpdatesSubtitle": "Notificar cuando una nueva versión esté disponible",
|
||
"@optionsCheckUpdatesSubtitle": {
|
||
"description": "Subtitle for update check"
|
||
},
|
||
"optionsUpdateChannel": "Tipo de actualizaciones",
|
||
"@optionsUpdateChannel": {
|
||
"description": "Stable vs preview releases"
|
||
},
|
||
"optionsUpdateChannelStable": "Solo versiones estables",
|
||
"@optionsUpdateChannelStable": {
|
||
"description": "Only stable updates"
|
||
},
|
||
"optionsUpdateChannelPreview": "Obtener versiones preliminares",
|
||
"@optionsUpdateChannelPreview": {
|
||
"description": "Include beta/preview updates"
|
||
},
|
||
"optionsUpdateChannelWarning": "La versión preliminar puede contener errores o funciones incompletas",
|
||
"@optionsUpdateChannelWarning": {
|
||
"description": "Warning about preview channel"
|
||
},
|
||
"optionsClearHistory": "Borrar historial de descargas",
|
||
"@optionsClearHistory": {
|
||
"description": "Delete all download history"
|
||
},
|
||
"optionsClearHistorySubtitle": "Eliminar todas las pistas descargadas del historial",
|
||
"@optionsClearHistorySubtitle": {
|
||
"description": "Subtitle for clear history"
|
||
},
|
||
"optionsDetailedLogging": "Registro detallado",
|
||
"@optionsDetailedLogging": {
|
||
"description": "Enable verbose logs for debugging"
|
||
},
|
||
"optionsDetailedLoggingOn": "Se están registrando logs detallados",
|
||
"@optionsDetailedLoggingOn": {
|
||
"description": "Status when logging enabled"
|
||
},
|
||
"optionsDetailedLoggingOff": "Activar para informes de errores",
|
||
"@optionsDetailedLoggingOff": {
|
||
"description": "Status when logging disabled"
|
||
},
|
||
"extensionsTitle": "Extensiones",
|
||
"@extensionsTitle": {
|
||
"description": "Extensions page title"
|
||
},
|
||
"extensionsDisabled": "Desactivado",
|
||
"@extensionsDisabled": {
|
||
"description": "Extension status - inactive"
|
||
},
|
||
"extensionsVersion": "Versión {version}",
|
||
"@extensionsVersion": {
|
||
"description": "Extension version display",
|
||
"placeholders": {
|
||
"version": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"extensionsUninstall": "Desinstalar",
|
||
"@extensionsUninstall": {
|
||
"description": "Uninstall extension button"
|
||
},
|
||
"storeTitle": "Repositorio de extensiones",
|
||
"@storeTitle": {
|
||
"description": "Repo screen title"
|
||
},
|
||
"storeSearch": "Buscar extensiones...",
|
||
"@storeSearch": {
|
||
"description": "Repo search placeholder"
|
||
},
|
||
"storeInstall": "Instalar",
|
||
"@storeInstall": {
|
||
"description": "Install extension button"
|
||
},
|
||
"storeInstalled": "Instalada",
|
||
"@storeInstalled": {
|
||
"description": "Already installed badge"
|
||
},
|
||
"storeUpdate": "Actualizar",
|
||
"@storeUpdate": {
|
||
"description": "Update available button"
|
||
},
|
||
"aboutTitle": "Acerca de",
|
||
"@aboutTitle": {
|
||
"description": "About page title"
|
||
},
|
||
"aboutContributors": "Colaboradores",
|
||
"@aboutContributors": {
|
||
"description": "Section for contributors"
|
||
},
|
||
"aboutMobileDeveloper": "Desarrollador de versiones móviles",
|
||
"@aboutMobileDeveloper": {
|
||
"description": "Role description for mobile dev"
|
||
},
|
||
"aboutOriginalCreator": "Creador original de SpotiFLAC",
|
||
"@aboutOriginalCreator": {
|
||
"description": "Role description for original creator"
|
||
},
|
||
"aboutLogoArtist": "¡El talentoso artista que creó el hermoso logo de nuestra app!",
|
||
"@aboutLogoArtist": {
|
||
"description": "Role description for logo artist"
|
||
},
|
||
"aboutTranslators": "Traductores",
|
||
"@aboutTranslators": {
|
||
"description": "Section for translators"
|
||
},
|
||
"aboutSpecialThanks": "Agradecimientos especiales",
|
||
"@aboutSpecialThanks": {
|
||
"description": "Section for special thanks"
|
||
},
|
||
"aboutLinks": "Enlaces",
|
||
"@aboutLinks": {
|
||
"description": "Section for external links"
|
||
},
|
||
"aboutMobileSource": "Código fuente de la versión móvil",
|
||
"@aboutMobileSource": {
|
||
"description": "Link to mobile GitHub repo"
|
||
},
|
||
"aboutPCSource": "Código fuente de la versión para PC",
|
||
"@aboutPCSource": {
|
||
"description": "Link to PC GitHub repo"
|
||
},
|
||
"aboutKeepAndroidOpen": "Mantener Android activo",
|
||
"@aboutKeepAndroidOpen": {
|
||
"description": "Link to Keep Android Open campaign website"
|
||
},
|
||
"aboutReportIssue": "Reportar un problema",
|
||
"@aboutReportIssue": {
|
||
"description": "Link to report bugs"
|
||
},
|
||
"aboutReportIssueSubtitle": "Reporta cualquier problema que encuentres",
|
||
"@aboutReportIssueSubtitle": {
|
||
"description": "Subtitle for report issue"
|
||
},
|
||
"aboutFeatureRequest": "Sugerir una función",
|
||
"@aboutFeatureRequest": {
|
||
"description": "Link to suggest features"
|
||
},
|
||
"aboutFeatureRequestSubtitle": "Sugerir nuevas funciones para la aplicación",
|
||
"@aboutFeatureRequestSubtitle": {
|
||
"description": "Subtitle for feature request"
|
||
},
|
||
"aboutTelegramChannel": "Canal de Telegram",
|
||
"@aboutTelegramChannel": {
|
||
"description": "Link to Telegram channel"
|
||
},
|
||
"aboutTelegramChannelSubtitle": "Anuncios y actualizaciones",
|
||
"@aboutTelegramChannelSubtitle": {
|
||
"description": "Subtitle for Telegram channel"
|
||
},
|
||
"aboutTelegramChat": "Comunidad de Telegram",
|
||
"@aboutTelegramChat": {
|
||
"description": "Link to Telegram chat group"
|
||
},
|
||
"aboutTelegramChatSubtitle": "Chatear con otros usuarios",
|
||
"@aboutTelegramChatSubtitle": {
|
||
"description": "Subtitle for Telegram chat"
|
||
},
|
||
"aboutSocial": "Redes sociales",
|
||
"@aboutSocial": {
|
||
"description": "Section for social links"
|
||
},
|
||
"aboutApp": "Aplicación",
|
||
"@aboutApp": {
|
||
"description": "Section for app info"
|
||
},
|
||
"aboutVersion": "Versión",
|
||
"@aboutVersion": {
|
||
"description": "Version info label"
|
||
},
|
||
"aboutBinimumDesc": "El creador de QQDL & HiFi API. Este proyecto ayudó a impulsar el soporte para descargas sin pérdida de calidad.",
|
||
"@aboutBinimumDesc": {
|
||
"description": "Credit description for binimum"
|
||
},
|
||
"aboutSachinsenalDesc": "El creador del proyecto HiFi original. Sentó las bases para la integración de fuentes de audio sin pérdida de calidad.",
|
||
"@aboutSachinsenalDesc": {
|
||
"description": "Credit description for sachinsenal0x64"
|
||
},
|
||
"aboutUnituneDesc": "Resolvedor de links de música por Flaze, usado para coincidencias multiplataforma de respaldo.",
|
||
"@aboutUnituneDesc": {
|
||
"description": "Credit for the UniTune resolver"
|
||
},
|
||
"aboutMusicBrainzDesc": "Base de datos abierta mantenida por MetaBrainz y su comunidad, usado para grabar multi-referencias.",
|
||
"@aboutMusicBrainzDesc": {
|
||
"description": "Credit for the MusicBrainz database"
|
||
},
|
||
"aboutSquiglyDesc": "Servicio de enlaces de música universal por Liam Macmillan, usado como resolvedor multiplataforma final de respaldo.",
|
||
"@aboutSquiglyDesc": {
|
||
"description": "Credit for the Squigly resolver"
|
||
},
|
||
"aboutAppDescription": "Busca información musical, gestiona extensiones y organiza tu biblioteca.",
|
||
"@aboutAppDescription": {
|
||
"description": "App description in header card"
|
||
},
|
||
"artistAlbums": "Álbumes",
|
||
"@artistAlbums": {
|
||
"description": "Section header for artist albums"
|
||
},
|
||
"artistSingles": "Pistas y mini-álbumes",
|
||
"@artistSingles": {
|
||
"description": "Section header for singles/EPs"
|
||
},
|
||
"artistCompilations": "Compilaciones",
|
||
"@artistCompilations": {
|
||
"description": "Section header for compilations"
|
||
},
|
||
"artistPopular": "Populares",
|
||
"@artistPopular": {
|
||
"description": "Section header for popular/top tracks"
|
||
},
|
||
"artistMonthlyListeners": "{count} oyentes mensuales",
|
||
"@artistMonthlyListeners": {
|
||
"description": "Monthly listener count display",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "String",
|
||
"description": "Formatted listener count"
|
||
}
|
||
}
|
||
},
|
||
"trackMetadataService": "Servicio",
|
||
"@trackMetadataService": {
|
||
"description": "Metadata field - download service used"
|
||
},
|
||
"trackMetadataPlay": "Reproducir",
|
||
"@trackMetadataPlay": {
|
||
"description": "Action button - play track"
|
||
},
|
||
"trackMetadataShare": "Compartir",
|
||
"@trackMetadataShare": {
|
||
"description": "Action button - share track"
|
||
},
|
||
"trackMetadataDelete": "Eliminar",
|
||
"@trackMetadataDelete": {
|
||
"description": "Action button - delete track"
|
||
},
|
||
"setupGrantPermission": "Conceder permiso",
|
||
"@setupGrantPermission": {
|
||
"description": "Button to request permission"
|
||
},
|
||
"setupSkip": "Omitir por ahora",
|
||
"@setupSkip": {
|
||
"description": "Skip current step button"
|
||
},
|
||
"setupStorageAccessRequired": "Acceso al almacenamiento requerido",
|
||
"@setupStorageAccessRequired": {
|
||
"description": "Title when storage access needed"
|
||
},
|
||
"setupStorageAccessMessageAndroid11": "Android 11+ requiere permiso \"Todos los archivos de acceso\" para guardar los archivos en la carpeta de descargas elegida.",
|
||
"@setupStorageAccessMessageAndroid11": {
|
||
"description": "Android 11+ specific explanation"
|
||
},
|
||
"setupOpenSettings": "Abrir ajustes",
|
||
"@setupOpenSettings": {
|
||
"description": "Button to open system settings"
|
||
},
|
||
"setupPermissionDeniedMessage": "Permiso denegado. Por favor, conceda todos los permisos para continuar.",
|
||
"@setupPermissionDeniedMessage": {
|
||
"description": "Error when permission denied"
|
||
},
|
||
"setupPermissionRequired": "Permiso de {permissionType} requerido",
|
||
"@setupPermissionRequired": {
|
||
"description": "Generic permission required title",
|
||
"placeholders": {
|
||
"permissionType": {
|
||
"type": "String",
|
||
"description": "Type of permission (Storage/Notification)"
|
||
}
|
||
}
|
||
},
|
||
"setupPermissionRequiredMessage": "Se requiere un permiso {permissionType} para la mejor experiencia. Puedes cambiar esto más tarde en ajustes.",
|
||
"@setupPermissionRequiredMessage": {
|
||
"description": "Generic permission required message",
|
||
"placeholders": {
|
||
"permissionType": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"setupUseDefaultFolder": "¿Usar carpeta por defecto?",
|
||
"@setupUseDefaultFolder": {
|
||
"description": "Dialog title for default folder"
|
||
},
|
||
"setupNoFolderSelected": "No se ha seleccionado ninguna carpeta. ¿Desea utilizar la carpeta por defecto?",
|
||
"@setupNoFolderSelected": {
|
||
"description": "Prompt when no folder selected"
|
||
},
|
||
"setupUseDefault": "Usar por defecto",
|
||
"@setupUseDefault": {
|
||
"description": "Button to use default folder"
|
||
},
|
||
"setupDownloadLocationTitle": "Ubicación de descarga",
|
||
"@setupDownloadLocationTitle": {
|
||
"description": "Download location dialog title"
|
||
},
|
||
"setupDownloadLocationIosMessage": "En iOS, las descargas se guardan en la carpeta de documentos de la aplicación. Puede acceder a ellas desde la aplicación Archivos.",
|
||
"@setupDownloadLocationIosMessage": {
|
||
"description": "iOS-specific folder info"
|
||
},
|
||
"setupAppDocumentsFolder": "Carpeta de documentos de App",
|
||
"@setupAppDocumentsFolder": {
|
||
"description": "iOS documents folder option"
|
||
},
|
||
"setupAppDocumentsFolderSubtitle": "Recomendado - accesible desde la aplicación Archivos",
|
||
"@setupAppDocumentsFolderSubtitle": {
|
||
"description": "Subtitle for documents folder"
|
||
},
|
||
"setupChooseFromFiles": "Elegir de archivos",
|
||
"@setupChooseFromFiles": {
|
||
"description": "iOS file picker option"
|
||
},
|
||
"setupChooseFromFilesSubtitle": "Seleccione iCloud u otra ubicación",
|
||
"@setupChooseFromFilesSubtitle": {
|
||
"description": "Subtitle for file picker"
|
||
},
|
||
"setupIosEmptyFolderWarning": "Limitación de iOS: No se pueden seleccionar carpetas vacías. Elige una carpeta con al menos un archivo.",
|
||
"@setupIosEmptyFolderWarning": {
|
||
"description": "iOS folder selection warning"
|
||
},
|
||
"setupIcloudNotSupported": "iCloud Drive no es compatible. Utilice la carpeta Documentos de la aplicación.",
|
||
"@setupIcloudNotSupported": {
|
||
"description": "Error when user selects iCloud Drive on iOS"
|
||
},
|
||
"setupDownloadInFlac": "Descarga música sin pérdida y Hi-Res",
|
||
"@setupDownloadInFlac": {
|
||
"description": "App tagline in setup"
|
||
},
|
||
"setupStorageGranted": "¡Permiso de almacenamiento concedido!",
|
||
"@setupStorageGranted": {
|
||
"description": "Success message for storage permission"
|
||
},
|
||
"setupStorageRequired": "Permiso de almacenamiento requerido",
|
||
"@setupStorageRequired": {
|
||
"description": "Title when storage permission needed"
|
||
},
|
||
"setupStorageDescription": "SpotiFLAC necesita permiso de almacenamiento para guardar sus archivos de música descargados.",
|
||
"@setupStorageDescription": {
|
||
"description": "Explanation for storage permission"
|
||
},
|
||
"setupNotificationGranted": "¡Acceso a las notificaciones permitido!",
|
||
"@setupNotificationGranted": {
|
||
"description": "Success message for notification permission"
|
||
},
|
||
"setupNotificationEnable": "Activar notificaciones",
|
||
"@setupNotificationEnable": {
|
||
"description": "Button to enable notifications"
|
||
},
|
||
"setupFolderChoose": "Cambiar carpeta de descargas",
|
||
"@setupFolderChoose": {
|
||
"description": "Button to choose folder"
|
||
},
|
||
"setupFolderDescription": "Seleccione una carpeta donde se guardará la música descargada.",
|
||
"@setupFolderDescription": {
|
||
"description": "Explanation for folder selection"
|
||
},
|
||
"setupSelectFolder": "Seleccionar Carpeta",
|
||
"@setupSelectFolder": {
|
||
"description": "Button to select folder"
|
||
},
|
||
"setupEnableNotifications": "Activar notificaciones",
|
||
"@setupEnableNotifications": {
|
||
"description": "Button to enable notifications"
|
||
},
|
||
"setupNotificationBackgroundDescription": "Recibe notificaciones sobre el progreso de la descarga y la finalización. Esto te ayuda a rastrear las descargas cuando la aplicación está en segundo plano.",
|
||
"@setupNotificationBackgroundDescription": {
|
||
"description": "Detailed notification explanation"
|
||
},
|
||
"setupSkipForNow": "Omitir por ahora",
|
||
"@setupSkipForNow": {
|
||
"description": "Skip button text"
|
||
},
|
||
"setupNext": "Siguiente",
|
||
"@setupNext": {
|
||
"description": "Next button text"
|
||
},
|
||
"setupGetStarted": "Empezar",
|
||
"@setupGetStarted": {
|
||
"description": "Final setup button"
|
||
},
|
||
"setupAllowAccessToManageFiles": "Por favor, activa \"Permitir el acceso para gestionar todos los archivos\" en la siguiente pantalla.",
|
||
"@setupAllowAccessToManageFiles": {
|
||
"description": "Instruction for file access permission"
|
||
},
|
||
"setupLanguageTitle": "Elegir idioma",
|
||
"@setupLanguageTitle": {
|
||
"description": "Title for the language selection step in setup"
|
||
},
|
||
"setupLanguageDescription": "Selecciona tu idioma preferido para la aplicación. Puedes cambiar esto luego en Configuración.",
|
||
"@setupLanguageDescription": {
|
||
"description": "Description for the language selection step in setup"
|
||
},
|
||
"setupLanguageSystemDefault": "Idioma predeterminado",
|
||
"@setupLanguageSystemDefault": {
|
||
"description": "Option to use the system language"
|
||
},
|
||
"dialogCancel": "Cancelar",
|
||
"@dialogCancel": {
|
||
"description": "Dialog button - cancel action"
|
||
},
|
||
"dialogSave": "Guardar",
|
||
"@dialogSave": {
|
||
"description": "Dialog button - save changes"
|
||
},
|
||
"dialogDelete": "Eliminar",
|
||
"@dialogDelete": {
|
||
"description": "Dialog button - delete item"
|
||
},
|
||
"dialogRetry": "Volver a intentar",
|
||
"@dialogRetry": {
|
||
"description": "Dialog button - retry action"
|
||
},
|
||
"dialogClear": "Borrar",
|
||
"@dialogClear": {
|
||
"description": "Dialog button - clear items"
|
||
},
|
||
"dialogDone": "Hecho",
|
||
"@dialogDone": {
|
||
"description": "Dialog button - action completed"
|
||
},
|
||
"dialogImport": "Importar",
|
||
"@dialogImport": {
|
||
"description": "Dialog button - import data"
|
||
},
|
||
"dialogDownload": "Descargar",
|
||
"@dialogDownload": {
|
||
"description": "Confirm button in Download All dialog"
|
||
},
|
||
"previewPlay": "Reproducir vista previa",
|
||
"@previewPlay": {
|
||
"description": "Tooltip for the button that plays a short track preview snippet"
|
||
},
|
||
"previewStop": "Detener vista previa",
|
||
"@previewStop": {
|
||
"description": "Tooltip for the button that stops the playing track preview snippet"
|
||
},
|
||
"previewUnavailable": "Vista previa no disponible",
|
||
"@previewUnavailable": {
|
||
"description": "Snackbar shown when a track preview snippet cannot be played"
|
||
},
|
||
"dialogDiscard": "Descartar",
|
||
"@dialogDiscard": {
|
||
"description": "Dialog button - discard changes"
|
||
},
|
||
"dialogRemove": "Eliminar",
|
||
"@dialogRemove": {
|
||
"description": "Dialog button - remove item"
|
||
},
|
||
"dialogUninstall": "Desinstalar",
|
||
"@dialogUninstall": {
|
||
"description": "Dialog button - uninstall extension"
|
||
},
|
||
"dialogDiscardChanges": "¿Descartar cambios?",
|
||
"@dialogDiscardChanges": {
|
||
"description": "Dialog title - unsaved changes warning"
|
||
},
|
||
"dialogUnsavedChanges": "Tienes cambios sin guardar. ¿Quieres descartarlos?",
|
||
"@dialogUnsavedChanges": {
|
||
"description": "Dialog message - unsaved changes"
|
||
},
|
||
"dialogClearAll": "Eliminar todo",
|
||
"@dialogClearAll": {
|
||
"description": "Dialog title - clear all items"
|
||
},
|
||
"dialogRemoveExtension": "Eliminar extensión",
|
||
"@dialogRemoveExtension": {
|
||
"description": "Dialog title - uninstall extension"
|
||
},
|
||
"dialogRemoveExtensionMessage": "¿Estás seguro de que quieres eliminar esta extensión? Esto no se puede deshacer.",
|
||
"@dialogRemoveExtensionMessage": {
|
||
"description": "Dialog message - uninstall confirmation"
|
||
},
|
||
"dialogUninstallExtension": "¿Desinstalar extensión?",
|
||
"@dialogUninstallExtension": {
|
||
"description": "Dialog title - uninstall extension"
|
||
},
|
||
"dialogUninstallExtensionMessage": "¿Estás seguro de que quieres eliminar {extensionName}?",
|
||
"@dialogUninstallExtensionMessage": {
|
||
"description": "Dialog message - uninstall specific extension",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"dialogClearHistoryTitle": "Borrar historial",
|
||
"@dialogClearHistoryTitle": {
|
||
"description": "Dialog title - clear download history"
|
||
},
|
||
"dialogClearHistoryMessage": "¿Estás seguro de que quieres borrar todo el historial de descargas? Esta acción no se puede deshacer.",
|
||
"@dialogClearHistoryMessage": {
|
||
"description": "Dialog message - clear history confirmation"
|
||
},
|
||
"dialogDeleteSelectedTitle": "Borrar Seleccionados",
|
||
"@dialogDeleteSelectedTitle": {
|
||
"description": "Dialog title - delete selected items"
|
||
},
|
||
"dialogDeleteSelectedMessage": "¿Eliminar {count} {count, plural, =1{pista} other{pistas}} del historial?\n\nEsto también eliminará los archivos del almacenamiento.",
|
||
"@dialogDeleteSelectedMessage": {
|
||
"description": "Dialog message - delete selected tracks",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"dialogImportPlaylistTitle": "Importar lista de reproducción",
|
||
"@dialogImportPlaylistTitle": {
|
||
"description": "Dialog title - import CSV playlist"
|
||
},
|
||
"dialogImportPlaylistMessage": "Se han encontrado {count} pistas en CSV. ¿Desea añadirlas en la cola de descarga?",
|
||
"csvImportTracks": "{count} pistas de CSV",
|
||
"@csvImportTracks": {
|
||
"description": "Label shown in quality picker for CSV import",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"collectionExportM3u": "Exportar como M3U8",
|
||
"@collectionExportM3u": {
|
||
"description": "Tooltip on the collection screen action that exports the track list as an M3U8 playlist file"
|
||
},
|
||
"collectionExportM3uDone": "Exportado {exported} de {total} pistas",
|
||
"@collectionExportM3uDone": {
|
||
"description": "Snackbar after M3U8 export; tracks without a local file are not exported",
|
||
"placeholders": {
|
||
"exported": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"collectionExportM3uNone": "No hay archivos descargados para exportar",
|
||
"@collectionExportM3uNone": {
|
||
"description": "Snackbar when an M3U8 export finds no local files"
|
||
},
|
||
"collectionExportM3uFailed": "Exportación fallida",
|
||
"@collectionExportM3uFailed": {
|
||
"description": "Snackbar when writing or sharing the M3U8 export fails"
|
||
},
|
||
"trackOpenOn": "Abrir en...",
|
||
"@trackOpenOn": {
|
||
"description": "Track option and sheet title listing streaming platforms where the track can be opened"
|
||
},
|
||
"trackOpenOnNoLinks": "No se han encontrado enlaces para esta pista.",
|
||
"@trackOpenOnNoLinks": {
|
||
"description": "Shown in the Open on sheet when song.link returns no links"
|
||
},
|
||
"libraryReviewDuplicates": "Revisar duplicados",
|
||
"@libraryReviewDuplicates": {
|
||
"description": "Library settings row opening the duplicate review sheet"
|
||
},
|
||
"libraryReviewDuplicatesSubtitle": "Encontrar pistas almacenadas más de una vez",
|
||
"@libraryReviewDuplicatesSubtitle": {
|
||
"description": "Subtitle for the duplicate review settings row"
|
||
},
|
||
"duplicatesTitle": "Duplicados",
|
||
"@duplicatesTitle": {
|
||
"description": "Title of the duplicate review sheet"
|
||
},
|
||
"duplicatesEmpty": "No se han encontrado pistas duplicadas.",
|
||
"@duplicatesEmpty": {
|
||
"description": "Shown when the duplicate review sheet finds nothing"
|
||
},
|
||
"duplicatesKeepBest": "Mantener mejor",
|
||
"@duplicatesKeepBest": {
|
||
"description": "Button that deletes all but the highest-quality copy in a duplicate group"
|
||
},
|
||
"duplicatesKeepBestAll": "Lo mejor para todos",
|
||
"@duplicatesKeepBestAll": {
|
||
"description": "Button that keeps the highest-quality copy in every duplicate group and deletes the rest"
|
||
},
|
||
"duplicatesKeepBestAllMessage": "¿Quieres conservar la mejor copia de {groupCount} {groupCount, plural, =1{track} other{tracks}} y eliminar {count} copias de menor calidad {count, plural, =1{copy} other{copies}}?\n\nLos archivos eliminados se borrarán del almacenamiento.",
|
||
"@duplicatesKeepBestAllMessage": {
|
||
"description": "Confirmation message for keeping the best copy across every duplicate group",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"groupCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"duplicatesKeepBestMessage": "¿Eliminar {count} copias de menor calidad del \"{trackName}\"?",
|
||
"@duplicatesKeepBestMessage": {
|
||
"description": "Confirmation message for the keep-best action",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"duplicatesDeleteCopyMessage": "¿Eliminar esta copia de \"{trackName}\"?",
|
||
"@duplicatesDeleteCopyMessage": {
|
||
"description": "Confirmation message for deleting one duplicate copy",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"@dialogImportPlaylistMessage": {
|
||
"description": "Dialog message - import playlist confirmation",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"snackbarAddedToQueue": "Añadido \"{trackName}\" a la cola",
|
||
"@snackbarAddedToQueue": {
|
||
"description": "Snackbar - track added to download queue",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarAddedTracksToQueue": "Añadidas pistas {count} a la cola",
|
||
"@snackbarAddedTracksToQueue": {
|
||
"description": "Snackbar - multiple tracks added to queue",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"snackbarAlreadyDownloaded": "\"{trackName}\" ya descargado",
|
||
"@snackbarAlreadyDownloaded": {
|
||
"description": "Snackbar - track already exists",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarAlreadyInLibrary": "\"{trackName}\" ya existe en tu biblioteca",
|
||
"@snackbarAlreadyInLibrary": {
|
||
"description": "Snackbar - track already exists in local library",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarHistoryCleared": "Historial borrado",
|
||
"@snackbarHistoryCleared": {
|
||
"description": "Snackbar - history deleted"
|
||
},
|
||
"snackbarDeletedTracks": "Eliminado {count} {count, plural, =1{pista} other{pistas}}",
|
||
"@snackbarDeletedTracks": {
|
||
"description": "Snackbar - tracks deleted",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"snackbarCannotOpenFile": "No se puede abrir el archivo: {error}",
|
||
"@snackbarCannotOpenFile": {
|
||
"description": "Snackbar - file open error",
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarViewQueue": "Ver cola",
|
||
"@snackbarViewQueue": {
|
||
"description": "Snackbar action - view download queue"
|
||
},
|
||
"snackbarUrlCopied": "URL {platform} copiada al portapapeles",
|
||
"@snackbarUrlCopied": {
|
||
"description": "Snackbar - URL copied",
|
||
"placeholders": {
|
||
"platform": {
|
||
"type": "String",
|
||
"description": "Platform name (Spotify/Deezer)"
|
||
}
|
||
}
|
||
},
|
||
"snackbarFileNotFound": "Archivo no encontrado",
|
||
"@snackbarFileNotFound": {
|
||
"description": "Snackbar - file doesn't exist"
|
||
},
|
||
"snackbarSelectExtFile": "Por favor, seleccione un archivo .spotiflac-ext",
|
||
"@snackbarSelectExtFile": {
|
||
"description": "Snackbar - wrong file type selected"
|
||
},
|
||
"snackbarProviderPrioritySaved": "Prioridad de proveedor guardada",
|
||
"@snackbarProviderPrioritySaved": {
|
||
"description": "Snackbar - provider order saved"
|
||
},
|
||
"snackbarMetadataProviderSaved": "Prioridad de proveedor de información guardada",
|
||
"@snackbarMetadataProviderSaved": {
|
||
"description": "Snackbar - metadata provider order saved"
|
||
},
|
||
"snackbarExtensionInstalled": "{extensionName} instalado.",
|
||
"@snackbarExtensionInstalled": {
|
||
"description": "Snackbar - extension installed successfully",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarExtensionUpdated": "{extensionName} actualizada.",
|
||
"@snackbarExtensionUpdated": {
|
||
"description": "Snackbar - extension updated successfully",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarFailedToInstall": "Fallo al instalar la extensión",
|
||
"@snackbarFailedToInstall": {
|
||
"description": "Snackbar - extension install error"
|
||
},
|
||
"snackbarFailedToUpdate": "Error al actualizar la extensión",
|
||
"@snackbarFailedToUpdate": {
|
||
"description": "Snackbar - extension update error"
|
||
},
|
||
"errorRateLimited": "Límite excedido",
|
||
"@errorRateLimited": {
|
||
"description": "Error title - too many requests"
|
||
},
|
||
"errorRateLimitedMessage": "Demasiadas solicitudes. Por favor, espere un momento antes de buscar de nuevo.",
|
||
"@errorRateLimitedMessage": {
|
||
"description": "Error message - rate limit explanation"
|
||
},
|
||
"errorNoTracksFound": "No se encontraron pistas",
|
||
"@errorNoTracksFound": {
|
||
"description": "Error - search returned no results"
|
||
},
|
||
"searchEmptyResultSubtitle": "Prueba con otra palabra clave",
|
||
"@searchEmptyResultSubtitle": {
|
||
"description": "Subtitle shown under the empty search result state on the home screen"
|
||
},
|
||
"errorUrlNotRecognized": "Enlace no reconocido",
|
||
"@errorUrlNotRecognized": {
|
||
"description": "Error title - URL not handled by any extension or service"
|
||
},
|
||
"errorUrlNotRecognizedMessage": "Este enlace no es compatible. Asegúrate de que la URL sea correcta y de tener instalada una extensión compatible.",
|
||
"@errorUrlNotRecognizedMessage": {
|
||
"description": "Error message - URL not recognized explanation"
|
||
},
|
||
"errorUrlFetchFailed": "No se ha podido cargar el contenido de este enlace. Inténtalo de nuevo.",
|
||
"@errorUrlFetchFailed": {
|
||
"description": "Error message - generic URL fetch failure"
|
||
},
|
||
"errorMissingExtensionSource": "No se puede cargar {item}: falta una fuente de extensión",
|
||
"@errorMissingExtensionSource": {
|
||
"description": "Error - extension source not available",
|
||
"placeholders": {
|
||
"item": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"actionPause": "Pausar",
|
||
"@actionPause": {
|
||
"description": "Action button - pause download"
|
||
},
|
||
"actionResume": "Reanudar",
|
||
"@actionResume": {
|
||
"description": "Action button - resume download"
|
||
},
|
||
"actionCancel": "Cancelar",
|
||
"@actionCancel": {
|
||
"description": "Action button - cancel operation"
|
||
},
|
||
"actionSelectAll": "Seleccionar Todo",
|
||
"@actionSelectAll": {
|
||
"description": "Action button - select all items"
|
||
},
|
||
"actionDeselect": "Deseleccionar",
|
||
"@actionDeselect": {
|
||
"description": "Action button - deselect all"
|
||
},
|
||
"selectionSelected": "{count} seleccionado",
|
||
"@selectionSelected": {
|
||
"description": "Selection count indicator",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"selectionAllSelected": "Todas las pistas seleccionadas",
|
||
"@selectionAllSelected": {
|
||
"description": "Status - all items selected"
|
||
},
|
||
"selectionSelectToDelete": "Seleccionar pistas a eliminar",
|
||
"@selectionSelectToDelete": {
|
||
"description": "Placeholder when nothing selected"
|
||
},
|
||
"progressFetchingMetadata": "Obteniendo información... {current}/{total}",
|
||
"@progressFetchingMetadata": {
|
||
"description": "Progress indicator - loading track info",
|
||
"placeholders": {
|
||
"current": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"progressReadingCsv": "Leyendo CSV...",
|
||
"@progressReadingCsv": {
|
||
"description": "Progress indicator - parsing CSV file"
|
||
},
|
||
"searchSongs": "Canciones",
|
||
"@searchSongs": {
|
||
"description": "Search result category - songs"
|
||
},
|
||
"searchArtists": "Artistas",
|
||
"@searchArtists": {
|
||
"description": "Search result category - artists"
|
||
},
|
||
"searchAlbums": "Álbumes",
|
||
"@searchAlbums": {
|
||
"description": "Search result category - albums"
|
||
},
|
||
"searchPlaylists": "Listas de reproducción",
|
||
"@searchPlaylists": {
|
||
"description": "Search result category - playlists"
|
||
},
|
||
"searchSortTitle": "Ordenar resultados",
|
||
"@searchSortTitle": {
|
||
"description": "Bottom sheet title for search sort options"
|
||
},
|
||
"searchSortDefault": "Por defecto",
|
||
"@searchSortDefault": {
|
||
"description": "Sort option - default API order"
|
||
},
|
||
"searchSortTitleAZ": "Nombre (A-Z)",
|
||
"@searchSortTitleAZ": {
|
||
"description": "Sort option - title ascending"
|
||
},
|
||
"searchSortTitleZA": "Nombre (Z-A)",
|
||
"@searchSortTitleZA": {
|
||
"description": "Sort option - title descending"
|
||
},
|
||
"searchSortArtistAZ": "Artista (A-Z)",
|
||
"@searchSortArtistAZ": {
|
||
"description": "Sort option - artist ascending"
|
||
},
|
||
"searchSortArtistZA": "Artista (Z-A)",
|
||
"@searchSortArtistZA": {
|
||
"description": "Sort option - artist descending"
|
||
},
|
||
"searchSortDurationShort": "Duración (más corto)",
|
||
"@searchSortDurationShort": {
|
||
"description": "Sort option - shortest duration first"
|
||
},
|
||
"searchSortDurationLong": "Duración (más largo)",
|
||
"@searchSortDurationLong": {
|
||
"description": "Sort option - longest duration first"
|
||
},
|
||
"searchSortDateOldest": "Fecha de lanzamiento (antiguo)",
|
||
"@searchSortDateOldest": {
|
||
"description": "Sort option - oldest release first"
|
||
},
|
||
"searchSortDateNewest": "Fecha de lanzamiento (reciente)",
|
||
"@searchSortDateNewest": {
|
||
"description": "Sort option - newest release first"
|
||
},
|
||
"tooltipPlay": "Reproducir",
|
||
"@tooltipPlay": {
|
||
"description": "Tooltip - play button"
|
||
},
|
||
"filenameFormat": "Formato del nombre del archivo",
|
||
"@filenameFormat": {
|
||
"description": "Setting title - filename pattern"
|
||
},
|
||
"filenameShowAdvancedTags": "Mostrar etiquetas avanzadas",
|
||
"@filenameShowAdvancedTags": {
|
||
"description": "Toggle label for showing advanced filename tags"
|
||
},
|
||
"filenameShowAdvancedTagsDescription": "Habilitar etiquetas con formato para el relleno de pistas y los formatos de fecha",
|
||
"@filenameShowAdvancedTagsDescription": {
|
||
"description": "Description for advanced filename tag toggle"
|
||
},
|
||
"folderOrganizationNone": "Ninguna organización",
|
||
"@folderOrganizationNone": {
|
||
"description": "Folder option - flat structure"
|
||
},
|
||
"folderOrganizationByPlaylist": "Por lista de reproducción",
|
||
"@folderOrganizationByPlaylist": {
|
||
"description": "Folder option - playlist folders"
|
||
},
|
||
"folderOrganizationByPlaylistSubtitle": "Una carpeta independiente para cada lista de reproducción",
|
||
"@folderOrganizationByPlaylistSubtitle": {
|
||
"description": "Subtitle for playlist folder option"
|
||
},
|
||
"folderOrganizationByArtist": "Por Artista",
|
||
"@folderOrganizationByArtist": {
|
||
"description": "Folder option - artist folders"
|
||
},
|
||
"folderOrganizationByAlbum": "Por Álbum",
|
||
"@folderOrganizationByAlbum": {
|
||
"description": "Folder option - album folders"
|
||
},
|
||
"folderOrganizationByArtistAlbum": "Artista/Álbum",
|
||
"@folderOrganizationByArtistAlbum": {
|
||
"description": "Folder option - nested folders"
|
||
},
|
||
"folderOrganizationDescription": "Organizar los archivos descargados en carpetas",
|
||
"@folderOrganizationDescription": {
|
||
"description": "Folder organization sheet description"
|
||
},
|
||
"folderOrganizationNoneSubtitle": "Todos los archivos de la carpeta de descargas",
|
||
"@folderOrganizationNoneSubtitle": {
|
||
"description": "Subtitle for no organization option"
|
||
},
|
||
"folderOrganizationByArtistSubtitle": "Carpeta separada para cada artista",
|
||
"@folderOrganizationByArtistSubtitle": {
|
||
"description": "Subtitle for artist folder option"
|
||
},
|
||
"folderOrganizationByAlbumSubtitle": "Carpeta separada para cada artista",
|
||
"@folderOrganizationByAlbumSubtitle": {
|
||
"description": "Subtitle for album folder option"
|
||
},
|
||
"folderOrganizationByArtistAlbumSubtitle": "Carpetas organizadas por artista y álbum",
|
||
"@folderOrganizationByArtistAlbumSubtitle": {
|
||
"description": "Subtitle for nested folder option"
|
||
},
|
||
"updateAvailable": "Actualización Disponible",
|
||
"@updateAvailable": {
|
||
"description": "Update dialog title"
|
||
},
|
||
"updateLater": "Más tarde",
|
||
"@updateLater": {
|
||
"description": "Update button - dismiss"
|
||
},
|
||
"updateStartingDownload": "Iniciando descarga...",
|
||
"@updateStartingDownload": {
|
||
"description": "Update status - initializing"
|
||
},
|
||
"updateDownloadFailed": "Descarga fallida",
|
||
"@updateDownloadFailed": {
|
||
"description": "Update error title"
|
||
},
|
||
"updateFailedMessage": "Error al descargar la actualización",
|
||
"@updateFailedMessage": {
|
||
"description": "Update error message"
|
||
},
|
||
"updateNewVersionReady": "Una nueva versión está lista",
|
||
"@updateNewVersionReady": {
|
||
"description": "Update subtitle"
|
||
},
|
||
"updateRequiredTitle": "Actualización Necesaria",
|
||
"@updateRequiredTitle": {
|
||
"description": "Title of the mandatory update dialog shown when the installed version is too old"
|
||
},
|
||
"updateRequiredNotice": "Esta versión está {count} lanzamientos detrás de la actual y ya no es soportada. Actualice para seguir usando la app.",
|
||
"@updateRequiredNotice": {
|
||
"description": "Subtitle of the mandatory update dialog; explains why the dialog cannot be dismissed",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"updateCurrent": "Actual",
|
||
"@updateCurrent": {
|
||
"description": "Label for current version"
|
||
},
|
||
"updateNew": "Nuevo",
|
||
"@updateNew": {
|
||
"description": "Label for new version"
|
||
},
|
||
"updateDownloading": "Descargando...",
|
||
"@updateDownloading": {
|
||
"description": "Update status - downloading"
|
||
},
|
||
"updateWhatsNew": "Novedades",
|
||
"@updateWhatsNew": {
|
||
"description": "Changelog section title"
|
||
},
|
||
"updateDownloadInstall": "Descargar & Instalar",
|
||
"@updateDownloadInstall": {
|
||
"description": "Update button - download and install"
|
||
},
|
||
"updateDontRemind": "No recordar",
|
||
"@updateDontRemind": {
|
||
"description": "Update button - skip this version"
|
||
},
|
||
"providerPriorityTitle": "Prioridad del proveedor",
|
||
"@providerPriorityTitle": {
|
||
"description": "Provider priority page title"
|
||
},
|
||
"providerPriorityDescription": "Arrastra para reordenar los proveedores de descarga. La aplicación intentará usar los proveedores de arriba hacia abajo al descargar las pistas.",
|
||
"@providerPriorityDescription": {
|
||
"description": "Provider priority page description"
|
||
},
|
||
"providerPriorityInfo": "Si una pista no está disponible en el primer proveedor, la aplicación intentará automáticamente el siguiente.",
|
||
"@providerPriorityInfo": {
|
||
"description": "Info tip about fallback behavior"
|
||
},
|
||
"providerPriorityFallbackExtensionsDescription": "Elija las extensiones de descarga que se usarán como respaldo automático.",
|
||
"@providerPriorityFallbackExtensionsDescription": {
|
||
"description": "Section description for extension fallback selection"
|
||
},
|
||
"providerPriorityFallbackExtensionsHint": "Solo las extensiones activas con proveedor de descarga se listan aquí.",
|
||
"@providerPriorityFallbackExtensionsHint": {
|
||
"description": "Hint below the extension fallback selection list"
|
||
},
|
||
"providerExtension": "Extensión",
|
||
"@providerExtension": {
|
||
"description": "Label for extension-provided providers"
|
||
},
|
||
"metadataProviderPriorityTitle": "Prioridad de la información",
|
||
"@metadataProviderPriorityTitle": {
|
||
"description": "Metadata priority page title"
|
||
},
|
||
"metadataProviderPriorityDescription": "Arrastra para reordenar los proveedores de información. La aplicación probará los proveedores de arriba hacia abajo al buscar pistas y obtener la información.",
|
||
"@metadataProviderPriorityDescription": {
|
||
"description": "Metadata priority page description"
|
||
},
|
||
"metadataProviderPriorityInfo": "Deezer no tiene límites de tasa y se recomienda como principal. Spotify puede valorar el límite después de muchas solicitudes.",
|
||
"@metadataProviderPriorityInfo": {
|
||
"description": "Info tip about rate limits"
|
||
},
|
||
"logTitle": "Registros",
|
||
"@logTitle": {
|
||
"description": "Logs screen title"
|
||
},
|
||
"logCopied": "Registros copiados al portapapeles",
|
||
"@logCopied": {
|
||
"description": "Snackbar - logs copied"
|
||
},
|
||
"logSearchHint": "Buscar registros...",
|
||
"@logSearchHint": {
|
||
"description": "Log search placeholder"
|
||
},
|
||
"logFilterLevel": "Nivel",
|
||
"@logFilterLevel": {
|
||
"description": "Filter by log level"
|
||
},
|
||
"logFilterSection": "Filtrar",
|
||
"@logFilterSection": {
|
||
"description": "Filter section title"
|
||
},
|
||
"logShareLogs": "Compartir registros",
|
||
"@logShareLogs": {
|
||
"description": "Share button tooltip"
|
||
},
|
||
"logClearLogs": "Borrar registros",
|
||
"@logClearLogs": {
|
||
"description": "Clear button tooltip"
|
||
},
|
||
"logClearLogsTitle": "Limpiar registros",
|
||
"@logClearLogsTitle": {
|
||
"description": "Clear logs dialog title"
|
||
},
|
||
"logClearLogsMessage": "¿Estás seguro qué deseas limpiar todos los registros?",
|
||
"@logClearLogsMessage": {
|
||
"description": "Clear logs confirmation message"
|
||
},
|
||
"logFilterBySeverity": "Filtrar los registros por gravedad",
|
||
"@logFilterBySeverity": {
|
||
"description": "Filter dialog title"
|
||
},
|
||
"logNoLogsYet": "No hay registros aún",
|
||
"@logNoLogsYet": {
|
||
"description": "Empty state title"
|
||
},
|
||
"logNoLogsYetSubtitle": "Los registros aparecerán aquí mientras usas la aplicación",
|
||
"@logNoLogsYetSubtitle": {
|
||
"description": "Empty state subtitle"
|
||
},
|
||
"logEntriesFiltered": "Entradas ({count} filtradas)",
|
||
"@logEntriesFiltered": {
|
||
"description": "Log count with filter active",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"logEntries": "Entradas ({count})",
|
||
"@logEntries": {
|
||
"description": "Total log count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"channelStable": "Estable",
|
||
"@channelStable": {
|
||
"description": "Update channel - stable releases"
|
||
},
|
||
"channelPreview": "Vista previa",
|
||
"@channelPreview": {
|
||
"description": "Update channel - beta/preview releases"
|
||
},
|
||
"sectionSearchSource": "Buscar Fuente",
|
||
"@sectionSearchSource": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionDownload": "Descargar",
|
||
"@sectionDownload": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionPerformance": "Alto rendimiento",
|
||
"@sectionPerformance": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionApp": "Aplicación",
|
||
"@sectionApp": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionData": "Datos",
|
||
"@sectionData": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionDebug": "Depuración",
|
||
"@sectionDebug": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionService": "Servicio",
|
||
"@sectionService": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionAudioQuality": "Calidad de Sonido",
|
||
"@sectionAudioQuality": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionFileSettings": "Ajustes del archivo",
|
||
"@sectionFileSettings": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionLyrics": "Letras",
|
||
"@sectionLyrics": {
|
||
"description": "Settings section header"
|
||
},
|
||
"lyricsMode": "Modo Letras",
|
||
"@lyricsMode": {
|
||
"description": "Setting - how to save lyrics"
|
||
},
|
||
"lyricsModeDescription": "Elige cómo se guardan las letras de tus descargas",
|
||
"@lyricsModeDescription": {
|
||
"description": "Lyrics mode picker description"
|
||
},
|
||
"lyricsModeEmbed": "Insertar en archivo",
|
||
"@lyricsModeEmbed": {
|
||
"description": "Lyrics mode option - embed in audio file"
|
||
},
|
||
"lyricsModeEmbedSubtitle": "Letras almacenadas en la información FLAC",
|
||
"@lyricsModeEmbedSubtitle": {
|
||
"description": "Subtitle for embed option"
|
||
},
|
||
"lyricsModeExternal": "Archivo .lrc externo",
|
||
"@lyricsModeExternal": {
|
||
"description": "Lyrics mode option - separate LRC file"
|
||
},
|
||
"lyricsModeExternalSubtitle": "Archivo .lrc separado para reproductores como Samsung Music",
|
||
"@lyricsModeExternalSubtitle": {
|
||
"description": "Subtitle for external option"
|
||
},
|
||
"lyricsModeBoth": "Ambos",
|
||
"@lyricsModeBoth": {
|
||
"description": "Lyrics mode option - embed and external"
|
||
},
|
||
"lyricsModeBothSubtitle": "Insertar y guardar archivo .lrc",
|
||
"@lyricsModeBothSubtitle": {
|
||
"description": "Subtitle for both option"
|
||
},
|
||
"sectionColor": "Colores",
|
||
"@sectionColor": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionTheme": "Tema",
|
||
"@sectionTheme": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionLayout": "Diseño",
|
||
"@sectionLayout": {
|
||
"description": "Settings section header"
|
||
},
|
||
"sectionLanguage": "Idioma",
|
||
"@sectionLanguage": {
|
||
"description": "Settings section header for language"
|
||
},
|
||
"appearanceLanguage": "Idioma de la aplicación",
|
||
"@appearanceLanguage": {
|
||
"description": "Language setting title"
|
||
},
|
||
"settingsAppearanceSubtitle": "Tema, colores, pantalla",
|
||
"@settingsAppearanceSubtitle": {
|
||
"description": "Appearance settings description"
|
||
},
|
||
"settingsDownloadSubtitle": "Servicio, calidad, respaldo",
|
||
"@settingsDownloadSubtitle": {
|
||
"description": "Download settings description"
|
||
},
|
||
"settingsExtensionsSubtitle": "Administrar proveedores de descarga",
|
||
"@settingsExtensionsSubtitle": {
|
||
"description": "Extensions settings description"
|
||
},
|
||
"settingsLogsSubtitle": "Ver registros de aplicaciones para depuración",
|
||
"@settingsLogsSubtitle": {
|
||
"description": "Logs settings description"
|
||
},
|
||
"loadingSharedLink": "Cargando enlace compartido...",
|
||
"@loadingSharedLink": {
|
||
"description": "Status when opening shared URL"
|
||
},
|
||
"pressBackAgainToExit": "Presione de nuevo para salir",
|
||
"@pressBackAgainToExit": {
|
||
"description": "Exit confirmation message"
|
||
},
|
||
"downloadAllCount": "Descargar todo ({count})",
|
||
"@downloadAllCount": {
|
||
"description": "Download all button with count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"tracksCount": "{count, plural, =1{1 pista} other{{count} pistas}}",
|
||
"@tracksCount": {
|
||
"description": "Track count display",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"trackCopyFilePath": "Copiar ruta de archivo",
|
||
"@trackCopyFilePath": {
|
||
"description": "Action - copy file path"
|
||
},
|
||
"trackRemoveFromDevice": "Eliminar del dispositivo",
|
||
"@trackRemoveFromDevice": {
|
||
"description": "Action - delete downloaded file"
|
||
},
|
||
"trackLoadLyrics": "Cargar letras",
|
||
"@trackLoadLyrics": {
|
||
"description": "Action - fetch lyrics"
|
||
},
|
||
"trackMetadata": "Información",
|
||
"@trackMetadata": {
|
||
"description": "Tab title - track metadata"
|
||
},
|
||
"trackFileInfo": "Información de archivo",
|
||
"@trackFileInfo": {
|
||
"description": "Tab title - file information"
|
||
},
|
||
"trackLyrics": "Letras",
|
||
"@trackLyrics": {
|
||
"description": "Tab title - lyrics"
|
||
},
|
||
"trackFileNotFound": "Archivo no encontrado",
|
||
"@trackFileNotFound": {
|
||
"description": "Error - file doesn't exist"
|
||
},
|
||
"trackOpenInDeezer": "Abrir en Deezer",
|
||
"@trackOpenInDeezer": {
|
||
"description": "Action - open track in Deezer app"
|
||
},
|
||
"trackOpenInSpotify": "Abrir en Spotify",
|
||
"@trackOpenInSpotify": {
|
||
"description": "Action - open track in Spotify app"
|
||
},
|
||
"trackTrackName": "Nombre de pista",
|
||
"@trackTrackName": {
|
||
"description": "Metadata label - track title"
|
||
},
|
||
"trackArtist": "Artista",
|
||
"@trackArtist": {
|
||
"description": "Metadata label - artist name"
|
||
},
|
||
"trackAlbumArtist": "Artista del álbum",
|
||
"@trackAlbumArtist": {
|
||
"description": "Metadata label - album artist"
|
||
},
|
||
"trackAlbum": "Álbum",
|
||
"@trackAlbum": {
|
||
"description": "Metadata label - album name"
|
||
},
|
||
"trackTrackNumber": "Número de pista",
|
||
"@trackTrackNumber": {
|
||
"description": "Metadata label - track number"
|
||
},
|
||
"trackDiscNumber": "Número de disco",
|
||
"@trackDiscNumber": {
|
||
"description": "Metadata label - disc number"
|
||
},
|
||
"trackDuration": "Duración",
|
||
"@trackDuration": {
|
||
"description": "Metadata label - track length"
|
||
},
|
||
"trackAudioQuality": "Calidad del sonido",
|
||
"@trackAudioQuality": {
|
||
"description": "Metadata label - audio quality"
|
||
},
|
||
"trackReplayGainTrackGain": "ReplayGain Track Gain",
|
||
"@trackReplayGainTrackGain": {
|
||
"description": "Metadata label - ReplayGain track gain"
|
||
},
|
||
"trackReplayGainTrackPeak": "ReplayGain Track Peak",
|
||
"@trackReplayGainTrackPeak": {
|
||
"description": "Metadata label - ReplayGain track peak"
|
||
},
|
||
"trackReplayGainAlbumGain": "ReplayGain Album Gain",
|
||
"@trackReplayGainAlbumGain": {
|
||
"description": "Metadata label - ReplayGain album gain"
|
||
},
|
||
"trackReplayGainAlbumPeak": "ReplayGain Album Peak",
|
||
"@trackReplayGainAlbumPeak": {
|
||
"description": "Metadata label - ReplayGain album peak"
|
||
},
|
||
"libraryQualityLabelFileFormat": "Formato de archivo",
|
||
"@libraryQualityLabelFileFormat": {
|
||
"description": "Library audio quality label mode that shows the detected file format"
|
||
},
|
||
"trackReleaseDate": "Fecha de lanzamiento",
|
||
"@trackReleaseDate": {
|
||
"description": "Metadata label - release date"
|
||
},
|
||
"trackGenre": "Género",
|
||
"@trackGenre": {
|
||
"description": "Metadata label - music genre"
|
||
},
|
||
"trackLabel": "Etiqueta",
|
||
"@trackLabel": {
|
||
"description": "Metadata label - record label"
|
||
},
|
||
"trackCopyright": "Derechos de autor",
|
||
"@trackCopyright": {
|
||
"description": "Metadata label - copyright information"
|
||
},
|
||
"trackDownloaded": "Descargado",
|
||
"@trackDownloaded": {
|
||
"description": "Metadata label - download date"
|
||
},
|
||
"trackCopyLyrics": "Copiar letras",
|
||
"@trackCopyLyrics": {
|
||
"description": "Action - copy lyrics to clipboard"
|
||
},
|
||
"trackLyricsSource": "Fuente: {source}",
|
||
"@trackLyricsSource": {
|
||
"description": "Label showing the lyrics source/provider",
|
||
"placeholders": {
|
||
"source": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackLyricsNotAvailable": "Letras no disponibles para este tema",
|
||
"@trackLyricsNotAvailable": {
|
||
"description": "Message when lyrics not found"
|
||
},
|
||
"trackLyricsNotInFile": "No se encontraron letras",
|
||
"@trackLyricsNotInFile": {
|
||
"description": "Message when no embedded lyrics in audio file"
|
||
},
|
||
"trackFetchOnlineLyrics": "Obtener en línea",
|
||
"@trackFetchOnlineLyrics": {
|
||
"description": "Action - fetch lyrics from online providers"
|
||
},
|
||
"trackLyricsTimeout": "Tiempo de espera agotado. Inténtalo de nuevo más tarde.",
|
||
"@trackLyricsTimeout": {
|
||
"description": "Message when lyrics request times out"
|
||
},
|
||
"trackLyricsLoadFailed": "Error al cargar la letra",
|
||
"@trackLyricsLoadFailed": {
|
||
"description": "Message when lyrics loading fails"
|
||
},
|
||
"trackEmbedLyrics": "Incrustar Letras",
|
||
"@trackEmbedLyrics": {
|
||
"description": "Action - embed lyrics into audio file"
|
||
},
|
||
"trackLyricsEmbedded": "Letra incrustada con éxito",
|
||
"@trackLyricsEmbedded": {
|
||
"description": "Snackbar - lyrics saved to file"
|
||
},
|
||
"trackInstrumental": "Pista instrumental",
|
||
"@trackInstrumental": {
|
||
"description": "Message when track is instrumental (no lyrics)"
|
||
},
|
||
"trackCopiedToClipboard": "Copiado al portapapeles",
|
||
"@trackCopiedToClipboard": {
|
||
"description": "Snackbar - content copied"
|
||
},
|
||
"trackDeleteConfirmTitle": "¿Eliminar del dispositivo?",
|
||
"@trackDeleteConfirmTitle": {
|
||
"description": "Delete confirmation title"
|
||
},
|
||
"trackDeleteConfirmMessage": "Esto eliminará permanentemente el archivo descargado y lo eliminará de tu historial.",
|
||
"@trackDeleteConfirmMessage": {
|
||
"description": "Delete confirmation message"
|
||
},
|
||
"dateToday": "Hoy",
|
||
"@dateToday": {
|
||
"description": "Relative date - today"
|
||
},
|
||
"dateYesterday": "Ayer",
|
||
"@dateYesterday": {
|
||
"description": "Relative date - yesterday"
|
||
},
|
||
"dateDaysAgo": "Hace {count} días",
|
||
"@dateDaysAgo": {
|
||
"description": "Relative date - days ago",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"dateWeeksAgo": "{count} semanas antes",
|
||
"@dateWeeksAgo": {
|
||
"description": "Relative date - weeks ago",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"dateMonthsAgo": "{count} meses atrás",
|
||
"@dateMonthsAgo": {
|
||
"description": "Relative date - months ago",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"storeFilterAll": "Todo",
|
||
"@storeFilterAll": {
|
||
"description": "Repo filter - all extensions"
|
||
},
|
||
"storeFilterMetadata": "Información",
|
||
"@storeFilterMetadata": {
|
||
"description": "Repo filter - metadata providers"
|
||
},
|
||
"storeFilterDownload": "Descargar",
|
||
"@storeFilterDownload": {
|
||
"description": "Repo filter - download providers"
|
||
},
|
||
"storeFilterUtility": "Utilidad",
|
||
"@storeFilterUtility": {
|
||
"description": "Repo filter - utility extensions"
|
||
},
|
||
"storeFilterLyrics": "Letras",
|
||
"@storeFilterLyrics": {
|
||
"description": "Repo filter - lyrics providers"
|
||
},
|
||
"storeFilterIntegration": "Integración",
|
||
"@storeFilterIntegration": {
|
||
"description": "Repo filter - integrations"
|
||
},
|
||
"storeClearFilters": "Limpiar filtros",
|
||
"@storeClearFilters": {
|
||
"description": "Button to clear all filters"
|
||
},
|
||
"storeAddRepoTitle": "Añadir repositorio de extensiones",
|
||
"@storeAddRepoTitle": {
|
||
"description": "Store setup screen - heading when no repo is configured"
|
||
},
|
||
"storeAddRepoDescription": "Introduzca una URL de repositorio de GitHub que contenga un archivo registry.json para navegar e instalar extensiones.",
|
||
"@storeAddRepoDescription": {
|
||
"description": "Store setup screen - explanatory text"
|
||
},
|
||
"storeRepoUrlLabel": "URL del repositorio",
|
||
"@storeRepoUrlLabel": {
|
||
"description": "Label for the repository URL input field"
|
||
},
|
||
"storeRepoUrlHint": "https://github.com/user/repo",
|
||
"@storeRepoUrlHint": {
|
||
"description": "Hint/placeholder for the repository URL input field"
|
||
},
|
||
"storeAddRepoButton": "Añadir repositorio",
|
||
"@storeAddRepoButton": {
|
||
"description": "Button to submit a new repository URL"
|
||
},
|
||
"storeChangeRepoTooltip": "Cambiar repositorio",
|
||
"@storeChangeRepoTooltip": {
|
||
"description": "Tooltip for the change-repository icon button in the app bar"
|
||
},
|
||
"storeRepoDialogTitle": "Repositorio de extensiones",
|
||
"@storeRepoDialogTitle": {
|
||
"description": "Title of the change/remove repository dialog"
|
||
},
|
||
"storeRepoDialogCurrent": "Repositorio actual:",
|
||
"@storeRepoDialogCurrent": {
|
||
"description": "Label shown above the current repository URL in the dialog"
|
||
},
|
||
"storeNewRepoUrlLabel": "Nueva URL del repositorio",
|
||
"@storeNewRepoUrlLabel": {
|
||
"description": "Label for the new repository URL field inside the dialog"
|
||
},
|
||
"storeLoadError": "Falló al cargar repositorio",
|
||
"@storeLoadError": {
|
||
"description": "Error heading when the store cannot be loaded"
|
||
},
|
||
"storeEmptyNoExtensions": "No hay extensiones disponibles",
|
||
"@storeEmptyNoExtensions": {
|
||
"description": "Message when store has no extensions"
|
||
},
|
||
"storeEmptyNoResults": "No se encontraron extensiones",
|
||
"@storeEmptyNoResults": {
|
||
"description": "Message when search/filter returns no results"
|
||
},
|
||
"extensionId": "ID",
|
||
"@extensionId": {
|
||
"description": "Extension detail - unique ID"
|
||
},
|
||
"extensionError": "Error",
|
||
"@extensionError": {
|
||
"description": "Extension detail - error message"
|
||
},
|
||
"extensionCapabilities": "Recursos",
|
||
"@extensionCapabilities": {
|
||
"description": "Section header - extension features"
|
||
},
|
||
"extensionMetadataProvider": "Proveedor de información",
|
||
"@extensionMetadataProvider": {
|
||
"description": "Capability - provides metadata"
|
||
},
|
||
"extensionDownloadProvider": "Proveedor de descargas",
|
||
"@extensionDownloadProvider": {
|
||
"description": "Capability - provides downloads"
|
||
},
|
||
"extensionLyricsProvider": "Proveedor de letras",
|
||
"@extensionLyricsProvider": {
|
||
"description": "Capability - provides lyrics"
|
||
},
|
||
"extensionUrlHandler": "Gestor de URL",
|
||
"@extensionUrlHandler": {
|
||
"description": "Capability - handles URLs"
|
||
},
|
||
"extensionQualityOptions": "Opciones de calidad",
|
||
"@extensionQualityOptions": {
|
||
"description": "Capability - quality selection"
|
||
},
|
||
"extensionPostProcessingHooks": "Post-procesamiento de hooks",
|
||
"@extensionPostProcessingHooks": {
|
||
"description": "Capability - post-processing"
|
||
},
|
||
"extensionPermissions": "Permisos",
|
||
"@extensionPermissions": {
|
||
"description": "Section header - required permissions"
|
||
},
|
||
"extensionSettings": "Ajustes",
|
||
"@extensionSettings": {
|
||
"description": "Section header - extension settings"
|
||
},
|
||
"extensionRemoveButton": "Eliminar extensión",
|
||
"@extensionRemoveButton": {
|
||
"description": "Button to uninstall extension"
|
||
},
|
||
"extensionUpdated": "Actualizado",
|
||
"@extensionUpdated": {
|
||
"description": "Extension detail - last update"
|
||
},
|
||
"extensionMinAppVersion": "Versión Mínima de la aplicación",
|
||
"@extensionMinAppVersion": {
|
||
"description": "Extension detail - minimum app version"
|
||
},
|
||
"extensionCustomTrackMatching": "Coincidencia de pista personalizada",
|
||
"@extensionCustomTrackMatching": {
|
||
"description": "Capability - custom track matching algorithm"
|
||
},
|
||
"extensionPostProcessing": "Post-Procesamiento",
|
||
"@extensionPostProcessing": {
|
||
"description": "Capability - post-download processing"
|
||
},
|
||
"extensionHooksAvailable": "{count} hook(s) disponibles",
|
||
"@extensionHooksAvailable": {
|
||
"description": "Post-processing hooks count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"extensionPatternsCount": "Patrón(es) {count}",
|
||
"@extensionPatternsCount": {
|
||
"description": "URL patterns count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"extensionStrategy": "Estrategia: {strategy}",
|
||
"@extensionStrategy": {
|
||
"description": "Track matching strategy name",
|
||
"placeholders": {
|
||
"strategy": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"extensionsProviderPrioritySection": "Prioridad del proveedor",
|
||
"@extensionsProviderPrioritySection": {
|
||
"description": "Section header - provider priority"
|
||
},
|
||
"extensionsInstalledSection": "Extensiones instaladas",
|
||
"@extensionsInstalledSection": {
|
||
"description": "Section header - installed extensions"
|
||
},
|
||
"extensionsNoExtensions": "No hay extensiones instaladas",
|
||
"@extensionsNoExtensions": {
|
||
"description": "Empty state - no extensions"
|
||
},
|
||
"extensionsNoExtensionsSubtitle": "Instalar archivos .spotiflac-ext para añadir nuevos proveedores",
|
||
"@extensionsNoExtensionsSubtitle": {
|
||
"description": "Empty state subtitle"
|
||
},
|
||
"extensionsInstallButton": "Instalar extensión",
|
||
"@extensionsInstallButton": {
|
||
"description": "Button to install extension from file"
|
||
},
|
||
"extensionsInfoTip": "Las extensiones pueden añadir nueva información y proveedores de descargas. Solo instalar extensiones desde fuentes confiables.",
|
||
"@extensionsInfoTip": {
|
||
"description": "Security warning about extensions"
|
||
},
|
||
"extensionsInstalledSuccess": "Extensión instalada correctamente",
|
||
"@extensionsInstalledSuccess": {
|
||
"description": "Success message after install"
|
||
},
|
||
"extensionsInstalledCount": "{count} Extensiones instaladas correctamente",
|
||
"@extensionsInstalledCount": {
|
||
"description": "Success message after installing multiple extensions",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int",
|
||
"description": "Number of installed extensions"
|
||
}
|
||
}
|
||
},
|
||
"extensionsInstallPartialSuccess": "{installed} Instalados de {attempted} extensiones",
|
||
"@extensionsInstallPartialSuccess": {
|
||
"description": "Message when installing multiple extensions partially succeeds",
|
||
"placeholders": {
|
||
"installed": {
|
||
"type": "int",
|
||
"description": "Number of successfully installed extensions"
|
||
},
|
||
"attempted": {
|
||
"type": "int",
|
||
"description": "Number of selected extensions"
|
||
}
|
||
}
|
||
},
|
||
"extensionsDownloadPriority": "Prioridad de descarga",
|
||
"@extensionsDownloadPriority": {
|
||
"description": "Setting - download provider order"
|
||
},
|
||
"extensionsDownloadPrioritySubtitle": "Establecer orden de servicio de descarga",
|
||
"@extensionsDownloadPrioritySubtitle": {
|
||
"description": "Subtitle for download priority"
|
||
},
|
||
"extensionsFallbackTitle": "Respaldo de extensiones",
|
||
"@extensionsFallbackTitle": {
|
||
"description": "Setting and page title for choosing which download extensions can be used during fallback"
|
||
},
|
||
"extensionsFallbackSubtitle": "Elija que extensiones pueden usarse como reserva",
|
||
"@extensionsFallbackSubtitle": {
|
||
"description": "Subtitle for download fallback extensions menu"
|
||
},
|
||
"extensionsNoDownloadProvider": "No hay extensiones con proveedor de descargas",
|
||
"@extensionsNoDownloadProvider": {
|
||
"description": "Empty state - no download providers"
|
||
},
|
||
"extensionsMetadataPriority": "Prioridad de la información",
|
||
"@extensionsMetadataPriority": {
|
||
"description": "Setting - metadata provider order"
|
||
},
|
||
"extensionsMetadataPrioritySubtitle": "Establecer orden de búsqueda y información",
|
||
"@extensionsMetadataPrioritySubtitle": {
|
||
"description": "Subtitle for metadata priority"
|
||
},
|
||
"extensionsNoMetadataProvider": "No hay extensiones con el proveedor de información",
|
||
"@extensionsNoMetadataProvider": {
|
||
"description": "Empty state - no metadata providers"
|
||
},
|
||
"extensionsSearchProvider": "Proveedor de búsqueda",
|
||
"@extensionsSearchProvider": {
|
||
"description": "Setting - search provider selection"
|
||
},
|
||
"extensionsNoCustomSearch": "No hay extensiones con búsqueda personalizada",
|
||
"@extensionsNoCustomSearch": {
|
||
"description": "Empty state - no search providers"
|
||
},
|
||
"extensionsSearchProviderDescription": "Elegir qué servicio usar para buscar pistas",
|
||
"@extensionsSearchProviderDescription": {
|
||
"description": "Search provider setting description"
|
||
},
|
||
"extensionsCustomSearch": "Búsqueda personalizada",
|
||
"@extensionsCustomSearch": {
|
||
"description": "Label for custom search provider"
|
||
},
|
||
"extensionsErrorLoading": "Error al cargar la extensión",
|
||
"@extensionsErrorLoading": {
|
||
"description": "Error message when extension fails to load"
|
||
},
|
||
"qualityFlacLossless": "FLAC sin pérdida",
|
||
"@qualityFlacLossless": {
|
||
"description": "Quality option - CD quality FLAC"
|
||
},
|
||
"qualityFlacLosslessSubtitle": "16-bit / 44,1 kHz",
|
||
"@qualityFlacLosslessSubtitle": {
|
||
"description": "Technical spec for lossless"
|
||
},
|
||
"qualityHiResFlac": "FLAC de alta resolución",
|
||
"@qualityHiResFlac": {
|
||
"description": "Quality option - high resolution FLAC"
|
||
},
|
||
"qualityHiResFlacSubtitle": "24-bit / hasta 96 kHz",
|
||
"@qualityHiResFlacSubtitle": {
|
||
"description": "Technical spec for hi-res"
|
||
},
|
||
"qualityHiResFlacMax": "Hi-Res FLAC Max",
|
||
"@qualityHiResFlacMax": {
|
||
"description": "Quality option - maximum resolution FLAC"
|
||
},
|
||
"qualityHiResFlacMaxSubtitle": "24-bit / hasta 192 kHz",
|
||
"@qualityHiResFlacMaxSubtitle": {
|
||
"description": "Technical spec for hi-res max"
|
||
},
|
||
"downloadLossy320": "Con pérdida, 320 kbps",
|
||
"@downloadLossy320": {
|
||
"description": "Quality option label for lossy 320kbps"
|
||
},
|
||
"downloadLossyFormat": "Formato con pérdida",
|
||
"@downloadLossyFormat": {
|
||
"description": "Setting title to pick output format for lossy downloads"
|
||
},
|
||
"downloadAutoConvert": "Autoconvertir después de descargar",
|
||
"@downloadAutoConvert": {
|
||
"description": "Toggle for automatic post-download audio conversion"
|
||
},
|
||
"downloadAutoConvertSubtitle": "Convierte descargas completadas a un formato con pérdidas más pequeño. El original solo es reemplazado después que la conversión sea exitosa.",
|
||
"@downloadAutoConvertSubtitle": {
|
||
"description": "Explanation of safe automatic post-download conversion"
|
||
},
|
||
"downloadAutoConvertFormat": "Formato de salida",
|
||
"@downloadAutoConvertFormat": {
|
||
"description": "Automatic conversion output format setting"
|
||
},
|
||
"downloadAutoConvertFormatSubtitle": "Elige el formato con pérdidas para descargas completadas nuevas.",
|
||
"@downloadAutoConvertFormatSubtitle": {
|
||
"description": "Automatic conversion format picker explanation"
|
||
},
|
||
"downloadAutoConvertBitrate": "Calidad de salida",
|
||
"@downloadAutoConvertBitrate": {
|
||
"description": "Automatic conversion bitrate setting"
|
||
},
|
||
"downloadAutoConvertBitrateSubtitle": "Las tasas de bits más altas preservan más detalles pero hacen archivos más grandes.",
|
||
"@downloadAutoConvertBitrateSubtitle": {
|
||
"description": "Automatic conversion bitrate picker explanation"
|
||
},
|
||
"downloadAutoConvertMp3Subtitle": "Mejor compatibilidad en reproductores y dispositivos",
|
||
"@downloadAutoConvertMp3Subtitle": {
|
||
"description": "MP3 automatic conversion option description"
|
||
},
|
||
"downloadAutoConvertM4aSubtitle": "Audio AAC eficiente en un contenedor M4A",
|
||
"@downloadAutoConvertM4aSubtitle": {
|
||
"description": "M4A AAC automatic conversion option description"
|
||
},
|
||
"downloadAutoConvertOpusSubtitle": "Mejor eficiencia para reproductores modernos",
|
||
"@downloadAutoConvertOpusSubtitle": {
|
||
"description": "Opus automatic conversion option description"
|
||
},
|
||
"downloadLossy320Format": "Formato con pérdida a 320 kbps",
|
||
"@downloadLossy320Format": {
|
||
"description": "Title of the lossy format picker bottom sheet"
|
||
},
|
||
"downloadLossy320FormatDesc": "Elige el formato de salida para las descargas con pérdida de calidad a 320 kbps. Cuando sea necesario, el audio original se convertirá al formato seleccionado.",
|
||
"@downloadLossy320FormatDesc": {
|
||
"description": "Description in the lossy format picker"
|
||
},
|
||
"downloadLossyMp3": "MP3 (320 kbps)",
|
||
"@downloadLossyMp3": {
|
||
"description": "Lossy format option - MP3 320kbps"
|
||
},
|
||
"downloadLossyMp3Subtitle": "Mejor compatibilidad, ~10 MB por pista",
|
||
"@downloadLossyMp3Subtitle": {
|
||
"description": "Subtitle for MP3 320kbps lossy option"
|
||
},
|
||
"downloadLossyAac": "AAC/M4A (320 kbps)",
|
||
"@downloadLossyAac": {
|
||
"description": "Lossy format option - AAC in M4A container at 320kbps"
|
||
},
|
||
"downloadLossyAacSubtitle": "La mejor compatibilidad con dispositivos móviles, formato M4A",
|
||
"@downloadLossyAacSubtitle": {
|
||
"description": "Subtitle for AAC/M4A 320kbps lossy option"
|
||
},
|
||
"downloadLossyOpus256": "OPUS (256 kbps)",
|
||
"@downloadLossyOpus256": {
|
||
"description": "Lossy format option - Opus 256kbps"
|
||
},
|
||
"downloadLossyOpus256Subtitle": "Mejor calidad de OPUS, ~8 MB por pista",
|
||
"@downloadLossyOpus256Subtitle": {
|
||
"description": "Subtitle for Opus 256kbps lossy option"
|
||
},
|
||
"downloadLossyOpus128": "OPUS (128 kbps)",
|
||
"@downloadLossyOpus128": {
|
||
"description": "Lossy format option - Opus 128kbps"
|
||
},
|
||
"downloadLossyOpus128Subtitle": "Tamaño mínimo: ~4 MB por pista",
|
||
"@downloadLossyOpus128Subtitle": {
|
||
"description": "Subtitle for Opus 128kbps lossy option"
|
||
},
|
||
"downloadAskBeforeDownload": "Preguntar antes de descargar",
|
||
"@downloadAskBeforeDownload": {
|
||
"description": "Setting - show quality picker"
|
||
},
|
||
"downloadDirectory": "Carpeta de descarga",
|
||
"@downloadDirectory": {
|
||
"description": "Setting - download folder"
|
||
},
|
||
"downloadSeparateSinglesFolder": "Carpeta separada para pistas",
|
||
"@downloadSeparateSinglesFolder": {
|
||
"description": "Setting - separate folder for singles"
|
||
},
|
||
"downloadAlbumFolderStructure": "Estructura de carpeta del álbum",
|
||
"@downloadAlbumFolderStructure": {
|
||
"description": "Setting - album folder organization"
|
||
},
|
||
"albumFolderStructureDescription": "Elige cómo se estructuran las carpetas de los álbumes",
|
||
"@albumFolderStructureDescription": {
|
||
"description": "Album folder structure picker description"
|
||
},
|
||
"downloadUseAlbumArtistForFolders": "Usar álbum de artista cómo carpeta",
|
||
"@downloadUseAlbumArtistForFolders": {
|
||
"description": "Setting - choose whether artist folders use Album Artist or Track Artist"
|
||
},
|
||
"downloadUsePrimaryArtistOnly": "Artista principal solo para carpetas",
|
||
"@downloadUsePrimaryArtistOnly": {
|
||
"description": "Setting - strip featured artists from folder name"
|
||
},
|
||
"downloadUsePrimaryArtistOnlyEnabled": "Se han eliminado los nombres de los artistas destacados del nombre de la carpeta (p. ej., Justin Bieber, Quavo → Justin Bieber)",
|
||
"@downloadUsePrimaryArtistOnlyEnabled": {
|
||
"description": "Subtitle when primary artist only is enabled"
|
||
},
|
||
"downloadUsePrimaryArtistOnlyDisabled": "Se utiliza el nombre completo del artista como nombre de la carpeta",
|
||
"@downloadUsePrimaryArtistOnlyDisabled": {
|
||
"description": "Subtitle when primary artist only is disabled"
|
||
},
|
||
"downloadSelectQuality": "Seleccionar Calidad",
|
||
"@downloadSelectQuality": {
|
||
"description": "Dialog title - choose audio quality"
|
||
},
|
||
"downloadFrom": "Descargar Desde",
|
||
"@downloadFrom": {
|
||
"description": "Label - download source"
|
||
},
|
||
"appearanceAmoledDark": "AMOLED Oscuro",
|
||
"@appearanceAmoledDark": {
|
||
"description": "Theme option - pure black"
|
||
},
|
||
"appearanceAmoledDarkSubtitle": "Fondo negro puro",
|
||
"@appearanceAmoledDarkSubtitle": {
|
||
"description": "Subtitle for AMOLED dark"
|
||
},
|
||
"appearanceHeroAnimations": "Animaciones Hero",
|
||
"@appearanceHeroAnimations": {
|
||
"description": "Toggle for shared-element (Hero) transitions"
|
||
},
|
||
"appearanceHeroAnimationsSubtitle": "Covers voladores entre pantallas, ejemplo: cuando abre el reproductor",
|
||
"@appearanceHeroAnimationsSubtitle": {
|
||
"description": "Subtitle for the Hero animations toggle"
|
||
},
|
||
"appearanceForceBlur": "Siempre use efecto desenfoque",
|
||
"@appearanceForceBlur": {
|
||
"description": "Toggle that forces backdrop blur on even when the device profile disabled it"
|
||
},
|
||
"appearanceForceBlurSubtitle": "Habilite la barra de navegación desenfocada incluso en dispositivos donde está desactivada por defecto. Puede costar rendimiento.",
|
||
"@appearanceForceBlurSubtitle": {
|
||
"description": "Subtitle for the force-blur toggle"
|
||
},
|
||
"queueClearAll": "Eliminar todo",
|
||
"@queueClearAll": {
|
||
"description": "Button - clear all queue items"
|
||
},
|
||
"queueClearAllMessage": "¿Estás seguro de que quieres borrar todas las descargas?",
|
||
"@queueClearAllMessage": {
|
||
"description": "Clear queue confirmation"
|
||
},
|
||
"settingsAutoExportFailed": "Autoexportar descargas fallidas",
|
||
"@settingsAutoExportFailed": {
|
||
"description": "Setting toggle for auto-export"
|
||
},
|
||
"settingsAutoExportFailedSubtitle": "Guardar descargas fallidas en el archivo TXT automáticamente",
|
||
"@settingsAutoExportFailedSubtitle": {
|
||
"description": "Subtitle for auto-export setting"
|
||
},
|
||
"settingsDownloadNetwork": "Red de descarga",
|
||
"@settingsDownloadNetwork": {
|
||
"description": "Setting for network type preference"
|
||
},
|
||
"settingsDownloadNetworkAny": "Wi-Fi + Datos móviles",
|
||
"@settingsDownloadNetworkAny": {
|
||
"description": "Network option - use any connection"
|
||
},
|
||
"settingsDownloadNetworkWifiOnly": "Iniciar solo por Wi-Fi",
|
||
"@settingsDownloadNetworkWifiOnly": {
|
||
"description": "Network option - only use WiFi"
|
||
},
|
||
"settingsDownloadNetworkSubtitle": "Elegir qué red usar para descargas. Cuando se establece en Wi-Fi solamente, las descargas se detendrán en los datos móviles.",
|
||
"@settingsDownloadNetworkSubtitle": {
|
||
"description": "Subtitle explaining network preference"
|
||
},
|
||
"settingsConcurrentDownloads": "Descargas concurrentes",
|
||
"@settingsConcurrentDownloads": {
|
||
"description": "Setting title - how many tracks download at the same time"
|
||
},
|
||
"settingsConcurrentDownloadsSubtitle": "Descargar varios archivos a la vez es rápido, pero con algunos proveedores puede haber un límite en pedidos paralelos.",
|
||
"@settingsConcurrentDownloadsSubtitle": {
|
||
"description": "Subtitle explaining the concurrent downloads picker"
|
||
},
|
||
"concurrentDownloadsOne": "1 archivo a la vez",
|
||
"@concurrentDownloadsOne": {
|
||
"description": "Concurrent downloads option - sequential"
|
||
},
|
||
"concurrentDownloadsCount": "Hasta {count} archivos a la vez",
|
||
"@concurrentDownloadsCount": {
|
||
"description": "Concurrent downloads option - parallel",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"albumFolderArtistAlbum": "Artista / Álbum",
|
||
"@albumFolderArtistAlbum": {
|
||
"description": "Album folder option"
|
||
},
|
||
"albumFolderArtistAlbumSubtitle": "Álbumes/Nombre del Artista/Nombre del Álbum/",
|
||
"@albumFolderArtistAlbumSubtitle": {
|
||
"description": "Folder structure example"
|
||
},
|
||
"albumFolderArtistYearAlbum": "Artista / [Año] Álbum",
|
||
"@albumFolderArtistYearAlbum": {
|
||
"description": "Album folder option with year"
|
||
},
|
||
"albumFolderArtistYearAlbumSubtitle": "Álbumes/Nombre del Artista /[2005] Nombre del Álbum/",
|
||
"@albumFolderArtistYearAlbumSubtitle": {
|
||
"description": "Folder structure example"
|
||
},
|
||
"albumFolderAlbumOnly": "Sólo álbum",
|
||
"@albumFolderAlbumOnly": {
|
||
"description": "Album folder option"
|
||
},
|
||
"albumFolderAlbumOnlySubtitle": "Álbumes/Nombre del Álbum/",
|
||
"@albumFolderAlbumOnlySubtitle": {
|
||
"description": "Folder structure example"
|
||
},
|
||
"albumFolderYearAlbum": "Álbum [Año]",
|
||
"@albumFolderYearAlbum": {
|
||
"description": "Album folder option with year"
|
||
},
|
||
"albumFolderYearAlbumSubtitle": "Álbumes/[2005] Nombre del Álbum/",
|
||
"@albumFolderYearAlbumSubtitle": {
|
||
"description": "Folder structure example"
|
||
},
|
||
"albumFolderArtistAlbumSingles": "Artista / Álbum + Pistas",
|
||
"@albumFolderArtistAlbumSingles": {
|
||
"description": "Album folder option with singles inside artist"
|
||
},
|
||
"albumFolderArtistAlbumSinglesSubtitle": "Artista/Álbum/ y Artista/pistas/",
|
||
"@albumFolderArtistAlbumSinglesSubtitle": {
|
||
"description": "Folder structure example"
|
||
},
|
||
"albumFolderArtistAlbumFlat": "Artista / Álbum (sencillos planos)",
|
||
"@albumFolderArtistAlbumFlat": {
|
||
"description": "Album folder option with singles directly in artist folder"
|
||
},
|
||
"albumFolderArtistAlbumFlatSubtitle": "Artista/Álbum/ y Artista/canción.flac",
|
||
"@albumFolderArtistAlbumFlatSubtitle": {
|
||
"description": "Folder structure example for flat singles"
|
||
},
|
||
"downloadedAlbumDeleteSelected": "Borrar seleccionados",
|
||
"@downloadedAlbumDeleteSelected": {
|
||
"description": "Button - delete selected tracks"
|
||
},
|
||
"downloadedAlbumDeleteMessage": "¿Eliminar {count} {count, plural, =1{pista} other{pistas}} del historial?\n\nEsto también eliminará los archivos del almacenamiento.",
|
||
"@downloadedAlbumDeleteMessage": {
|
||
"description": "Delete confirmation with count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"downloadedAlbumSelectedCount": "{count} seleccionado",
|
||
"@downloadedAlbumSelectedCount": {
|
||
"description": "Selection count indicator",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"downloadedAlbumTapToSelect": "Toca las pistas para seleccionar",
|
||
"@downloadedAlbumTapToSelect": {
|
||
"description": "Selection hint"
|
||
},
|
||
"downloadedAlbumDeleteCount": "¡Eliminar {count} {count, plural, =1{pista} other{pistas}}",
|
||
"@downloadedAlbumDeleteCount": {
|
||
"description": "Delete button text with count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"downloadedAlbumSelectToDelete": "Seleccionar pistas a eliminar",
|
||
"@downloadedAlbumSelectToDelete": {
|
||
"description": "Placeholder when nothing selected"
|
||
},
|
||
"downloadedAlbumDiscHeader": "Disco {discNumber}",
|
||
"@downloadedAlbumDiscHeader": {
|
||
"description": "Header for disc separator in multi-disc albums",
|
||
"placeholders": {
|
||
"discNumber": {
|
||
"type": "int",
|
||
"example": "1"
|
||
}
|
||
}
|
||
},
|
||
"recentTypeArtist": "Artista",
|
||
"@recentTypeArtist": {
|
||
"description": "Recent access item type - artist"
|
||
},
|
||
"recentTypeAlbum": "Álbum",
|
||
"@recentTypeAlbum": {
|
||
"description": "Recent access item type - album"
|
||
},
|
||
"recentTypeSong": "Canción",
|
||
"@recentTypeSong": {
|
||
"description": "Recent access item type - song/track"
|
||
},
|
||
"recentTypePlaylist": "Lista de reproducción",
|
||
"@recentTypePlaylist": {
|
||
"description": "Recent access item type - playlist"
|
||
},
|
||
"recentEmpty": "Aún no hay entradas recientes",
|
||
"@recentEmpty": {
|
||
"description": "Empty state text for recent access list"
|
||
},
|
||
"recentClearAllMessage": "¿Borrar toda la actividad reciente? No se eliminarán los archivos del historial de descargas y de música.",
|
||
"@recentClearAllMessage": {
|
||
"description": "Confirmation message before clearing all recent activity"
|
||
},
|
||
"recentShowAllDownloads": "Mostrar todas las descargas",
|
||
"@recentShowAllDownloads": {
|
||
"description": "Button label to unhide hidden downloads in recent access"
|
||
},
|
||
"recentPlaylistInfo": "Lista de reproducción: {name}",
|
||
"@recentPlaylistInfo": {
|
||
"description": "Snackbar message when tapping playlist in recent access",
|
||
"placeholders": {
|
||
"name": {
|
||
"type": "String",
|
||
"description": "Playlist name"
|
||
}
|
||
}
|
||
},
|
||
"discographyDownload": "Descargar Discografía",
|
||
"@discographyDownload": {
|
||
"description": "Button - download artist discography"
|
||
},
|
||
"discographyDownloadAll": "Descargar Todo",
|
||
"@discographyDownloadAll": {
|
||
"description": "Option - download entire discography"
|
||
},
|
||
"discographyDownloadAllSubtitle": "{count} pistas de {albumCount} lanzamientos",
|
||
"@discographyDownloadAllSubtitle": {
|
||
"description": "Subtitle showing total tracks and albums",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"albumCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"discographyAlbumsOnly": "Sólo álbumes",
|
||
"@discographyAlbumsOnly": {
|
||
"description": "Option - download only albums"
|
||
},
|
||
"discographyAlbumsOnlySubtitle": "{count} pistas de {albumCount} álbumes",
|
||
"@discographyAlbumsOnlySubtitle": {
|
||
"description": "Subtitle showing album tracks count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"albumCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"discographySinglesOnly": "Solo sencillos & mini-álbum",
|
||
"@discographySinglesOnly": {
|
||
"description": "Option - download only singles"
|
||
},
|
||
"discographySinglesOnlySubtitle": "{count} Pistas de {albumCount} sencillos",
|
||
"@discographySinglesOnlySubtitle": {
|
||
"description": "Subtitle showing singles tracks count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"albumCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"discographySelectAlbums": "Seleccionar álbumes...",
|
||
"@discographySelectAlbums": {
|
||
"description": "Option - manually select albums to download"
|
||
},
|
||
"discographySelectAlbumsSubtitle": "Elige álbumes o sencillos concretos",
|
||
"@discographySelectAlbumsSubtitle": {
|
||
"description": "Subtitle for select albums option"
|
||
},
|
||
"discographyFetchingTracks": "Cargando canciones...",
|
||
"@discographyFetchingTracks": {
|
||
"description": "Progress - fetching album tracks"
|
||
},
|
||
"discographyFetchingAlbum": "Cargando {current} de {total}...",
|
||
"@discographyFetchingAlbum": {
|
||
"description": "Progress - fetching specific album",
|
||
"placeholders": {
|
||
"current": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"discographySelectedCount": "{count} seleccionados",
|
||
"@discographySelectedCount": {
|
||
"description": "Selection count badge",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"discographyDownloadSelected": "Descargar seleccionados",
|
||
"@discographyDownloadSelected": {
|
||
"description": "Button - download selected albums"
|
||
},
|
||
"discographyAddedToQueue": "Se agregaron {count} canciones a la lista de espera",
|
||
"@discographyAddedToQueue": {
|
||
"description": "Snackbar - tracks added from discography",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"discographySkippedDownloaded": "{added} añadidas, {skipped} ya fueron descargadas",
|
||
"@discographySkippedDownloaded": {
|
||
"description": "Snackbar - with skipped tracks count",
|
||
"placeholders": {
|
||
"added": {
|
||
"type": "int"
|
||
},
|
||
"skipped": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"discographyNoAlbums": "No hay álbumes disponibles",
|
||
"@discographyNoAlbums": {
|
||
"description": "Error - no albums found for artist"
|
||
},
|
||
"discographyFailedToFetch": "Hubo un error para encontrar algunos álbumes",
|
||
"@discographyFailedToFetch": {
|
||
"description": "Error - some albums failed to load"
|
||
},
|
||
"sectionStorageAccess": "Permiso de almacenamiento",
|
||
"@sectionStorageAccess": {
|
||
"description": "Section header for storage access settings"
|
||
},
|
||
"allFilesAccess": "Acceso a todos los archivos",
|
||
"@allFilesAccess": {
|
||
"description": "Toggle for MANAGE_EXTERNAL_STORAGE permission"
|
||
},
|
||
"allFilesAccessEnabledSubtitle": "Puede escribir en cualquier carpeta",
|
||
"@allFilesAccessEnabledSubtitle": {
|
||
"description": "Subtitle when all files access is enabled"
|
||
},
|
||
"allFilesAccessDisabledSubtitle": "Limitado a carpetas de media",
|
||
"@allFilesAccessDisabledSubtitle": {
|
||
"description": "Subtitle when all files access is disabled"
|
||
},
|
||
"allFilesAccessDescription": "Habilite esto si tiene problemas de escritura al guardar en carpetas personalizadas. Android 13+ restringe el acceso a ciertas carpetas por defecto.",
|
||
"@allFilesAccessDescription": {
|
||
"description": "Description explaining when to enable all files access"
|
||
},
|
||
"allFilesAccessDeniedMessage": "Permiso denegado. Por favor habilite 'Acceso a todos los archivos' de manera manual en la configuración del sistema.",
|
||
"@allFilesAccessDeniedMessage": {
|
||
"description": "Message when permission is permanently denied"
|
||
},
|
||
"allFilesAccessDisabledMessage": "Acceso a todos los archivos desactivado. La aplicación usará acceso limitado al almacenamiento.",
|
||
"@allFilesAccessDisabledMessage": {
|
||
"description": "Snackbar message when user disables all files access"
|
||
},
|
||
"settingsLocalLibrary": "Librería local",
|
||
"@settingsLocalLibrary": {
|
||
"description": "Settings menu item - local library"
|
||
},
|
||
"settingsLocalLibrarySubtitle": "Escanear música y detectar duplicados",
|
||
"@settingsLocalLibrarySubtitle": {
|
||
"description": "Subtitle for local library settings"
|
||
},
|
||
"settingsCache": "Almacenamiento & caché",
|
||
"@settingsCache": {
|
||
"description": "Settings menu item - cache management"
|
||
},
|
||
"settingsCacheSubtitle": "Ver tamaño y borrar datos en caché",
|
||
"@settingsCacheSubtitle": {
|
||
"description": "Subtitle for cache management menu"
|
||
},
|
||
"libraryTitle": "Librería local",
|
||
"@libraryTitle": {
|
||
"description": "Library settings page title"
|
||
},
|
||
"libraryScanSettings": "Configuración de escaneo",
|
||
"@libraryScanSettings": {
|
||
"description": "Section header for scan settings"
|
||
},
|
||
"libraryEnableLocalLibrary": "Habilitar librería local",
|
||
"@libraryEnableLocalLibrary": {
|
||
"description": "Toggle to enable library scanning"
|
||
},
|
||
"libraryEnableLocalLibrarySubtitle": "Escanea y rastrea tu música existente",
|
||
"@libraryEnableLocalLibrarySubtitle": {
|
||
"description": "Subtitle for enable toggle"
|
||
},
|
||
"libraryFolder": "Carpeta de la librería",
|
||
"@libraryFolder": {
|
||
"description": "Folder selection setting"
|
||
},
|
||
"libraryFolderHint": "Toque para seleccionar la carpeta",
|
||
"@libraryFolderHint": {
|
||
"description": "Placeholder when no folder selected"
|
||
},
|
||
"libraryAddFolder": "Añadir carpeta de biblioteca",
|
||
"@libraryAddFolder": {
|
||
"description": "Action to add another local library source"
|
||
},
|
||
"libraryAddFolderSubtitle": "Almacenamiento interno, tarjeta SD, o otro drive externo",
|
||
"@libraryAddFolderSubtitle": {
|
||
"description": "Supported storage locations for local library sources"
|
||
},
|
||
"librarySourceOnline": "Online",
|
||
"@librarySourceOnline": {
|
||
"description": "Library source is connected and accessible"
|
||
},
|
||
"librarySourceOffline": "Offline. Reconecta el almacenamiento para restaurar estas pistas",
|
||
"@librarySourceOffline": {
|
||
"description": "Library source is temporarily disconnected"
|
||
},
|
||
"librarySourceDisabled": "Desactivado",
|
||
"@librarySourceDisabled": {
|
||
"description": "Library source has been disabled by the user"
|
||
},
|
||
"librarySourceScanCount": "{scanned} archivos de {total} escaneados ({progress}%)",
|
||
"@librarySourceScanCount": {
|
||
"description": "Live progress for one library folder scan",
|
||
"placeholders": {
|
||
"scanned": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
},
|
||
"progress": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"libraryExternalStorage": "Almacenamiento externo",
|
||
"@libraryExternalStorage": {
|
||
"description": "Label for a removable or external library source"
|
||
},
|
||
"libraryRemoveFolder": "Eliminar carpeta de biblioteca",
|
||
"@libraryRemoveFolder": {
|
||
"description": "Action to remove one indexed library source"
|
||
},
|
||
"libraryRemoveFolderMessage": "¿Deseas eliminar esta carpeta y sus pistas indexadas de SpotiFLAC Mobile? Los archivos de audio almacenados no se borrarán.",
|
||
"@libraryRemoveFolderMessage": {
|
||
"description": "Confirmation shown before removing a library source"
|
||
},
|
||
"libraryShowDuplicateIndicator": "Mostrar indicador de duplicados",
|
||
"@libraryShowDuplicateIndicator": {
|
||
"description": "Toggle for duplicate indicator in search"
|
||
},
|
||
"libraryShowDuplicateIndicatorSubtitle": "Mostrar al buscar canciones existentes",
|
||
"@libraryShowDuplicateIndicatorSubtitle": {
|
||
"description": "Subtitle for duplicate indicator toggle"
|
||
},
|
||
"libraryAutoScan": "Escaneo automático",
|
||
"@libraryAutoScan": {
|
||
"description": "Setting for automatic library scanning"
|
||
},
|
||
"libraryAutoScanSubtitle": "Escanear automáticamente tu librería por nuevos archivos",
|
||
"@libraryAutoScanSubtitle": {
|
||
"description": "Subtitle for auto scan setting"
|
||
},
|
||
"libraryAutoScanOff": "Apagado",
|
||
"@libraryAutoScanOff": {
|
||
"description": "Auto scan disabled"
|
||
},
|
||
"libraryAutoScanOnOpen": "Cada vez que la aplicación se abra",
|
||
"@libraryAutoScanOnOpen": {
|
||
"description": "Auto scan when app opens"
|
||
},
|
||
"libraryAutoScanDaily": "Diariamente",
|
||
"@libraryAutoScanDaily": {
|
||
"description": "Auto scan once per day"
|
||
},
|
||
"libraryAutoScanWeekly": "Semanalmente",
|
||
"@libraryAutoScanWeekly": {
|
||
"description": "Auto scan once per week"
|
||
},
|
||
"libraryActions": "Acciones",
|
||
"@libraryActions": {
|
||
"description": "Section header for library actions"
|
||
},
|
||
"libraryScan": "Escanear librería",
|
||
"@libraryScan": {
|
||
"description": "Button to start library scan"
|
||
},
|
||
"libraryScanSubtitle": "Escanear archivos de audio",
|
||
"@libraryScanSubtitle": {
|
||
"description": "Subtitle for scan button"
|
||
},
|
||
"libraryScanSelectFolderFirst": "Primero seleccione una carpeta",
|
||
"@libraryScanSelectFolderFirst": {
|
||
"description": "Message when trying to scan without folder"
|
||
},
|
||
"libraryCleanupMissingFiles": "Limpiar archivos faltantes",
|
||
"@libraryCleanupMissingFiles": {
|
||
"description": "Button to remove entries for missing files"
|
||
},
|
||
"libraryCleanupMissingFilesSubtitle": "Remover entradas para archivos que ya no existen",
|
||
"@libraryCleanupMissingFilesSubtitle": {
|
||
"description": "Subtitle for cleanup button"
|
||
},
|
||
"libraryClear": "Limpiar librería",
|
||
"@libraryClear": {
|
||
"description": "Button to clear all library entries"
|
||
},
|
||
"libraryClearSubtitle": "Remover todas las canciones escaneadas",
|
||
"@libraryClearSubtitle": {
|
||
"description": "Subtitle for clear button"
|
||
},
|
||
"libraryClearConfirmTitle": "Limpiar librería",
|
||
"@libraryClearConfirmTitle": {
|
||
"description": "Dialog title for clear confirmation"
|
||
},
|
||
"libraryClearConfirmMessage": "Esto removerá todas las canciones escaneadas de tu librería. Los archivos de música no serán eliminados.",
|
||
"@libraryClearConfirmMessage": {
|
||
"description": "Dialog message for clear confirmation"
|
||
},
|
||
"libraryAbout": "Acerca de la librería local",
|
||
"@libraryAbout": {
|
||
"description": "Section header for about info"
|
||
},
|
||
"libraryAboutDescription": "Escanea tu colección de música para detectar duplicados al descargar. Permite formatos FLAC, M4A, MP3, Opus, y OGG. La meta data será leída de los archivos cuando sea posible.",
|
||
"@libraryAboutDescription": {
|
||
"description": "Description of local library feature"
|
||
},
|
||
"libraryTracksUnit": "{count, plural, =1{pista} other{pistas}}",
|
||
"@libraryTracksUnit": {
|
||
"description": "Unit label for tracks count (without the number itself)",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"libraryFilesUnit": "{count, plural, =1{archivo} other{archivos}}",
|
||
"@libraryFilesUnit": {
|
||
"description": "Unit label for files count during library scanning",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"libraryLastScanned": "Último escaneo: {time}",
|
||
"@libraryLastScanned": {
|
||
"description": "Last scan time display",
|
||
"placeholders": {
|
||
"time": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"libraryLastScannedNever": "Nunca",
|
||
"@libraryLastScannedNever": {
|
||
"description": "Shown when library has never been scanned"
|
||
},
|
||
"libraryScanning": "Escaneando...",
|
||
"@libraryScanning": {
|
||
"description": "Status during scan"
|
||
},
|
||
"libraryScanFinalizing": "Finalizando la biblioteca...",
|
||
"@libraryScanFinalizing": {
|
||
"description": "Status shown after file scanning finishes but library persistence is still running"
|
||
},
|
||
"libraryScanProgress": "{progress}% de {total} archivos",
|
||
"@libraryScanProgress": {
|
||
"description": "Scan progress display",
|
||
"placeholders": {
|
||
"progress": {
|
||
"type": "String"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"libraryInLibrary": "En la biblioteca",
|
||
"@libraryInLibrary": {
|
||
"description": "Badge shown on tracks that exist in local library"
|
||
},
|
||
"libraryRemovedMissingFiles": "Eliminados {count} archivos faltantes de la biblioteca",
|
||
"@libraryRemovedMissingFiles": {
|
||
"description": "Snackbar after cleanup",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"libraryCleared": "Biblioteca vaciada",
|
||
"@libraryCleared": {
|
||
"description": "Snackbar after clearing library"
|
||
},
|
||
"libraryStorageAccessRequired": "Permiso de acceso al almacenamiento requerido",
|
||
"@libraryStorageAccessRequired": {
|
||
"description": "Dialog title for storage permission"
|
||
},
|
||
"libraryStorageAccessMessage": "SpotiFLAC necesita acceso al almacenamiento para escanear tu biblioteca musical. Por favor, concede el permiso en los ajustes.",
|
||
"@libraryStorageAccessMessage": {
|
||
"description": "Dialog message for storage permission"
|
||
},
|
||
"libraryFolderNotExist": "La carpeta seleccionada no existe",
|
||
"@libraryFolderNotExist": {
|
||
"description": "Error when folder doesn't exist"
|
||
},
|
||
"librarySourceDownloaded": "Descargado",
|
||
"@librarySourceDownloaded": {
|
||
"description": "Badge for tracks downloaded via SpotiFLAC"
|
||
},
|
||
"librarySourceLocal": "En el dispositivo",
|
||
"@librarySourceLocal": {
|
||
"description": "Badge for tracks from local library scan"
|
||
},
|
||
"libraryFilterAll": "Todos",
|
||
"@libraryFilterAll": {
|
||
"description": "Filter chip - show all library items"
|
||
},
|
||
"libraryFilterDownloaded": "Descargado",
|
||
"@libraryFilterDownloaded": {
|
||
"description": "Filter chip - show only downloaded items"
|
||
},
|
||
"libraryFilterLocal": "En el dispositivo",
|
||
"@libraryFilterLocal": {
|
||
"description": "Filter chip - show only local library items"
|
||
},
|
||
"libraryFilterTitle": "Filtros",
|
||
"@libraryFilterTitle": {
|
||
"description": "Filter bottom sheet title"
|
||
},
|
||
"libraryFilterReset": "Restablecer",
|
||
"@libraryFilterReset": {
|
||
"description": "Reset all filters button"
|
||
},
|
||
"libraryFilterApply": "Aplicar",
|
||
"@libraryFilterApply": {
|
||
"description": "Apply filters button"
|
||
},
|
||
"libraryFilterSource": "Fuente",
|
||
"@libraryFilterSource": {
|
||
"description": "Filter section - source type"
|
||
},
|
||
"libraryFilterQuality": "Calidad",
|
||
"@libraryFilterQuality": {
|
||
"description": "Filter section - audio quality"
|
||
},
|
||
"libraryFilterQualityHiRes": "Hi-Res (24-bit)",
|
||
"@libraryFilterQualityHiRes": {
|
||
"description": "Filter option - high resolution audio"
|
||
},
|
||
"libraryFilterQualityCD": "CD (16-bit)",
|
||
"@libraryFilterQualityCD": {
|
||
"description": "Filter option - CD quality audio"
|
||
},
|
||
"libraryFilterQualityLossy": "Con pérdida",
|
||
"@libraryFilterQualityLossy": {
|
||
"description": "Filter option - lossy compressed audio"
|
||
},
|
||
"libraryFilterFormat": "Formato",
|
||
"@libraryFilterFormat": {
|
||
"description": "Filter section - file format"
|
||
},
|
||
"libraryFilterMetadata": "Información",
|
||
"@libraryFilterMetadata": {
|
||
"description": "Filter section - metadata completeness"
|
||
},
|
||
"libraryFilterMetadataComplete": "Información completa",
|
||
"@libraryFilterMetadataComplete": {
|
||
"description": "Filter option - items with complete metadata"
|
||
},
|
||
"libraryFilterMetadataMissingAny": "Falta información (meta-data)",
|
||
"@libraryFilterMetadataMissingAny": {
|
||
"description": "Filter option - items missing any tracked metadata field"
|
||
},
|
||
"libraryFilterMetadataMissingYear": "Falta año",
|
||
"@libraryFilterMetadataMissingYear": {
|
||
"description": "Filter option - items missing release year/date"
|
||
},
|
||
"libraryFilterMetadataMissingGenre": "Falta género",
|
||
"@libraryFilterMetadataMissingGenre": {
|
||
"description": "Filter option - items missing genre"
|
||
},
|
||
"libraryFilterMetadataMissingAlbumArtist": "Falta artiste de álbum",
|
||
"@libraryFilterMetadataMissingAlbumArtist": {
|
||
"description": "Filter option - items missing album artist"
|
||
},
|
||
"libraryFilterSort": "Ordenar",
|
||
"@libraryFilterSort": {
|
||
"description": "Filter section - sort order"
|
||
},
|
||
"libraryFilterSortLatest": "Reciente",
|
||
"@libraryFilterSortLatest": {
|
||
"description": "Sort option - newest first"
|
||
},
|
||
"libraryFilterSortOldest": "Más antiguo",
|
||
"@libraryFilterSortOldest": {
|
||
"description": "Sort option - oldest first"
|
||
},
|
||
"libraryFilterSortAlbumAsc": "Álbum (A-Z)",
|
||
"@libraryFilterSortAlbumAsc": {
|
||
"description": "Sort option - album ascending"
|
||
},
|
||
"libraryFilterSortAlbumDesc": "Álbum (Z-A)",
|
||
"@libraryFilterSortAlbumDesc": {
|
||
"description": "Sort option - album descending"
|
||
},
|
||
"libraryFilterSortGenreAsc": "Género (A-Z)",
|
||
"@libraryFilterSortGenreAsc": {
|
||
"description": "Sort option - genre ascending"
|
||
},
|
||
"libraryFilterSortGenreDesc": "Género (Z-A)",
|
||
"@libraryFilterSortGenreDesc": {
|
||
"description": "Sort option - genre descending"
|
||
},
|
||
"timeJustNow": "Hace un momento",
|
||
"@timeJustNow": {
|
||
"description": "Relative time - less than a minute ago"
|
||
},
|
||
"timeMinutesAgo": "{count, plural, =1{hace 1 minuto} other{{count} minutos atrás}}",
|
||
"@timeMinutesAgo": {
|
||
"description": "Relative time - minutes ago",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"timeHoursAgo": "{count, plural, =1{1 hora atrás} other{{count} horas atrás}}",
|
||
"@timeHoursAgo": {
|
||
"description": "Relative time - hours ago",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"tutorialWelcomeTitle": "¡Bienvenido a SpotiFLAC Mobile!",
|
||
"@tutorialWelcomeTitle": {
|
||
"description": "Tutorial welcome page title"
|
||
},
|
||
"tutorialWelcomeDesc": "Aprende a buscar música con extensiones, a elegir la calidad que desees y a administrar las descargas en SpotiFLAC Mobile.",
|
||
"@tutorialWelcomeDesc": {
|
||
"description": "Tutorial welcome page description"
|
||
},
|
||
"tutorialWelcomeTip1": "Busca con una extensión instalada o pega un enlace de música compatible",
|
||
"@tutorialWelcomeTip1": {
|
||
"description": "Tutorial welcome tip 1"
|
||
},
|
||
"tutorialWelcomeTip2": "Elige entre las calidades de audio que ofrece tu proveedor de descargas",
|
||
"@tutorialWelcomeTip2": {
|
||
"description": "Tutorial welcome tip 2"
|
||
},
|
||
"tutorialWelcomeTip3": "Incorpora metadatos, portadas, letras e información sobre el lanzamiento automáticamente",
|
||
"@tutorialWelcomeTip3": {
|
||
"description": "Tutorial welcome tip 3"
|
||
},
|
||
"tutorialSearchTitle": "Buscando música",
|
||
"@tutorialSearchTitle": {
|
||
"description": "Tutorial search page title"
|
||
},
|
||
"tutorialSearchDesc": "Busca con la extensión que hayas seleccionado o pega un enlace de música compatible.",
|
||
"@tutorialSearchDesc": {
|
||
"description": "Tutorial search page description"
|
||
},
|
||
"tutorialDownloadTitle": "Descargando música",
|
||
"@tutorialDownloadTitle": {
|
||
"description": "Tutorial download page title"
|
||
},
|
||
"tutorialDownloadDesc": "Elige una calidad disponible, inicia la descarga y sigue su avance en la fila.",
|
||
"@tutorialDownloadDesc": {
|
||
"description": "Tutorial download page description"
|
||
},
|
||
"tutorialLibraryTitle": "Tu biblioteca",
|
||
"@tutorialLibraryTitle": {
|
||
"description": "Tutorial library page title"
|
||
},
|
||
"tutorialLibraryDesc": "La música descargada y escaneada localmente se organiza en tu biblioteca.",
|
||
"@tutorialLibraryDesc": {
|
||
"description": "Tutorial library page description"
|
||
},
|
||
"tutorialLibraryTip1": "Administra las descargas activas, pendientes y completadas desde la cola de la Biblioteca",
|
||
"@tutorialLibraryTip1": {
|
||
"description": "Tutorial library tip 1"
|
||
},
|
||
"tutorialLibraryTip2": "Toca una canción para reproducirla con el reproductor integrado",
|
||
"@tutorialLibraryTip2": {
|
||
"description": "Tutorial library tip 2"
|
||
},
|
||
"tutorialLibraryTip3": "Explora canciones, álbumes y listas de reproducción en vista de lista o de cuadrícula",
|
||
"@tutorialLibraryTip3": {
|
||
"description": "Tutorial library tip 3"
|
||
},
|
||
"tutorialExtensionsTitle": "Extensiones",
|
||
"@tutorialExtensionsTitle": {
|
||
"description": "Tutorial extensions page title"
|
||
},
|
||
"tutorialExtensionsDesc": "Las extensiones añaden funciones de búsqueda, descarga, metadatos, letras de canciones y otras integraciones.",
|
||
"@tutorialExtensionsDesc": {
|
||
"description": "Tutorial extensions page description"
|
||
},
|
||
"tutorialExtensionsTip1": "Navega por la pestaña de repo para descubrir extensiones",
|
||
"@tutorialExtensionsTip1": {
|
||
"description": "Tutorial extensions tip 1"
|
||
},
|
||
"tutorialExtensionsTip2": "Selecciona proveedores para búsquedas, descargas, metadatos y opciones alternativas",
|
||
"@tutorialExtensionsTip2": {
|
||
"description": "Tutorial extensions tip 2"
|
||
},
|
||
"tutorialExtensionsTip3": "Conecta las cuentas cuando sea necesario y mantén las extensiones actualizadas",
|
||
"@tutorialExtensionsTip3": {
|
||
"description": "Tutorial extensions tip 3"
|
||
},
|
||
"tutorialSettingsTitle": "Personaliza tu experiencia",
|
||
"@tutorialSettingsTitle": {
|
||
"description": "Tutorial settings page title"
|
||
},
|
||
"tutorialSettingsDesc": "Fine-tune downloads, playback, Library behavior, appearance, and storage.",
|
||
"@tutorialSettingsDesc": {
|
||
"description": "Tutorial settings page description"
|
||
},
|
||
"tutorialSettingsTip1": "Cambia la ubicación de las descargas y la organización de las carpetas",
|
||
"@tutorialSettingsTip1": {
|
||
"description": "Tutorial settings tip 1"
|
||
},
|
||
"tutorialSettingsTip2": "Set quality, concurrency, filenames, and conversion preferences",
|
||
"@tutorialSettingsTip2": {
|
||
"description": "Tutorial settings tip 2"
|
||
},
|
||
"tutorialSettingsTip3": "Personaliza el tema y el aspecto de la aplicación",
|
||
"@tutorialSettingsTip3": {
|
||
"description": "Tutorial settings tip 3"
|
||
},
|
||
"tutorialReadyMessage": "You're ready. Select your extensions, then search or paste a supported link.",
|
||
"@tutorialReadyMessage": {
|
||
"description": "Tutorial completion message"
|
||
},
|
||
"libraryForceFullScan": "Forzar análisis completo",
|
||
"@libraryForceFullScan": {
|
||
"description": "Button to force a complete rescan of library"
|
||
},
|
||
"libraryForceFullScanSubtitle": "Volver a escanear archivos, ignorando caché",
|
||
"@libraryForceFullScanSubtitle": {
|
||
"description": "Subtitle for force full scan button"
|
||
},
|
||
"cleanupOrphanedDownloads": "Borrar descargar huérfanas",
|
||
"@cleanupOrphanedDownloads": {
|
||
"description": "Button to remove history entries for deleted files"
|
||
},
|
||
"cleanupOrphanedDownloadsSubtitle": "Borrar historial de archivos que no existen",
|
||
"@cleanupOrphanedDownloadsSubtitle": {
|
||
"description": "Subtitle for orphaned cleanup button"
|
||
},
|
||
"cleanupOrphanedDownloadsResult": "Se removieron {count} entradas huérfanas del historial.",
|
||
"@cleanupOrphanedDownloadsResult": {
|
||
"description": "Snackbar after orphan cleanup",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"cleanupOrphanedDownloadsNone": "Sin entradas huérfanas encontradas",
|
||
"@cleanupOrphanedDownloadsNone": {
|
||
"description": "Snackbar when no orphans found"
|
||
},
|
||
"cacheTitle": "Almacenamiento y caché",
|
||
"@cacheTitle": {
|
||
"description": "Cache management page title"
|
||
},
|
||
"cacheSummaryTitle": "Resumen de la caché",
|
||
"@cacheSummaryTitle": {
|
||
"description": "Heading for cache summary card"
|
||
},
|
||
"cacheSummarySubtitle": "Limpiar la caché no eliminará los archivos de música descargados.",
|
||
"@cacheSummarySubtitle": {
|
||
"description": "Helper text for cache summary card"
|
||
},
|
||
"cacheEstimatedTotal": "Uso estimado de caché: {size}",
|
||
"@cacheEstimatedTotal": {
|
||
"description": "Total cache size shown in summary",
|
||
"placeholders": {
|
||
"size": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"cacheSectionStorage": "Datos almacenados en caché",
|
||
"@cacheSectionStorage": {
|
||
"description": "Section header for cache entries"
|
||
},
|
||
"cacheSectionMaintenance": "Mantenimiento",
|
||
"@cacheSectionMaintenance": {
|
||
"description": "Section header for cleanup actions"
|
||
},
|
||
"cacheAppDirectory": "Directorio de caché",
|
||
"@cacheAppDirectory": {
|
||
"description": "Cache item title for app cache directory"
|
||
},
|
||
"cacheAppDirectoryDesc": "Respuestas HTTP, datos WebView y otros datos temporales.",
|
||
"@cacheAppDirectoryDesc": {
|
||
"description": "Description of what app cache directory contains"
|
||
},
|
||
"cacheTempDirectory": "Directorio temporal",
|
||
"@cacheTempDirectory": {
|
||
"description": "Cache item title for temporary files directory"
|
||
},
|
||
"cacheTempDirectoryDesc": "Archivos temporales de descargas y conversión de audio.",
|
||
"@cacheTempDirectoryDesc": {
|
||
"description": "Description of what temporary directory contains"
|
||
},
|
||
"cacheCoverImage": "Caché de imágenes de portada",
|
||
"@cacheCoverImage": {
|
||
"description": "Cache item title for persistent cover images"
|
||
},
|
||
"cacheCoverImageDesc": "Álbum descargado y portada de pista. Se volverá a descargar cuando se vea.",
|
||
"@cacheCoverImageDesc": {
|
||
"description": "Description of what cover image cache contains"
|
||
},
|
||
"cacheLibraryCover": "Caché de portada (biblioteca)",
|
||
"@cacheLibraryCover": {
|
||
"description": "Cache item title for local library cover art images"
|
||
},
|
||
"cacheLibraryCoverDesc": "Portada extraída de archivos locales. Se extraerá de nuevo en el próximo escaneo.",
|
||
"@cacheLibraryCoverDesc": {
|
||
"description": "Description of what library cover cache contains"
|
||
},
|
||
"libraryPlaybackNormalization": "Normalización de volumen",
|
||
"@libraryPlaybackNormalization": {
|
||
"description": "Toggle title for ReplayGain playback normalization in the built-in player"
|
||
},
|
||
"libraryPlaybackNormalizationSubtitle": "Equaliza el volumen entre las pistas utilizando sus etiquetas ReplayGain o R128, cuando estén presentes",
|
||
"@libraryPlaybackNormalizationSubtitle": {
|
||
"description": "Subtitle explaining playback volume normalization"
|
||
},
|
||
"cacheAudioAnalysis": "Caché de análisis de audio",
|
||
"@cacheAudioAnalysis": {
|
||
"description": "Cache item title for saved audio analysis results"
|
||
},
|
||
"cacheAudioAnalysisDesc": "Espectrogramas y resultados de análisis guardados. Se volverán a analizar la próxima vez que se abra el programa.",
|
||
"@cacheAudioAnalysisDesc": {
|
||
"description": "Description of what audio analysis cache contains"
|
||
},
|
||
"cacheExploreFeed": "Explorar caché de inicio",
|
||
"@cacheExploreFeed": {
|
||
"description": "Cache item title for explore home feed cache"
|
||
},
|
||
"cacheExploreFeedDesc": "Explorar contenido de pestaña (nuevas versiones, tendencias). Se actualiza en cada visita.",
|
||
"@cacheExploreFeedDesc": {
|
||
"description": "Description of what explore feed cache contains"
|
||
},
|
||
"cacheTrackLookup": "Caché de búsqueda",
|
||
"@cacheTrackLookup": {
|
||
"description": "Cache item title for track ID lookup cache"
|
||
},
|
||
"cacheTrackLookupDesc": "Búsqueda de ID de Spotify/Deezer. Limpiar podría ralentizar algunas búsquedas.",
|
||
"@cacheTrackLookupDesc": {
|
||
"description": "Description of what track lookup cache contains"
|
||
},
|
||
"cacheCleanupUnusedDesc": "Borre el historial de archivos huérfanos y las entradas en la biblioteca.",
|
||
"@cacheCleanupUnusedDesc": {
|
||
"description": "Description of what cleanup unused data does"
|
||
},
|
||
"cacheNoData": "No hay datos en caché",
|
||
"@cacheNoData": {
|
||
"description": "Label when cache category has no data"
|
||
},
|
||
"cacheSizeWithFiles": "{size} en {count} archivos",
|
||
"@cacheSizeWithFiles": {
|
||
"description": "Cache size and file count",
|
||
"placeholders": {
|
||
"size": {
|
||
"type": "String"
|
||
},
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"cacheSizeOnly": "{size}",
|
||
"@cacheSizeOnly": {
|
||
"description": "Cache size only",
|
||
"placeholders": {
|
||
"size": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"cacheEntries": "{count} registros",
|
||
"@cacheEntries": {
|
||
"description": "Track cache entry count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"cacheClearSuccess": "Limpiado: {target}",
|
||
"@cacheClearSuccess": {
|
||
"description": "Snackbar after clearing selected cache",
|
||
"placeholders": {
|
||
"target": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"cacheClearConfirmTitle": "¿Limpiar caché?",
|
||
"@cacheClearConfirmTitle": {
|
||
"description": "Dialog title before clearing one cache category"
|
||
},
|
||
"cacheClearConfirmMessage": "Esto borrará los datos en caché para {target}. Los archivos descargados no se eliminan.",
|
||
"@cacheClearConfirmMessage": {
|
||
"description": "Dialog message before clearing selected cache",
|
||
"placeholders": {
|
||
"target": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"cacheClearAllConfirmTitle": "¿Quieres limpiar todas las cachés?",
|
||
"@cacheClearAllConfirmTitle": {
|
||
"description": "Dialog title before clearing all caches"
|
||
},
|
||
"cacheClearAllConfirmMessage": "Esto borrará todo el caché de categorías en esta página. Los archivos descargados no se eliminan.",
|
||
"@cacheClearAllConfirmMessage": {
|
||
"description": "Dialog message before clearing all caches"
|
||
},
|
||
"cacheClearAll": "Borrar todo el caché",
|
||
"@cacheClearAll": {
|
||
"description": "Button label to clear all caches"
|
||
},
|
||
"cacheCleanupUnused": "Limpiar datos sin usar",
|
||
"@cacheCleanupUnused": {
|
||
"description": "Action title for cleaning unused entries"
|
||
},
|
||
"cacheCleanupUnusedSubtitle": "Borrar historial de descargas huérfanas y entradas faltantes en biblioteca",
|
||
"@cacheCleanupUnusedSubtitle": {
|
||
"description": "Subtitle for cleanup unused data action"
|
||
},
|
||
"cacheCleanupResult": "Limpieza copletada: {downloadCount} descargas huéranas, {libraryCount} entradas faltantes de librería",
|
||
"@cacheCleanupResult": {
|
||
"description": "Snackbar after unused data cleanup",
|
||
"placeholders": {
|
||
"downloadCount": {
|
||
"type": "int"
|
||
},
|
||
"libraryCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"cacheRefreshStats": "Actualizar estadisticas",
|
||
"@cacheRefreshStats": {
|
||
"description": "Button label to refresh cache statistics"
|
||
},
|
||
"trackSaveCoverArt": "Guardar portada",
|
||
"@trackSaveCoverArt": {
|
||
"description": "Menu action - save album cover art as file"
|
||
},
|
||
"trackSaveLyrics": "Guardar letra (.lrc)",
|
||
"@trackSaveLyrics": {
|
||
"description": "Menu action - save lyrics as .lrc file"
|
||
},
|
||
"trackSaveLyricsProgress": "Guardando letra...",
|
||
"@trackSaveLyricsProgress": {
|
||
"description": "Snackbar while saving lyrics to file"
|
||
},
|
||
"trackReEnrich": "Volver a enriquecer",
|
||
"@trackReEnrich": {
|
||
"description": "Menu action - re-embed metadata into audio file"
|
||
},
|
||
"trackReEnrichOnlineSubtitle": "Buscar información en línea y incrustar al archivo",
|
||
"@trackReEnrichOnlineSubtitle": {
|
||
"description": "Subtitle for re-enrich metadata action for local items"
|
||
},
|
||
"trackReEnrichBatchSubtitle": "Choose an online or manual update, then review every change before writing",
|
||
"@trackReEnrichBatchSubtitle": {
|
||
"description": "Subtitle for batch metadata update choices"
|
||
},
|
||
"trackReEnrichFieldCover": "Carátula",
|
||
"@trackReEnrichFieldCover": {
|
||
"description": "Checkbox label for cover art field in re-enrich"
|
||
},
|
||
"trackReEnrichFieldLyrics": "Letra",
|
||
"@trackReEnrichFieldLyrics": {
|
||
"description": "Checkbox label for lyrics field in re-enrich"
|
||
},
|
||
"trackReEnrichFieldBasicTags": "Álbum, Artista del Álbum",
|
||
"@trackReEnrichFieldBasicTags": {
|
||
"description": "Checkbox label for basic tags in re-enrich (title/artist are never overwritten)"
|
||
},
|
||
"trackReEnrichFieldTrackInfo": "Número de pista(s) y disco(s).",
|
||
"@trackReEnrichFieldTrackInfo": {
|
||
"description": "Checkbox label for track info in re-enrich"
|
||
},
|
||
"trackReEnrichFieldReleaseInfo": "Fecha e ISRC",
|
||
"@trackReEnrichFieldReleaseInfo": {
|
||
"description": "Checkbox label for release info in re-enrich"
|
||
},
|
||
"trackReEnrichFieldExtra": "Género, etiqueta, derechos de autor",
|
||
"@trackReEnrichFieldExtra": {
|
||
"description": "Checkbox label for extra metadata in re-enrich"
|
||
},
|
||
"trackReEnrichSelectAll": "Seleccionar todos",
|
||
"@trackReEnrichSelectAll": {
|
||
"description": "Select all fields checkbox in re-enrich"
|
||
},
|
||
"trackReEnrichModeIsrc": "ISRC only",
|
||
"@trackReEnrichModeIsrc": {
|
||
"description": "Batch metadata mode that only writes ISRC"
|
||
},
|
||
"trackReEnrichModeIsrcSubtitle": "Find and add the recording identifier without changing other tags",
|
||
"@trackReEnrichModeIsrcSubtitle": {
|
||
"description": "Explanation for the ISRC-only batch metadata mode"
|
||
},
|
||
"trackReEnrichModeMissing": "Fill missing tags",
|
||
"@trackReEnrichModeMissing": {
|
||
"description": "Batch metadata mode that fills only empty tags"
|
||
},
|
||
"trackReEnrichModeMissingSubtitle": "Keep existing values and fill only fields that are empty",
|
||
"@trackReEnrichModeMissingSubtitle": {
|
||
"description": "Explanation for the fill-missing batch metadata mode"
|
||
},
|
||
"trackReEnrichModeReplace": "Update selected tags",
|
||
"@trackReEnrichModeReplace": {
|
||
"description": "Batch metadata mode that replaces selected tag groups"
|
||
},
|
||
"trackReEnrichModeReplaceSubtitle": "Choose which existing values may be replaced by online metadata",
|
||
"@trackReEnrichModeReplaceSubtitle": {
|
||
"description": "Explanation for the selected-tag batch metadata mode"
|
||
},
|
||
"trackReEnrichModeManual": "Set common values",
|
||
"@trackReEnrichModeManual": {
|
||
"description": "Batch metadata mode that applies shared values to every selected track"
|
||
},
|
||
"trackReEnrichModeManualSubtitle": "Apply the same values to every selected track",
|
||
"@trackReEnrichModeManualSubtitle": {
|
||
"description": "Explanation for the manual shared-value batch metadata mode"
|
||
},
|
||
"trackReEnrichManualFieldsTitle": "Values to apply",
|
||
"@trackReEnrichManualFieldsTitle": {
|
||
"description": "Heading above manual batch metadata inputs"
|
||
},
|
||
"trackReEnrichManualHint": "Leave a field empty to keep its current value. Track titles, numbers, and ISRCs stay unchanged.",
|
||
"@trackReEnrichManualHint": {
|
||
"description": "Safety explanation for manual batch metadata inputs"
|
||
},
|
||
"trackReEnrichFieldsTitle": "Tags to update",
|
||
"@trackReEnrichFieldsTitle": {
|
||
"description": "Heading above batch re-enrich field checkboxes"
|
||
},
|
||
"trackReEnrichReview": "Review changes",
|
||
"@trackReEnrichReview": {
|
||
"description": "Button that searches metadata and opens the batch change review"
|
||
},
|
||
"trackReEnrichReviewTitle": "Review metadata changes",
|
||
"@trackReEnrichReviewTitle": {
|
||
"description": "Title of the batch metadata review sheet"
|
||
},
|
||
"trackReEnrichReviewSubtitle": "{changeCount} proposed changes across {trackCount} tracks",
|
||
"@trackReEnrichReviewSubtitle": {
|
||
"description": "Summary shown above proposed batch metadata changes",
|
||
"placeholders": {
|
||
"changeCount": {
|
||
"type": "int"
|
||
},
|
||
"trackCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"trackReEnrichNoChanges": "No metadata changes were found for the selected tracks.",
|
||
"@trackReEnrichNoChanges": {
|
||
"description": "Message when batch metadata preview has no proposed changes"
|
||
},
|
||
"trackReEnrichApplyChanges": "Apply changes",
|
||
"@trackReEnrichApplyChanges": {
|
||
"description": "Confirmation button in the batch metadata review sheet"
|
||
},
|
||
"trackReEnrichRefreshOnline": "Refresh from online",
|
||
"@trackReEnrichRefreshOnline": {
|
||
"description": "Proposed value when lyrics will be refreshed during re-enrich"
|
||
},
|
||
"trackEditMetadata": "Editar información",
|
||
"@trackEditMetadata": {
|
||
"description": "Menu action - edit embedded metadata"
|
||
},
|
||
"trackCoverSaved": "Carátula guardada en {fileName}",
|
||
"@trackCoverSaved": {
|
||
"description": "Snackbar after cover art saved",
|
||
"placeholders": {
|
||
"fileName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackCoverNoSource": "No hay fuente de portadas disponible",
|
||
"@trackCoverNoSource": {
|
||
"description": "Snackbar when no cover art URL or embedded cover"
|
||
},
|
||
"trackLyricsSaved": "Letra guardada en {fileName}",
|
||
"@trackLyricsSaved": {
|
||
"description": "Snackbar after lyrics saved",
|
||
"placeholders": {
|
||
"fileName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackReEnrichProgress": "Obteniendo información...",
|
||
"@trackReEnrichProgress": {
|
||
"description": "Snackbar while re-enriching metadata"
|
||
},
|
||
"trackReEnrichSearching": "Buscando información en línea...",
|
||
"@trackReEnrichSearching": {
|
||
"description": "Snackbar while searching metadata from internet for local items"
|
||
},
|
||
"trackReEnrichPreparing": "Preparing metadata changes...",
|
||
"@trackReEnrichPreparing": {
|
||
"description": "Progress message while preparing manual batch metadata changes"
|
||
},
|
||
"trackReEnrichSuccess": "Información ",
|
||
"trackReEnrichMetadataSaved": "Metadata saved",
|
||
"trackReEnrichLyricsUpdated": "Lyrics updated",
|
||
"trackReEnrichLyricsPreserved": "No new lyrics found; existing lyrics kept",
|
||
"trackReEnrichLyricsDisabled": "Lyrics not updated: lyric downloading is disabled in Settings",
|
||
"@trackReEnrichSuccess": {
|
||
"description": "Snackbar after successful re-enrichment"
|
||
},
|
||
"trackReEnrichFfmpegFailed": "Información incrustada con FFmpeg falló",
|
||
"@trackReEnrichFfmpegFailed": {
|
||
"description": "Snackbar when FFmpeg embed fails for MP3/Opus"
|
||
},
|
||
"queueFlacAction": "Encolar FLAC",
|
||
"@queueFlacAction": {
|
||
"description": "Action/button label for queueing FLAC redownloads for local tracks"
|
||
},
|
||
"queueFlacConfirmMessage": "Buscar coincidencias en línea para las pistas seleccionadas y en cola de descargas\n\nArchivos existentes no serán afectados o borrados.\n\nSolo coincidencia de alta confianza serán puestas automáticamente.\n\n{count} seleccionado",
|
||
"@queueFlacConfirmMessage": {
|
||
"description": "Confirmation dialog body before queueing FLAC redownloads for local tracks",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"queueFlacNoReliableMatches": "Sin coincidencias en línea de confianza",
|
||
"@queueFlacNoReliableMatches": {
|
||
"description": "Snackbar when no safe FLAC redownload matches were found"
|
||
},
|
||
"queueFlacQueuedWithSkipped": "Añadido {addedCount} pistas a la cola, omitidas {skippedCount}",
|
||
"@queueFlacQueuedWithSkipped": {
|
||
"description": "Snackbar when some selected local tracks were queued for FLAC redownload and some were skipped",
|
||
"placeholders": {
|
||
"addedCount": {
|
||
"type": "int"
|
||
},
|
||
"skippedCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"trackSaveFailed": "Error: {error}",
|
||
"@trackSaveFailed": {
|
||
"description": "Snackbar when save operation fails",
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackConvertFormat": "Convertir formato",
|
||
"@trackConvertFormat": {
|
||
"description": "Menu item - convert audio format"
|
||
},
|
||
"trackConvertTitle": "Convertir audio",
|
||
"@trackConvertTitle": {
|
||
"description": "Title of convert bottom sheet"
|
||
},
|
||
"trackConvertTargetFormat": "Formato de destino",
|
||
"@trackConvertTargetFormat": {
|
||
"description": "Label for format selection"
|
||
},
|
||
"trackConvertBitrate": "Tasa de bits",
|
||
"@trackConvertBitrate": {
|
||
"description": "Label for bitrate selection"
|
||
},
|
||
"trackConvertKeepOriginal": "Mantener archivo original",
|
||
"@trackConvertKeepOriginal": {
|
||
"description": "Toggle to preserve the source file during conversion"
|
||
},
|
||
"trackConvertKeepOriginalDescription": "Agrega el archivo convertido como una entrada independiente en la biblioteca",
|
||
"@trackConvertKeepOriginalDescription": {
|
||
"description": "Description for preserving the source file during conversion"
|
||
},
|
||
"trackConvertConfirmTitle": "Confirmar conversión",
|
||
"@trackConvertConfirmTitle": {
|
||
"description": "Confirmation dialog title"
|
||
},
|
||
"trackConvertConfirmMessage": "¿Convertir desde {sourceFormat} a {targetFormat} a {bitrate}?",
|
||
"@trackConvertConfirmMessage": {
|
||
"description": "Confirmation dialog message",
|
||
"placeholders": {
|
||
"sourceFormat": {
|
||
"type": "String"
|
||
},
|
||
"targetFormat": {
|
||
"type": "String"
|
||
},
|
||
"bitrate": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackConvertConfirmMessageLossless": "Convertir de {sourceFormat} a {targetFormat}? \n(Sin pérdidas)\n\nEl archivo original será eliminado después de la conversión.",
|
||
"@trackConvertConfirmMessageLossless": {
|
||
"description": "Confirmation dialog message for lossless-to-lossless conversion",
|
||
"placeholders": {
|
||
"sourceFormat": {
|
||
"type": "String"
|
||
},
|
||
"targetFormat": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackConvertConfirmKeepOriginal": "¿Convertir desde {sourceFormat} a {targetFormat}?\n\nEl archivo original se conservará y el archivo convertido se agregará como una entrada independiente en la biblioteca.\n",
|
||
"@trackConvertConfirmKeepOriginal": {
|
||
"description": "Confirmation message when the source file will be preserved",
|
||
"placeholders": {
|
||
"sourceFormat": {
|
||
"type": "String"
|
||
},
|
||
"targetFormat": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackConvertLosslessHint": "Conversión sin pérdidas — sin pérdida de calidad",
|
||
"@trackConvertLosslessHint": {
|
||
"description": "Hint shown when converting between lossless formats"
|
||
},
|
||
"trackConvertConverting": "Convirtiendo Audio...",
|
||
"@trackConvertConverting": {
|
||
"description": "Snackbar while converting"
|
||
},
|
||
"trackConvertSuccess": "Convertido a {format} con éxito",
|
||
"@trackConvertSuccess": {
|
||
"description": "Snackbar after successful conversion",
|
||
"placeholders": {
|
||
"format": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackConvertFailed": "La conversión ha fallado",
|
||
"@trackConvertFailed": {
|
||
"description": "Snackbar when conversion fails"
|
||
},
|
||
"cueSplitTitle": "Dividir hoja CUE",
|
||
"@cueSplitTitle": {
|
||
"description": "Title for CUE split bottom sheet"
|
||
},
|
||
"cueSplitAlbum": "Álbum: {album}",
|
||
"@cueSplitAlbum": {
|
||
"description": "Album name in CUE split sheet",
|
||
"placeholders": {
|
||
"album": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"cueSplitArtist": "Artista: {artist}",
|
||
"@cueSplitArtist": {
|
||
"description": "Artist name in CUE split sheet",
|
||
"placeholders": {
|
||
"artist": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"cueSplitTrackCount": "{count} pistas",
|
||
"@cueSplitTrackCount": {
|
||
"description": "Number of tracks in CUE sheet",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"cueSplitConfirmTitle": "Dividir álbum CUE",
|
||
"@cueSplitConfirmTitle": {
|
||
"description": "CUE split confirmation dialog title"
|
||
},
|
||
"cueSplitConfirmMessage": "¿Dividir \"{album}\" en archivos FLAC individuales {count}?\n\nLos archivos se guardarán en el mismo directorio.",
|
||
"@cueSplitConfirmMessage": {
|
||
"description": "CUE split confirmation dialog message",
|
||
"placeholders": {
|
||
"album": {
|
||
"type": "String"
|
||
},
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"cueSplitSplitting": "Dividiendo la hoja CUE... ({current}/{total})",
|
||
"@cueSplitSplitting": {
|
||
"description": "Snackbar while splitting CUE",
|
||
"placeholders": {
|
||
"current": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"cueSplitSuccess": "Se dividió correctamente en {count} pistas",
|
||
"@cueSplitSuccess": {
|
||
"description": "Snackbar after successful CUE split",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"cueSplitFailed": "Fallo al dividir CUE",
|
||
"@cueSplitFailed": {
|
||
"description": "Snackbar when CUE split fails"
|
||
},
|
||
"cueSplitNoAudioFile": "No se encontró el archivo de audio para esta hoja CUE",
|
||
"@cueSplitNoAudioFile": {
|
||
"description": "Error when CUE audio file is missing"
|
||
},
|
||
"cueSplitButton": "Dividir en pistas",
|
||
"@cueSplitButton": {
|
||
"description": "Button text to start CUE splitting"
|
||
},
|
||
"actionCreate": "Crear",
|
||
"@actionCreate": {
|
||
"description": "Generic action button - create"
|
||
},
|
||
"collectionFoldersTitle": "Mis carpetas",
|
||
"@collectionFoldersTitle": {
|
||
"description": "Library section title for custom folders"
|
||
},
|
||
"collectionWishlist": "Lista de deseos",
|
||
"@collectionWishlist": {
|
||
"description": "Custom folder for saved tracks to download later"
|
||
},
|
||
"collectionLoved": "Me gusta",
|
||
"@collectionLoved": {
|
||
"description": "Custom folder for favorite tracks"
|
||
},
|
||
"collectionFavoriteArtists": "Artistas favoritos",
|
||
"@collectionFavoriteArtists": {
|
||
"description": "Custom folder for favorite artists"
|
||
},
|
||
"collectionPlaylist": "Lista de reproducción",
|
||
"@collectionPlaylist": {
|
||
"description": "Single playlist label"
|
||
},
|
||
"collectionAddToPlaylist": "Añadir a la lista",
|
||
"@collectionAddToPlaylist": {
|
||
"description": "Action to add a track to user playlist"
|
||
},
|
||
"collectionCreatePlaylist": "Crear lista de reproducción",
|
||
"@collectionCreatePlaylist": {
|
||
"description": "Action to create a new playlist"
|
||
},
|
||
"collectionNoPlaylistsYet": "Aún no hay listas de reproducción",
|
||
"@collectionNoPlaylistsYet": {
|
||
"description": "Empty state title when user has no playlists"
|
||
},
|
||
"collectionPlaylistTracks": "{count, plural, =1{1 pista} other{{count} pistas}}",
|
||
"@collectionPlaylistTracks": {
|
||
"description": "Track count label for custom playlists",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"collectionArtistCount": "{count, plural, =1{1 artista} other{{count} artistas}}",
|
||
"@collectionArtistCount": {
|
||
"description": "Artist count label for favorite artists",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"collectionAddedToPlaylist": "Añadida a \"{playlistName}\"",
|
||
"@collectionAddedToPlaylist": {
|
||
"description": "Snackbar after adding track to playlist",
|
||
"placeholders": {
|
||
"playlistName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"collectionAlreadyInPlaylist": "Ya está en \"{playlistName}\"",
|
||
"@collectionAlreadyInPlaylist": {
|
||
"description": "Snackbar when track already exists in playlist",
|
||
"placeholders": {
|
||
"playlistName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"collectionPlaylistNameHint": "Nombre de la lista de reproducción",
|
||
"@collectionPlaylistNameHint": {
|
||
"description": "Hint text for playlist name input"
|
||
},
|
||
"collectionPlaylistNameRequired": "El nombre de la lista de reproducción es obligatorio",
|
||
"@collectionPlaylistNameRequired": {
|
||
"description": "Validation error for empty playlist name"
|
||
},
|
||
"collectionRenamePlaylist": "Renombrar lista de reproducción",
|
||
"@collectionRenamePlaylist": {
|
||
"description": "Action to rename playlist"
|
||
},
|
||
"collectionDeletePlaylist": "Eliminar lista de reproducción",
|
||
"@collectionDeletePlaylist": {
|
||
"description": "Action to delete playlist"
|
||
},
|
||
"collectionPlaylistRenamed": "Lista de reproducción renombrada",
|
||
"@collectionPlaylistRenamed": {
|
||
"description": "Snackbar after renaming playlist"
|
||
},
|
||
"collectionWishlistEmptyTitle": "La lista de deseos está vacía",
|
||
"@collectionWishlistEmptyTitle": {
|
||
"description": "Wishlist empty state title"
|
||
},
|
||
"collectionWishlistEmptySubtitle": "Toca el botón + en las pistas para guardar las que quieras descargar más tarde",
|
||
"@collectionWishlistEmptySubtitle": {
|
||
"description": "Wishlist empty state subtitle"
|
||
},
|
||
"collectionLovedEmptyTitle": "La carpeta «Me gusta» está vacía",
|
||
"@collectionLovedEmptyTitle": {
|
||
"description": "Loved empty state title"
|
||
},
|
||
"collectionLovedEmptySubtitle": "Toca «Me gusta» en las pistas para guardar tus favoritas.",
|
||
"@collectionLovedEmptySubtitle": {
|
||
"description": "Loved empty state subtitle"
|
||
},
|
||
"collectionFavoriteArtistsEmptyTitle": "Aún no hay artistas favoritos",
|
||
"@collectionFavoriteArtistsEmptyTitle": {
|
||
"description": "Favorite artists empty state title"
|
||
},
|
||
"collectionFavoriteArtistsEmptySubtitle": "Toca el corazón en la página del artista para guardarlo aquí",
|
||
"@collectionFavoriteArtistsEmptySubtitle": {
|
||
"description": "Favorite artists empty state subtitle"
|
||
},
|
||
"collectionPlaylistEmptyTitle": "La lista de reproducción está vacía",
|
||
"@collectionPlaylistEmptyTitle": {
|
||
"description": "Playlist empty state title"
|
||
},
|
||
"collectionPlaylistEmptySubtitle": "Mantén presionado el botón + en cualquier pista para añadirla aquí",
|
||
"@collectionPlaylistEmptySubtitle": {
|
||
"description": "Playlist empty state subtitle"
|
||
},
|
||
"collectionRemoveFromPlaylist": "Quitar de la lista de reproducción",
|
||
"@collectionRemoveFromPlaylist": {
|
||
"description": "Tooltip for removing track from playlist"
|
||
},
|
||
"collectionRemoveFromFolder": "Quitar de la carpeta",
|
||
"@collectionRemoveFromFolder": {
|
||
"description": "Tooltip for removing track from wishlist/loved folder"
|
||
},
|
||
"collectionAddedToLoved": "\"{trackName}\" se agregó a «Me gusta»",
|
||
"@collectionAddedToLoved": {
|
||
"description": "Snackbar after adding track to loved folder",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"collectionRemovedFromLoved": "\"{trackName}\" se eliminó de «Me gusta»",
|
||
"@collectionRemovedFromLoved": {
|
||
"description": "Snackbar after removing track from loved folder",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"collectionAddedToWishlist": "\"{trackName}\" se agregó a la lista de deseos",
|
||
"@collectionAddedToWishlist": {
|
||
"description": "Snackbar after adding track to wishlist",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"collectionRemovedFromWishlist": "\"{trackName}\" se eliminó de la lista de deseos",
|
||
"@collectionRemovedFromWishlist": {
|
||
"description": "Snackbar after removing track from wishlist",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"collectionAddedToFavoriteArtists": "\"{artistName}\" se agregó a Artistas favoritos",
|
||
"@collectionAddedToFavoriteArtists": {
|
||
"description": "Snackbar after adding artist to favorite artists",
|
||
"placeholders": {
|
||
"artistName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"collectionRemovedFromFavoriteArtists": "\"{artistName}\" se eliminó de Artistas favoritos",
|
||
"@collectionRemovedFromFavoriteArtists": {
|
||
"description": "Snackbar after removing artist from favorite artists",
|
||
"placeholders": {
|
||
"artistName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackOptionAddToLoved": "Agregar a «Me gusta»",
|
||
"@trackOptionAddToLoved": {
|
||
"description": "Bottom sheet action label - add track to loved folder"
|
||
},
|
||
"trackOptionRemoveFromLoved": "Quitar de «Me gusta»",
|
||
"@trackOptionRemoveFromLoved": {
|
||
"description": "Bottom sheet action label - remove track from loved folder"
|
||
},
|
||
"trackOptionAddToWishlist": "Añadir a la lista de deseos",
|
||
"@trackOptionAddToWishlist": {
|
||
"description": "Bottom sheet action label - add track to wishlist"
|
||
},
|
||
"trackOptionRemoveFromWishlist": "Quitar de la lista de deseos",
|
||
"@trackOptionRemoveFromWishlist": {
|
||
"description": "Bottom sheet action label - remove track from wishlist"
|
||
},
|
||
"artistOptionAddToFavorites": "Añadir a artistas favoritos",
|
||
"@artistOptionAddToFavorites": {
|
||
"description": "Action label - add artist to favorite artists"
|
||
},
|
||
"artistOptionRemoveFromFavorites": "Quitar de Artistas favoritos",
|
||
"@artistOptionRemoveFromFavorites": {
|
||
"description": "Action label - remove artist from favorite artists"
|
||
},
|
||
"collectionPlaylistChangeCover": "Cambiar imagen de portada",
|
||
"@collectionPlaylistChangeCover": {
|
||
"description": "Bottom sheet action to pick a custom cover image for a playlist"
|
||
},
|
||
"collectionPlaylistRemoveCover": "Eliminar imagen de portada",
|
||
"@collectionPlaylistRemoveCover": {
|
||
"description": "Bottom sheet action to remove custom cover image from a playlist"
|
||
},
|
||
"selectionShareCount": "Compartir {count} {count, plural, =1{pista} other{pistas}}",
|
||
"@selectionShareCount": {
|
||
"description": "Share button text with count in selection mode",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"selectionShareNoFiles": "No se encontraron archivos para compartir",
|
||
"@selectionShareNoFiles": {
|
||
"description": "Snackbar when no selected files exist on disk"
|
||
},
|
||
"selectionConvertCount": "Convertir {count} {count, plural, =1{pista} other{pistas}}",
|
||
"@selectionConvertCount": {
|
||
"description": "Convert button text with count in selection mode",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"selectionConvertNoConvertible": "No se seleccionaron pistas que se puedan convertir",
|
||
"@selectionConvertNoConvertible": {
|
||
"description": "Snackbar when no selected tracks support conversion"
|
||
},
|
||
"selectionBatchConvertConfirmTitle": "Conversión por lotes",
|
||
"@selectionBatchConvertConfirmTitle": {
|
||
"description": "Confirmation dialog title for batch conversion"
|
||
},
|
||
"selectionBatchConvertConfirmMessage": "¿Convertir {count} {count, plural, =1{pista} other{pistas}} a {format} con una tasa de bits de {bitrate}?\n\nLos archivos originales se eliminarán después de la conversión.",
|
||
"@selectionBatchConvertConfirmMessage": {
|
||
"description": "Confirmation dialog message for batch conversion",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"format": {
|
||
"type": "String"
|
||
},
|
||
"bitrate": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"selectionBatchConvertConfirmMessageLossless": "¿Convertir {count} {count, plural, =1{pista} other{pistas}} a {format}? (Sin pérdida — no hay pérdida de calidad)\n\nLos archivos originales se eliminarán después de la conversión.",
|
||
"@selectionBatchConvertConfirmMessageLossless": {
|
||
"description": "Confirmation dialog message for lossless batch conversion",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"format": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"selectionBatchConvertConfirmKeepOriginal": "¿Convertir {count} {count, plural, =1{track} other{tracks}} a {format}?\n\nLos archivos originales se conservarán y los archivos convertidos se agregarán como entradas separadas en la biblioteca.",
|
||
"@selectionBatchConvertConfirmKeepOriginal": {
|
||
"description": "Batch conversion confirmation when source files will be preserved",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"format": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"selectionBatchConvertSuccess": "Se convirtieron {success} de {total} pistas a {format}",
|
||
"@selectionBatchConvertSuccess": {
|
||
"description": "Snackbar after batch conversion completes",
|
||
"placeholders": {
|
||
"success": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
},
|
||
"format": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"downloadedAlbumDownloadedCount": "{count} descargado",
|
||
"@downloadedAlbumDownloadedCount": {
|
||
"description": "Downloaded tracks count badge",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"downloadUseAlbumArtistForFoldersAlbumSubtitle": "Carpeta nombrada según la etiqueta Artista del álbum",
|
||
"@downloadUseAlbumArtistForFoldersAlbumSubtitle": {
|
||
"description": "Subtitle when album artist is used for folder names"
|
||
},
|
||
"downloadUseAlbumArtistForFoldersTrackSubtitle": "Carpeta nombrada según la etiqueta Artista de la pista",
|
||
"@downloadUseAlbumArtistForFoldersTrackSubtitle": {
|
||
"description": "Subtitle when track artist is used for folder names"
|
||
},
|
||
"lyricsProvidersTitle": "Prioridad de proveedores de letras",
|
||
"@lyricsProvidersTitle": {
|
||
"description": "Settings item title for lyrics provider order"
|
||
},
|
||
"lyricsProvidersDescription": "Activa, desactiva y reordena las fuentes de letras. Los proveedores se prueban de arriba hacia abajo hasta encontrar letras.",
|
||
"@lyricsProvidersDescription": {
|
||
"description": "Description on the lyrics provider priority page"
|
||
},
|
||
"lyricsProvidersInfoText": "Los proveedores de letras de extensiones se ejecutan antes que los proveedores integrados. Debe permanecer habilitado al menos un proveedor.",
|
||
"@lyricsProvidersInfoText": {
|
||
"description": "Info tip on lyrics provider priority page"
|
||
},
|
||
"lyricsProvidersEnabledSection": "Activados ({count})",
|
||
"@lyricsProvidersEnabledSection": {
|
||
"description": "Section header for enabled providers",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"lyricsProvidersDisabledSection": "Desactivados ({count})",
|
||
"@lyricsProvidersDisabledSection": {
|
||
"description": "Section header for disabled providers",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"lyricsProvidersAtLeastOne": "Debe permanecer habilitado al menos un proveedor",
|
||
"@lyricsProvidersAtLeastOne": {
|
||
"description": "Snackbar when user tries to disable the last enabled provider"
|
||
},
|
||
"lyricsProvidersSaved": "Prioridad de proveedores de letras guardada",
|
||
"@lyricsProvidersSaved": {
|
||
"description": "Snackbar after saving lyrics provider priority"
|
||
},
|
||
"lyricsProvidersDiscardContent": "Tienes cambios sin guardar que se perderán.",
|
||
"@lyricsProvidersDiscardContent": {
|
||
"description": "Body text of the discard-changes dialog on lyrics provider page"
|
||
},
|
||
"lyricsProviderLrclibDesc": "Base de datos de letras sincronizadas de código abierto",
|
||
"@lyricsProviderLrclibDesc": {
|
||
"description": "Description for LRCLIB provider"
|
||
},
|
||
"lyricsProviderNeteaseDesc": "NetEase Cloud Music (buena para canciones asiáticas)",
|
||
"@lyricsProviderNeteaseDesc": {
|
||
"description": "Description for Netease provider"
|
||
},
|
||
"lyricsProviderMusixmatchDesc": "La base de datos de letras más grande (multilingüe)",
|
||
"@lyricsProviderMusixmatchDesc": {
|
||
"description": "Description for Musixmatch provider"
|
||
},
|
||
"lyricsProviderAppleMusicDesc": "Letras sincronizadas palabra por palabra (a través de proxy)",
|
||
"@lyricsProviderAppleMusicDesc": {
|
||
"description": "Description for Apple Music provider"
|
||
},
|
||
"lyricsProviderQqMusicDesc": "QQ Music (good for Chinese songs, direct API)",
|
||
"@lyricsProviderQqMusicDesc": {
|
||
"description": "Description for QQ Music provider"
|
||
},
|
||
"lyricsProviderLyricsPlusDesc": "Letras tipo karaoke palabra por palabra (Apple/ Musixmatch/Spotify/QQ, a través de proxy)",
|
||
"@lyricsProviderLyricsPlusDesc": {
|
||
"description": "Description for LyricsPlus provider"
|
||
},
|
||
"lyricsProviderExtensionDesc": "Proveedor de extensiones",
|
||
"@lyricsProviderExtensionDesc": {
|
||
"description": "Generic description for extension-based lyrics providers"
|
||
},
|
||
"safMigrationTitle": "Se requiere actualización del almacenamiento",
|
||
"@safMigrationTitle": {
|
||
"description": "Title of SAF migration dialog"
|
||
},
|
||
"safMigrationMessage1": "SpotiFLAC ahora utiliza el Android Storage Access Framework (SAF) para las descargas. Esto soluciona los errores de «permiso denegado» en Android 10 y versiones posteriores.",
|
||
"@safMigrationMessage1": {
|
||
"description": "First paragraph of SAF migration dialog"
|
||
},
|
||
"safMigrationMessage2": "Por favor, vuelve a seleccionar la carpeta de descargas para cambiar al nuevo sistema de almacenamiento.",
|
||
"@safMigrationMessage2": {
|
||
"description": "Second paragraph of SAF migration dialog"
|
||
},
|
||
"safMigrationSuccess": "Carpeta de descargas actualizada al modo SAF",
|
||
"@safMigrationSuccess": {
|
||
"description": "Snackbar after successfully migrating to SAF"
|
||
},
|
||
"settingsDonate": "Apoya el desarrollo",
|
||
"@settingsDonate": {
|
||
"description": "Settings menu item - donate page"
|
||
},
|
||
"settingsDonateSubtitle": "Compra un café al desarrollador",
|
||
"@settingsDonateSubtitle": {
|
||
"description": "Subtitle for donate menu item"
|
||
},
|
||
"settingsBackup": "Copia de seguridad y Restauración",
|
||
"@settingsBackup": {
|
||
"description": "Settings menu item - backup and restore page"
|
||
},
|
||
"settingsBackupSubtitle": "Transfiere tu biblioteca, historial y configuración a un nuevo dispositivo",
|
||
"@settingsBackupSubtitle": {
|
||
"description": "Subtitle for backup and restore settings item"
|
||
},
|
||
"backupTitle": "Copia de seguridad y Restauración",
|
||
"@backupTitle": {
|
||
"description": "App bar title for the backup and restore page"
|
||
},
|
||
"backupExportSectionTitle": "Crear copia de seguridad",
|
||
"@backupExportSectionTitle": {
|
||
"description": "Section title for the export/backup card"
|
||
},
|
||
"backupExportSectionDescription": "Guarda tu configuración, historial de descargas, pistas con «Me gusta», lista de deseos, artistas favoritos y listas de reproducción en un solo archivo que puedes conservar o transferir a otro teléfono.",
|
||
"@backupExportSectionDescription": {
|
||
"description": "Description of what a backup contains"
|
||
},
|
||
"backupExportButton": "Crear archivo de copia de seguridad",
|
||
"@backupExportButton": {
|
||
"description": "Button to create and share a backup file"
|
||
},
|
||
"backupImportSectionTitle": "Restaurar copia de seguridad",
|
||
"@backupImportSectionTitle": {
|
||
"description": "Section title for the import/restore card"
|
||
},
|
||
"backupImportSectionDescription": "Selecciona un archivo de copia de seguridad para restaurar tus datos. Esto reemplazará la configuración, el historial y la biblioteca actuales en este dispositivo.",
|
||
"@backupImportSectionDescription": {
|
||
"description": "Description for the restore action"
|
||
},
|
||
"backupImportButton": "Elegir archivo de copia de seguridad",
|
||
"@backupImportButton": {
|
||
"description": "Button to pick a backup file to restore"
|
||
},
|
||
"backupCreated": "Copia de seguridad creada",
|
||
"@backupCreated": {
|
||
"description": "Snackbar after a backup file is created"
|
||
},
|
||
"backupCreateFailed": "No se pudo crear la copia de seguridad",
|
||
"@backupCreateFailed": {
|
||
"description": "Snackbar when backup creation fails"
|
||
},
|
||
"backupRestoreConfirmTitle": "¿Restaurar esta copia de seguridad?",
|
||
"@backupRestoreConfirmTitle": {
|
||
"description": "Confirmation dialog title before restoring a backup"
|
||
},
|
||
"backupRestoreConfirmMessage": "Esto reemplazará tu configuración actual, historial de descargas, pistas con «Me gusta», lista de deseos y listas de reproducción con el contenido de la copia de seguridad. Esto no se puede deshacer.",
|
||
"@backupRestoreConfirmMessage": {
|
||
"description": "Confirmation dialog message before restoring a backup"
|
||
},
|
||
"backupRestoreConfirmButton": "Restaurar",
|
||
"@backupRestoreConfirmButton": {
|
||
"description": "Confirm button to proceed with restore"
|
||
},
|
||
"backupRestored": "Copia de seguridad restaurada correctamente",
|
||
"@backupRestored": {
|
||
"description": "Snackbar after a successful restore"
|
||
},
|
||
"backupRestoreFailed": "Fallo al restaurar la copia de seguridad",
|
||
"@backupRestoreFailed": {
|
||
"description": "Snackbar when restore fails"
|
||
},
|
||
"backupInvalidFile": "Este archivo no es una copia de seguridad válida de SpotiFLAC",
|
||
"@backupInvalidFile": {
|
||
"description": "Snackbar when the chosen file is not a valid backup"
|
||
},
|
||
"backupRestoreRestartHint": "Reinicie la aplicación para asegurarse de que cada cambio se aplique.",
|
||
"@backupRestoreRestartHint": {
|
||
"description": "Hint shown after restoring that an app restart is recommended"
|
||
},
|
||
"backupContentsTitle": "Contenido de la copia de seguridad",
|
||
"@backupContentsTitle": {
|
||
"description": "Header above the list summarizing what the backup contains"
|
||
},
|
||
"backupSettingsOnly": "Settings only",
|
||
"backupSelectHistory": "Download history",
|
||
"backupSelectCollections": "Library collections",
|
||
"backupSelectCollectionsDescription": "Liked tracks, wishlist, favorite artists, playlists and playlist covers.",
|
||
"backupSelectExtensions": "Extensions and their settings",
|
||
"backupSelectedExportDescription": "Save the selected categories to a backup file. Audio files are not included.",
|
||
"backupSelectAtLeastOne": "Select at least one category to create a backup.",
|
||
"backupSelectedRestoreMessage": "Only the categories listed below will be restored. Categories not included in this backup will stay unchanged. Restoring can replace existing data and cannot be undone.",
|
||
"backupContentsSettings": "Configuración de la aplicación",
|
||
"@backupContentsSettings": {
|
||
"description": "Backup contents row label for settings"
|
||
},
|
||
"backupContentsHistory": "{count} historial {count, plural, =1{item} other{items}}",
|
||
"@backupContentsHistory": {
|
||
"description": "Backup contents row for history count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"backupContentsLiked": "{count} {count, plural, =1{pista con «Me gusta»} other{pistas con «Me gusta»}}",
|
||
"@backupContentsLiked": {
|
||
"description": "Backup contents row for liked tracks count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"backupContentsWishlist": "{count} {count, plural, =1{pista en la lista de deseos} other{pistas en la lista de deseos}}",
|
||
"@backupContentsWishlist": {
|
||
"description": "Backup contents row for wishlist tracks count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"backupContentsPlaylists": "{count, plural, =1{1 lista de reproducción} other{{count} listas de reproducción}}",
|
||
"@backupContentsPlaylists": {
|
||
"description": "Backup contents row for playlist count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"backupContentsArtists": "{count, plural, =1{1 artista favorito} other{{count} artistas favoritos}}",
|
||
"@backupContentsArtists": {
|
||
"description": "Backup contents row for favorite artists count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"backupContentsExtensions": "{count, plural, =1{1 extensión} other{{count} extensiones}}",
|
||
"@backupContentsExtensions": {
|
||
"description": "Backup contents row for installed extensions count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"backupIncludeSecrets": "Incluir credenciales de extensión",
|
||
"@backupIncludeSecrets": {
|
||
"description": "Toggle to include secret extension settings (tokens, API keys) in the backup"
|
||
},
|
||
"backupIncludeSecretsDescription": "Los tokens y las claves API de las extensiones se guardarán en el archivo de copia de seguridad. Mantenga el archivo privado. Cuando está desactivado, volverá a introducirlos después de restaurar.",
|
||
"@backupIncludeSecretsDescription": {
|
||
"description": "Explanation for the include-credentials toggle"
|
||
},
|
||
"backupExtensionsRestoreFailed": "No se pudo reinstalar {count} {count, plural, =1{extension} other {extensions}}. Instálalas manualmente desde el repositorio.",
|
||
"@backupExtensionsRestoreFailed": {
|
||
"description": "Snackbar/hint when some extensions failed to reinstall during restore",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"tooltipLoveAll": "Favoritos",
|
||
"@tooltipLoveAll": {
|
||
"description": "Tooltip for the Love All button on album/playlist screens"
|
||
},
|
||
"tooltipAddToPlaylist": "Añadir a la lista de reproducción",
|
||
"@tooltipAddToPlaylist": {
|
||
"description": "Tooltip for the Add to Playlist button"
|
||
},
|
||
"snackbarRemovedTracksFromLoved": "Eliminadas {count} pistas de Favoritos",
|
||
"@snackbarRemovedTracksFromLoved": {
|
||
"description": "Snackbar after removing multiple tracks from Loved folder",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"snackbarAddedTracksToLoved": "Agregadas {count} pistas de Favoritos",
|
||
"@snackbarAddedTracksToLoved": {
|
||
"description": "Snackbar after adding multiple tracks to Loved folder",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"dialogDownloadAllTitle": "Descargar todo",
|
||
"@dialogDownloadAllTitle": {
|
||
"description": "Dialog title for bulk download confirmation"
|
||
},
|
||
"dialogDownloadAllMessage": "¿Descargar {count} pistas?",
|
||
"@dialogDownloadAllMessage": {
|
||
"description": "Body of the Download All confirmation dialog",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"homeSkipAlreadyDownloaded": "Omitir canciones ya descargadas",
|
||
"@homeSkipAlreadyDownloaded": {
|
||
"description": "Checkbox label in import dialog to skip already-downloaded songs"
|
||
},
|
||
"homeGoToAlbum": "Ir al álbum",
|
||
"@homeGoToAlbum": {
|
||
"description": "Context menu item to navigate to the album page"
|
||
},
|
||
"homeAlbumInfoUnavailable": "La información del álbum no está disponible",
|
||
"@homeAlbumInfoUnavailable": {
|
||
"description": "Snackbar when album info cannot be loaded"
|
||
},
|
||
"snackbarLoadingCueSheet": "Cargando hoja CUE...",
|
||
"@snackbarLoadingCueSheet": {
|
||
"description": "Snackbar while loading a CUE sheet file"
|
||
},
|
||
"snackbarMetadataSaved": "Metadatos guardados correctamente",
|
||
"@snackbarMetadataSaved": {
|
||
"description": "Snackbar after successfully saving track metadata"
|
||
},
|
||
"snackbarFailedToEmbedLyrics": "Error al incrustar letras",
|
||
"@snackbarFailedToEmbedLyrics": {
|
||
"description": "Snackbar when lyrics embedding fails"
|
||
},
|
||
"snackbarFailedToWriteStorage": "Error al escribir de vuelta al almacenamiento",
|
||
"@snackbarFailedToWriteStorage": {
|
||
"description": "Snackbar when writing metadata back to file fails"
|
||
},
|
||
"snackbarError": "Error: {error}",
|
||
"@snackbarError": {
|
||
"description": "Generic error snackbar with error detail",
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarNoActionDefined": "Ninguna acción definida para este botón",
|
||
"@snackbarNoActionDefined": {
|
||
"description": "Snackbar when an extension button has no action configured"
|
||
},
|
||
"noTracksFoundForAlbum": "No se encontraron pistas para este álbum",
|
||
"@noTracksFoundForAlbum": {
|
||
"description": "Empty state message when an album has no tracks"
|
||
},
|
||
"downloadLocationSubtitle": "Elige dónde guardar tus pistas descargadas",
|
||
"@downloadLocationSubtitle": {
|
||
"description": "Subtitle shown in the download location picker sheet"
|
||
},
|
||
"storageAutomaticFolder": "Automatic folder",
|
||
"storageAutomaticDownloadFolder": "Uses Download/SpotiFLAC when writable, otherwise app storage",
|
||
"storageSafRecommended": "Choose folder (Recommended)",
|
||
"storageDownloadFolderHint": "In the Android folder picker, open Download and select SpotiFLAC. If it does not exist, create it using New folder, then tap Use this folder to grant access.",
|
||
"storageModeAppFolder": "Carpeta de la App (Recomendado)",
|
||
"@storageModeAppFolder": {
|
||
"description": "Storage mode option - app-managed folder"
|
||
},
|
||
"storageModeAppFolderSubtitle": "Guarda en Music/SpotiFLAC por defecto",
|
||
"@storageModeAppFolderSubtitle": {
|
||
"description": "Subtitle for app folder storage mode"
|
||
},
|
||
"storageModeSaf": "Carpeta personalizada (SAF)",
|
||
"@storageModeSaf": {
|
||
"description": "Storage mode option - Storage Access Framework"
|
||
},
|
||
"storageModeSafSubtitle": "Escoge cualquier carpeta, incluyendo la tarjeta SD",
|
||
"@storageModeSafSubtitle": {
|
||
"description": "Subtitle for SAF storage mode"
|
||
},
|
||
"downloadFolderAccessLostTitle": "Se perdió el acceso a la carpeta de descargas",
|
||
"@downloadFolderAccessLostTitle": {
|
||
"description": "Title of the warning banner shown in Files settings when the saved SAF folder grant is no longer valid"
|
||
},
|
||
"downloadFolderAccessLostSubtitle": "Las descargas fallarán hasta que vuelvas a seleccionar la carpeta",
|
||
"@downloadFolderAccessLostSubtitle": {
|
||
"description": "Subtitle of the warning banner shown when the saved SAF folder grant is no longer valid"
|
||
},
|
||
"downloadFolderReselect": "Volver a seleccionar carpeta",
|
||
"@downloadFolderReselect": {
|
||
"description": "Button that reopens the folder picker to restore download folder access"
|
||
},
|
||
"downloadErrorSafPermissionLost": "Permiso SAF inválido o revocado. Por favor, reconfigura la ubicación de descarga en Configuración.",
|
||
"@downloadErrorSafPermissionLost": {
|
||
"description": "Error shown on downloads that failed because the persisted Android SAF folder grant is no longer valid"
|
||
},
|
||
"downloadErrorFolderAccessLost": "Se ha perdido el acceso a la carpeta de descarga. Por favor, vuelve a seleccionar tu carpeta de descargas en Configuración.",
|
||
"@downloadErrorFolderAccessLost": {
|
||
"description": "Error shown on downloads that failed because the iOS download folder bookmark could not be opened"
|
||
},
|
||
"downloadFilenameDescription": "Usa {artist}, {title}, {album}, {track}, {year}, {date}, {disc} como marcadores de posición.",
|
||
"@downloadFilenameDescription": {
|
||
"description": "Description shown in filename format editor"
|
||
},
|
||
"downloadFilenameInsertTag": "Toca para insertar etiqueta:",
|
||
"@downloadFilenameInsertTag": {
|
||
"description": "Label above filename tag chips"
|
||
},
|
||
"downloadSeparateSinglesEnabled": "Sencillos y EPs guardados en una carpeta separada",
|
||
"@downloadSeparateSinglesEnabled": {
|
||
"description": "Subtitle when separate singles folder is on"
|
||
},
|
||
"downloadSeparateSinglesDisabled": "Sencillos y álbumes guardados en la misma carpeta",
|
||
"@downloadSeparateSinglesDisabled": {
|
||
"description": "Subtitle when separate singles folder is off"
|
||
},
|
||
"downloadArtistNameFilters": "Filtros de Nombre del Artista",
|
||
"@downloadArtistNameFilters": {
|
||
"description": "Setting title for artist folder filter options"
|
||
},
|
||
"downloadCreatePlaylistSourceFolder": "Carpeta de Código Fuente de Listas",
|
||
"@downloadCreatePlaylistSourceFolder": {
|
||
"description": "Setting to create a subfolder per playlist source"
|
||
},
|
||
"downloadCreatePlaylistSourceFolderEnabled": "Se crea una subcarpeta para cada lista de reproducción",
|
||
"@downloadCreatePlaylistSourceFolderEnabled": {
|
||
"description": "Subtitle when playlist folder is enabled"
|
||
},
|
||
"downloadCreatePlaylistSourceFolderDisabled": "Todas las pistas guardadas directamente en la carpeta de descargas",
|
||
"@downloadCreatePlaylistSourceFolderDisabled": {
|
||
"description": "Subtitle when playlist folder is disabled"
|
||
},
|
||
"downloadCreatePlaylistSourceFolderRedundant": "Gestionado por la configuración de organización de carpetas",
|
||
"@downloadCreatePlaylistSourceFolderRedundant": {
|
||
"description": "Subtitle when folder organization is already set to playlist"
|
||
},
|
||
"downloadSongLinkRegion": "Región de SongLink",
|
||
"@downloadSongLinkRegion": {
|
||
"description": "Setting for SongLink region used during fallback resolution"
|
||
},
|
||
"downloadNetworkCompatibilityMode": "Modo de compatibilidad de red",
|
||
"@downloadNetworkCompatibilityMode": {
|
||
"description": "Setting for legacy TLS/network handling"
|
||
},
|
||
"downloadNetworkCompatibilityModeEnabled": "Allowing legacy HTTP endpoints; TLS verification remains enabled",
|
||
"@downloadNetworkCompatibilityModeEnabled": {
|
||
"description": "Subtitle when network compatibility mode is on"
|
||
},
|
||
"downloadNetworkCompatibilityModeDisabled": "Utilizando ajustes de red estándar",
|
||
"@downloadNetworkCompatibilityModeDisabled": {
|
||
"description": "Subtitle when network compatibility mode is off"
|
||
},
|
||
"downloadAllowLocalNetwork": "Permitir el acceso a la red local",
|
||
"@downloadAllowLocalNetwork": {
|
||
"description": "Setting title for allowing requests to private/local network targets"
|
||
},
|
||
"downloadAllowLocalNetworkEnabled": "Se permiten solicitudes a direcciones locales/privadas (para proxy local o DNS personalizado)",
|
||
"@downloadAllowLocalNetworkEnabled": {
|
||
"description": "Subtitle when allow local network access is on"
|
||
},
|
||
"downloadAllowLocalNetworkDisabled": "Las direcciones locales/privadas están bloqueadas por seguridad",
|
||
"@downloadAllowLocalNetworkDisabled": {
|
||
"description": "Subtitle when allow local network access is off"
|
||
},
|
||
"downloadSelectServiceToEnable": "Selecciona un proveedor con opciones de calidad para habilitar esta opción",
|
||
"@downloadSelectServiceToEnable": {
|
||
"description": "Subtitle when quality picker is disabled due to extension service"
|
||
},
|
||
"downloadEmbedLyricsDisabled": "Activar primero la incrustación de metadatos",
|
||
"@downloadEmbedLyricsDisabled": {
|
||
"description": "Subtitle when lyrics embedding is blocked by metadata toggle"
|
||
},
|
||
"downloadNeteaseIncludeTranslation": "Netease: Incluir traducción",
|
||
"@downloadNeteaseIncludeTranslation": {
|
||
"description": "Setting to include translated lyrics from Netease"
|
||
},
|
||
"downloadNeteaseIncludeTranslationEnabled": "Líneas de traducción chinas incluyeron",
|
||
"@downloadNeteaseIncludeTranslationEnabled": {
|
||
"description": "Subtitle when Netease translation is on"
|
||
},
|
||
"downloadNeteaseIncludeTranslationDisabled": "Solo letras originales",
|
||
"@downloadNeteaseIncludeTranslationDisabled": {
|
||
"description": "Subtitle when Netease translation is off"
|
||
},
|
||
"downloadNeteaseIncludeRomanization": "Netease: Incluir la romanización",
|
||
"@downloadNeteaseIncludeRomanization": {
|
||
"description": "Setting to include romanized lyrics from Netease"
|
||
},
|
||
"downloadNeteaseIncludeRomanizationEnabled": "Las líneas de romanización incluían",
|
||
"@downloadNeteaseIncludeRomanizationEnabled": {
|
||
"description": "Subtitle when Netease romanization is on"
|
||
},
|
||
"downloadNeteaseIncludeRomanizationDisabled": "Sin romanización",
|
||
"@downloadNeteaseIncludeRomanizationDisabled": {
|
||
"description": "Subtitle when Netease romanization is off"
|
||
},
|
||
"downloadAppleQqMultiPerson": "Apple / QQ: Letras de varias personas",
|
||
"@downloadAppleQqMultiPerson": {
|
||
"description": "Setting for word-by-word multi-person lyrics from Apple Music and QQ Music"
|
||
},
|
||
"downloadAppleQqMultiPersonEnabled": "Etiquetas de altavoces incluidas para duetos y temas grupales",
|
||
"@downloadAppleQqMultiPersonEnabled": {
|
||
"description": "Subtitle when multi-person lyrics is on"
|
||
},
|
||
"downloadAppleQqMultiPersonDisabled": "Letras estándar sin etiquetas de altavoz",
|
||
"@downloadAppleQqMultiPersonDisabled": {
|
||
"description": "Subtitle when multi-person lyrics is off"
|
||
},
|
||
"downloadAppleElrcWordSync": "Apple Music eLRC Word Sync",
|
||
"@downloadAppleElrcWordSync": {
|
||
"description": "Setting for preserving Apple Music word-by-word eLRC timestamps"
|
||
},
|
||
"downloadAppleElrcWordSyncEnabled": "Marcas temporales brutas palabra por palabra conservadas",
|
||
"@downloadAppleElrcWordSyncEnabled": {
|
||
"description": "Subtitle when Apple Music eLRC word sync is enabled"
|
||
},
|
||
"downloadAppleElrcWordSyncDisabled": "Letras de Apple Music línea por línea más seguras",
|
||
"@downloadAppleElrcWordSyncDisabled": {
|
||
"description": "Subtitle when Apple Music eLRC word sync is disabled"
|
||
},
|
||
"downloadMusixmatchLanguage": "Idioma de Musixmatch",
|
||
"@downloadMusixmatchLanguage": {
|
||
"description": "Setting for Musixmatch lyrics translation language"
|
||
},
|
||
"downloadMusixmatchLanguageAuto": "Auto (idioma original)",
|
||
"@downloadMusixmatchLanguageAuto": {
|
||
"description": "Subtitle when no language is set"
|
||
},
|
||
"downloadFilterContributing": "Filtra a los artistas colaboradores",
|
||
"@downloadFilterContributing": {
|
||
"description": "Setting to strip contributing artists from Album Artist folder name"
|
||
},
|
||
"downloadFilterContributingEnabled": "Artistas colaboradores eliminados del nombre de la carpeta Artista del álbum",
|
||
"@downloadFilterContributingEnabled": {
|
||
"description": "Subtitle when contributing artist filter is on"
|
||
},
|
||
"downloadFilterContributingDisabled": "Portada completa del artista del álbum utilizada",
|
||
"@downloadFilterContributingDisabled": {
|
||
"description": "Subtitle when contributing artist filter is off"
|
||
},
|
||
"downloadProvidersNoneEnabled": "No hay proveedores activos",
|
||
"@downloadProvidersNoneEnabled": {
|
||
"description": "Shown when no lyrics providers are active"
|
||
},
|
||
"downloadMusixmatchLanguageCode": "Código de idioma",
|
||
"@downloadMusixmatchLanguageCode": {
|
||
"description": "Label for Musixmatch language input field"
|
||
},
|
||
"downloadMusixmatchLanguageHint": "por ejemplo, en, de, ja",
|
||
"@downloadMusixmatchLanguageHint": {
|
||
"description": "Placeholder for Musixmatch language input"
|
||
},
|
||
"downloadMusixmatchLanguageDesc": "Introduce un código de idioma BCP-47 (por ejemplo, en, de, ja) para solicitar letras traducidas desde Musixmatch.",
|
||
"@downloadMusixmatchLanguageDesc": {
|
||
"description": "Description in Musixmatch language picker"
|
||
},
|
||
"downloadMusixmatchAuto": "Automático",
|
||
"@downloadMusixmatchAuto": {
|
||
"description": "Button to clear Musixmatch language (use auto)"
|
||
},
|
||
"downloadNetworkAnySubtitle": "Usar Wi-Fi o datos móviles",
|
||
"@downloadNetworkAnySubtitle": {
|
||
"description": "Subtitle for any-network option in picker"
|
||
},
|
||
"downloadNetworkWifiOnlySubtitle": "Las descargas se pausan con datos móviles",
|
||
"@downloadNetworkWifiOnlySubtitle": {
|
||
"description": "Subtitle for WiFi-only option in picker"
|
||
},
|
||
"downloadSongLinkRegionDesc": "Región usada al resolver enlaces de pistas mediante SongLink. Elige el país donde estén disponibles tus servicios de streaming.",
|
||
"@downloadSongLinkRegionDesc": {
|
||
"description": "Description in SongLink region picker"
|
||
},
|
||
"snackbarUnsupportedAudioFormat": "Formato de audio no soportado",
|
||
"@snackbarUnsupportedAudioFormat": {
|
||
"description": "Snackbar when the audio format is not supported for the requested operation"
|
||
},
|
||
"cacheRefresh": "Actualizar",
|
||
"@cacheRefresh": {
|
||
"description": "Tooltip for refresh button on cache management page"
|
||
},
|
||
"dialogDownloadPlaylistsMessage": "¿Descargar {trackCount} {trackCount, plural, =1{pista} other{pistas}} de {playlistCount} {playlistCount, plural, =1{lista de reproducción} other{listas de reproducción}}?",
|
||
"@dialogDownloadPlaylistsMessage": {
|
||
"description": "Dialog message for bulk playlist download confirmation",
|
||
"placeholders": {
|
||
"trackCount": {
|
||
"type": "int"
|
||
},
|
||
"playlistCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"bulkDownloadPlaylistsButton": "Descargar {count} {count, plural, =1{lista de reproducción} other{listas de reproducción}}",
|
||
"@bulkDownloadPlaylistsButton": {
|
||
"description": "Button label for bulk downloading selected playlists",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"bulkDownloadSelectPlaylists": "Selecciona listas de reproducción para descargar",
|
||
"@bulkDownloadSelectPlaylists": {
|
||
"description": "Button label when no playlists are selected for download"
|
||
},
|
||
"snackbarSelectedPlaylistsEmpty": "Las listas de reproducción seleccionadas no tienen pistas",
|
||
"@snackbarSelectedPlaylistsEmpty": {
|
||
"description": "Snackbar when selected playlists contain no tracks"
|
||
},
|
||
"playlistsCount": "{count, plural, =1{1 lista de reproducción} other{{count} listas de reproducción}}",
|
||
"@playlistsCount": {
|
||
"description": "Playlist count display",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"editMetadataAutoFill": "Autocompletar desde internet",
|
||
"@editMetadataAutoFill": {
|
||
"description": "Section title for selective online metadata auto-fill in the edit metadata sheet"
|
||
},
|
||
"editMetadataAutoFillDesc": "Elige una extensión de metadatos, selecciona campos y revisa sus datos antes de aplicarla",
|
||
"@editMetadataAutoFillDesc": {
|
||
"description": "Description for the auto-fill section"
|
||
},
|
||
"editMetadataAutoFillSource": "Fuente de metadatos",
|
||
"@editMetadataAutoFillSource": {
|
||
"description": "Label for the metadata extension selector in online auto-fill"
|
||
},
|
||
"editMetadataAutoFillSourceAutomatic": "Automático (prioridad del proveedor)",
|
||
"@editMetadataAutoFillSourceAutomatic": {
|
||
"description": "Automatic source option that follows configured metadata provider priority"
|
||
},
|
||
"editMetadataAutoFillFind": "Buscar metadatos",
|
||
"@editMetadataAutoFillFind": {
|
||
"description": "Button label for finding an online metadata candidate"
|
||
},
|
||
"editMetadataAutoFillPreview": "Datos de {source}",
|
||
"@editMetadataAutoFillPreview": {
|
||
"description": "Title for the online metadata preview",
|
||
"placeholders": {
|
||
"source": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"editMetadataAutoFillCoverAvailable": "Portada disponible",
|
||
"@editMetadataAutoFillCoverAvailable": {
|
||
"description": "Preview value when the selected metadata source provides cover artwork"
|
||
},
|
||
"editMetadataAutoFillApply": "Aplicar datos seleccionados",
|
||
"@editMetadataAutoFillApply": {
|
||
"description": "Button label for applying the previewed metadata"
|
||
},
|
||
"editMetadataAutoFillDoneFromSource": "Rellenado {count} {count, plural, =1{field} other{fields}} de {source}",
|
||
"@editMetadataAutoFillDoneFromSource": {
|
||
"description": "Snackbar confirming fields applied from a selected metadata source",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"source": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"editMetadataAutoFillFetch": "Recuperar y llenar",
|
||
"@editMetadataAutoFillFetch": {
|
||
"description": "Button label to fetch online metadata and fill selected fields"
|
||
},
|
||
"editMetadataAutoFillSearching": "Buscando en línea...",
|
||
"@editMetadataAutoFillSearching": {
|
||
"description": "Snackbar shown while searching for online metadata"
|
||
},
|
||
"editMetadataAutoFillNoResults": "No hay información coincidente en línea",
|
||
"@editMetadataAutoFillNoResults": {
|
||
"description": "Snackbar when online metadata search returns no results"
|
||
},
|
||
"editMetadataAutoFillDone": "Se completaron {count} {count, plural, =1{campo} other{campos}} con metadatos en línea",
|
||
"@editMetadataAutoFillDone": {
|
||
"description": "Snackbar confirming how many fields were auto-filled",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"editMetadataAutoFillNoneSelected": "Selecciona al menos un campo para autocompletar",
|
||
"@editMetadataAutoFillNoneSelected": {
|
||
"description": "Snackbar when user taps Fetch without selecting any fields"
|
||
},
|
||
"editMetadataFieldTitle": "Título",
|
||
"@editMetadataFieldTitle": {
|
||
"description": "Chip label for title field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldArtist": "Artista",
|
||
"@editMetadataFieldArtist": {
|
||
"description": "Chip label for artist field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldAlbum": "Álbum",
|
||
"@editMetadataFieldAlbum": {
|
||
"description": "Chip label for album field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldAlbumArtist": "Artista del álbum",
|
||
"@editMetadataFieldAlbumArtist": {
|
||
"description": "Chip label for album artist field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldDate": "Fecha",
|
||
"@editMetadataFieldDate": {
|
||
"description": "Chip label for date field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldTrackNum": "Pista #",
|
||
"@editMetadataFieldTrackNum": {
|
||
"description": "Chip label for track number field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldDiscNum": "Disco #",
|
||
"@editMetadataFieldDiscNum": {
|
||
"description": "Chip label for disc number field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldGenre": "Género",
|
||
"@editMetadataFieldGenre": {
|
||
"description": "Chip label for genre field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldIsrc": "ISRC",
|
||
"@editMetadataFieldIsrc": {
|
||
"description": "Chip label for ISRC field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldLabel": "Discográfica",
|
||
"@editMetadataFieldLabel": {
|
||
"description": "Chip label for label field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldCopyright": "Derechos de autor",
|
||
"@editMetadataFieldCopyright": {
|
||
"description": "Chip label for copyright field in auto-fill selector"
|
||
},
|
||
"editMetadataFieldCover": "Carátula",
|
||
"@editMetadataFieldCover": {
|
||
"description": "Chip label for cover art field in auto-fill selector"
|
||
},
|
||
"editMetadataSelectAll": "Todos",
|
||
"@editMetadataSelectAll": {
|
||
"description": "Button to select all fields for auto-fill"
|
||
},
|
||
"editMetadataSelectEmpty": "Solo vacíos",
|
||
"@editMetadataSelectEmpty": {
|
||
"description": "Button to select only fields that are currently empty"
|
||
},
|
||
"queueDownloadingCount": "Descargando ({count})",
|
||
"@queueDownloadingCount": {
|
||
"description": "Header for active downloads section with count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"queueFilteringIndicator": "Filtrando...",
|
||
"@queueFilteringIndicator": {
|
||
"description": "Shown while filter results are being computed"
|
||
},
|
||
"queueTrackCount": "{count, plural, =1{1 pista} other{{count} pistas}}",
|
||
"@queueTrackCount": {
|
||
"description": "Track count label with plural support",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"queueAlbumCount": "{count, plural, =1{1 álbum} other{{count} álbumes}}",
|
||
"@queueAlbumCount": {
|
||
"description": "Album count label with plural support",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"queueEmptyAlbums": "No se han descargado álbumes",
|
||
"@queueEmptyAlbums": {
|
||
"description": "Empty state title when no album downloads exist"
|
||
},
|
||
"queueEmptyAlbumsSubtitle": "Descarga varias canciones de un álbum para verlas aquí",
|
||
"@queueEmptyAlbumsSubtitle": {
|
||
"description": "Empty state subtitle for album downloads"
|
||
},
|
||
"queueEmptySingles": "No hay descargas",
|
||
"@queueEmptySingles": {
|
||
"description": "Empty state title when no single track downloads exist"
|
||
},
|
||
"queueEmptySinglesSubtitle": "Las descargas de pistas individuales aparecerán aquí",
|
||
"@queueEmptySinglesSubtitle": {
|
||
"description": "Empty state subtitle for single track downloads"
|
||
},
|
||
"queuePlaylistCount": "{count, plural, =1{1 playlist} other{{count} playlists}}",
|
||
"@queuePlaylistCount": {
|
||
"description": "Playlist count label with plural support",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"queueEmptyPlaylistsSubtitle": "Crea una lista de reproducción para organizar tus temas",
|
||
"@queueEmptyPlaylistsSubtitle": {
|
||
"description": "Empty state subtitle for the playlists library view"
|
||
},
|
||
"libraryDefaultView": "Vista predeterminada",
|
||
"@libraryDefaultView": {
|
||
"description": "Setting title - which library view opens when switching to the Library tab"
|
||
},
|
||
"libraryDefaultViewLastUsed": "Último uso",
|
||
"@libraryDefaultViewLastUsed": {
|
||
"description": "Default view option - keep the last used library view"
|
||
},
|
||
"queueEmptyHistory": "No hay historial de descargas",
|
||
"@queueEmptyHistory": {
|
||
"description": "Empty state title when download history is empty"
|
||
},
|
||
"queueEmptyHistorySubtitle": "Las pistas descargadas aparecerán aquí",
|
||
"@queueEmptyHistorySubtitle": {
|
||
"description": "Empty state subtitle for download history"
|
||
},
|
||
"selectionAllPlaylistsSelected": "Todas las listas seleccionadas",
|
||
"@selectionAllPlaylistsSelected": {
|
||
"description": "Shown when all playlists are selected in selection mode"
|
||
},
|
||
"selectionTapPlaylistsToSelect": "Pulsa listas de reproducción para seleccionar",
|
||
"@selectionTapPlaylistsToSelect": {
|
||
"description": "Hint shown in playlist selection mode"
|
||
},
|
||
"selectionSelectPlaylistsToDelete": "Selecciona listas de reproducción para eliminar",
|
||
"@selectionSelectPlaylistsToDelete": {
|
||
"description": "Hint shown when no playlists are selected for deletion"
|
||
},
|
||
"audioAnalysisTitle": "Análisis de calidad de audio",
|
||
"@audioAnalysisTitle": {
|
||
"description": "Title for audio analysis section"
|
||
},
|
||
"audioAnalysisDescription": "Verifica la calidad sin pérdidas mediante análisis de espectro",
|
||
"@audioAnalysisDescription": {
|
||
"description": "Description for audio analysis tap-to-analyze prompt"
|
||
},
|
||
"audioAnalysisAnalyzing": "Analizando audio...",
|
||
"@audioAnalysisAnalyzing": {
|
||
"description": "Loading text while analyzing audio"
|
||
},
|
||
"audioAnalysisSampleRate": "Frecuencia de muestreo",
|
||
"@audioAnalysisSampleRate": {
|
||
"description": "Sample rate metric label"
|
||
},
|
||
"audioAnalysisCodec": "Códec",
|
||
"@audioAnalysisCodec": {
|
||
"description": "Audio codec metric label"
|
||
},
|
||
"audioAnalysisContainer": "Contenedor",
|
||
"@audioAnalysisContainer": {
|
||
"description": "Audio container metric label"
|
||
},
|
||
"audioAnalysisDecodedFormat": "Formato decodificado",
|
||
"@audioAnalysisDecodedFormat": {
|
||
"description": "Decoded sample format metric label"
|
||
},
|
||
"audioAnalysisBitDepth": "Profundidad de bits",
|
||
"@audioAnalysisBitDepth": {
|
||
"description": "Bit depth metric label"
|
||
},
|
||
"audioAnalysisChannels": "Canales",
|
||
"@audioAnalysisChannels": {
|
||
"description": "Channels metric label"
|
||
},
|
||
"audioAnalysisDuration": "Duración",
|
||
"@audioAnalysisDuration": {
|
||
"description": "Duration metric label"
|
||
},
|
||
"audioAnalysisNyquist": "Nyquist",
|
||
"@audioAnalysisNyquist": {
|
||
"description": "Nyquist frequency metric label"
|
||
},
|
||
"audioAnalysisFileSize": "Tamaño",
|
||
"@audioAnalysisFileSize": {
|
||
"description": "File size metric label"
|
||
},
|
||
"audioAnalysisDynamicRange": "Rango dinámico",
|
||
"@audioAnalysisDynamicRange": {
|
||
"description": "Dynamic range metric label"
|
||
},
|
||
"audioAnalysisPeak": "Pico",
|
||
"@audioAnalysisPeak": {
|
||
"description": "Peak amplitude metric label"
|
||
},
|
||
"audioAnalysisRms": "RMS",
|
||
"@audioAnalysisRms": {
|
||
"description": "RMS level metric label"
|
||
},
|
||
"audioAnalysisLufs": "LUFS",
|
||
"@audioAnalysisLufs": {
|
||
"description": "Integrated loudness metric label"
|
||
},
|
||
"audioAnalysisTruePeak": "True Peak",
|
||
"@audioAnalysisTruePeak": {
|
||
"description": "True peak metric label"
|
||
},
|
||
"audioAnalysisClipping": "Clipping",
|
||
"@audioAnalysisClipping": {
|
||
"description": "Clipping metric label"
|
||
},
|
||
"audioAnalysisNoClipping": "No clipping",
|
||
"@audioAnalysisNoClipping": {
|
||
"description": "Displayed when no clipped samples were detected"
|
||
},
|
||
"audioAnalysisSpectralCutoff": "Spectral Cutoff",
|
||
"@audioAnalysisSpectralCutoff": {
|
||
"description": "Estimated spectral cutoff metric label"
|
||
},
|
||
"audioAnalysisCutoffNotDetected": "Not detected",
|
||
"@audioAnalysisCutoffNotDetected": {
|
||
"description": "Displayed when no reliable broadband spectral cutoff can be detected"
|
||
},
|
||
"audioAnalysisChannelStats": "Per-channel Stats",
|
||
"@audioAnalysisChannelStats": {
|
||
"description": "Per-channel audio analysis section label"
|
||
},
|
||
"audioAnalysisSamples": "Muestras",
|
||
"@audioAnalysisSamples": {
|
||
"description": "Total samples metric label"
|
||
},
|
||
"audioAnalysisRescan": "Volver a analizar",
|
||
"@audioAnalysisRescan": {
|
||
"description": "Tooltip/label for the button that re-runs the audio analysis, discarding cached results"
|
||
},
|
||
"downloadRedownloadFakeHiRes": "Re-download fake Hi-Res",
|
||
"@downloadRedownloadFakeHiRes": {
|
||
"description": "Setting title: automatically replace downloads that measure as fake Hi-Res"
|
||
},
|
||
"downloadRedownloadFakeHiResSubtitle": "Off by default. Check Hi-Res downloads and replace only when every audio sample is preserved. Keep the original if verification or processing fails",
|
||
"@downloadRedownloadFakeHiResSubtitle": {
|
||
"description": "Setting subtitle for the fake Hi-Res re-download toggle"
|
||
},
|
||
"hiResCheckVerdictFakeCertain": "Fake Hi-Res",
|
||
"@hiResCheckVerdictFakeCertain": {
|
||
"description": "Verdict: an exact fingerprint (padded bits or upsampling pattern) proves the file is not real Hi-Res"
|
||
},
|
||
"hiResCheckVerdictFakeSuspect": "Possibly a filtered master",
|
||
"@hiResCheckVerdictFakeSuspect": {
|
||
"description": "Verdict: fails the cutoff test but may be a genuine master low-pass filtered in mastering"
|
||
},
|
||
"hiResCheckReasonSampleHold": "Every sample is repeated: upsampled by duplication",
|
||
"@hiResCheckReasonSampleHold": {
|
||
"description": "Reason: sample-and-hold upsampling detected"
|
||
},
|
||
"hiResCheckReasonInterpolation": "In-between samples are linearly interpolated",
|
||
"@hiResCheckReasonInterpolation": {
|
||
"description": "Reason: linear-interpolation upsampling detected"
|
||
},
|
||
"hiResCheckReasonImaging": "Content above 22 kHz mirrors the audible band",
|
||
"@hiResCheckReasonImaging": {
|
||
"description": "Reason: spectral imaging from upsampling detected"
|
||
},
|
||
"hiResCheckMusicContent": "Musical content",
|
||
"@hiResCheckMusicContent": {
|
||
"description": "Label for the highest frequency that still moves with the music"
|
||
},
|
||
"hiResCheckUltrasonicNoise": "Above {cutoff} only steady noise (typical of DSD or analog tape transfers): a {rate} file would hold all the music",
|
||
"@hiResCheckUltrasonicNoise": {
|
||
"description": "Shown when the ultrasonic content of a Hi-Res file is noise rather than music",
|
||
"placeholders": {
|
||
"cutoff": {
|
||
"type": "String"
|
||
},
|
||
"rate": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"hiResCheckTitle": "Hi-Res Authenticity",
|
||
"@hiResCheckTitle": {
|
||
"description": "Title of the fake Hi-Res check card"
|
||
},
|
||
"hiResCheckDescription": "Detect upsampled or bit-padded fake Hi-Res files",
|
||
"@hiResCheckDescription": {
|
||
"description": "Explains what the Hi-Res authenticity check does"
|
||
},
|
||
"hiResCheckRun": "Check",
|
||
"@hiResCheckRun": {
|
||
"description": "Button that starts the Hi-Res authenticity check"
|
||
},
|
||
"hiResCheckChecking": "Checking Hi-Res authenticity...",
|
||
"@hiResCheckChecking": {
|
||
"description": "Loading text while the Hi-Res check runs"
|
||
},
|
||
"hiResCheckVerdictFake": "Likely fake Hi-Res",
|
||
"@hiResCheckVerdictFake": {
|
||
"description": "Verdict: the file claims Hi-Res but does not measure as it"
|
||
},
|
||
"hiResCheckVerdictGenuine": "Measures as genuine Hi-Res",
|
||
"@hiResCheckVerdictGenuine": {
|
||
"description": "Verdict: no upsampling or padded bit depth found"
|
||
},
|
||
"hiResCheckVerdictStandard": "Standard definition, nothing to flag",
|
||
"@hiResCheckVerdictStandard": {
|
||
"description": "Verdict: neither sample rate nor bit depth claims Hi-Res"
|
||
},
|
||
"hiResCheckVerdictInconclusive": "Inconclusive: the analyzed segment is too quiet or short",
|
||
"@hiResCheckVerdictInconclusive": {
|
||
"description": "Verdict: analysis could not reach a reliable conclusion"
|
||
},
|
||
"hiResCheckUnsupported": "Only FLAC and WAV files can be checked",
|
||
"@hiResCheckUnsupported": {
|
||
"description": "Shown when the file format cannot be decoded by the Hi-Res check"
|
||
},
|
||
"hiResCheckCutoff": "Content cutoff",
|
||
"@hiResCheckCutoff": {
|
||
"description": "Label for the highest frequency with real content"
|
||
},
|
||
"hiResCheckBitsInUse": "Bits in use",
|
||
"@hiResCheckBitsInUse": {
|
||
"description": "Label for effective vs declared bit depth"
|
||
},
|
||
"hiResCheckDisclaimer": "The spectrum stops early, but nothing proves it was upsampled: it may be a genuine master low-pass filtered in mastering. It is not replaced automatically.",
|
||
"@hiResCheckDisclaimer": {
|
||
"description": "Caveat shown under a fake Hi-Res verdict"
|
||
},
|
||
"hiResCheckFailed": "Hi-Res check failed: {error}",
|
||
"@hiResCheckFailed": {
|
||
"description": "Error shown when the Hi-Res check fails",
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"hiResCheckReasonRate": "Declares {sampleRate} but content stops at ~{cutoff}",
|
||
"@hiResCheckReasonRate": {
|
||
"description": "Reason for a fake verdict caused by upsampling",
|
||
"placeholders": {
|
||
"sampleRate": {
|
||
"type": "String"
|
||
},
|
||
"cutoff": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"hiResCheckReasonDepth": "Declares {declared}-bit but only {effective} bits carry data",
|
||
"@hiResCheckReasonDepth": {
|
||
"description": "Reason for a fake verdict caused by padded bit depth",
|
||
"placeholders": {
|
||
"declared": {
|
||
"type": "int"
|
||
},
|
||
"effective": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"audioAnalysisRescanning": "Volviendo a analizar audio...",
|
||
"@audioAnalysisRescanning": {
|
||
"description": "Loading text while audio is being re-analyzed after an explicit refresh"
|
||
},
|
||
"extensionsHomeFeedProvider": "Home Feed Provider",
|
||
"@extensionsHomeFeedProvider": {
|
||
"description": "Extensions page - label for home feed provider selector"
|
||
},
|
||
"extensionsHomeFeedDescription": "Choose which extension provides the home feed on the main screen",
|
||
"@extensionsHomeFeedDescription": {
|
||
"description": "Extensions page - description for home feed provider picker"
|
||
},
|
||
"extensionsHomeFeedAuto": "Auto",
|
||
"@extensionsHomeFeedAuto": {
|
||
"description": "Label for auto-selected search provider"
|
||
},
|
||
"extensionsHomeFeedAutoSubtitle": "Seleccionar automáticamente la mejor disponible",
|
||
"@extensionsHomeFeedAutoSubtitle": {
|
||
"description": "Extensions page - subtitle for auto home feed option"
|
||
},
|
||
"extensionsHomeFeedOff": "Desactivado",
|
||
"@extensionsHomeFeedOff": {
|
||
"description": "Extensions page - home feed provider option: off"
|
||
},
|
||
"extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen",
|
||
"@extensionsHomeFeedOffSubtitle": {
|
||
"description": "Extensions page - subtitle for off home feed option"
|
||
},
|
||
"extensionsHomeFeedUse": "Use {extensionName} home feed",
|
||
"@extensionsHomeFeedUse": {
|
||
"description": "Extensions page - subtitle for a specific extension home feed option",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"extensionsNoHomeFeedExtensions": "No extensions with home feed",
|
||
"@extensionsNoHomeFeedExtensions": {
|
||
"description": "Extensions page - shown when no installed extension has home feed"
|
||
},
|
||
"cancelDownloadTitle": "¿Cancelar descarga?",
|
||
"@cancelDownloadTitle": {
|
||
"description": "Dialog title when confirming cancellation of an active download"
|
||
},
|
||
"cancelDownloadContent": "This will cancel the active download for \"{trackName}\".",
|
||
"@cancelDownloadContent": {
|
||
"description": "Dialog body when confirming cancellation of an active download",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"cancelDownloadKeep": "Mantener",
|
||
"@cancelDownloadKeep": {
|
||
"description": "Dialog button - keep the active download (do not cancel)"
|
||
},
|
||
"queueCancelledTitle": "Descarga cancelada",
|
||
"@queueCancelledTitle": {
|
||
"description": "Dialog title when opening a cancelled queue item"
|
||
},
|
||
"queueCancelledMessage": "This download was cancelled. Retry it or remove it from the queue.",
|
||
"@queueCancelledMessage": {
|
||
"description": "Dialog body when opening a cancelled queue item"
|
||
},
|
||
"metadataSaveFailedFfmpeg": "Failed to save metadata via FFmpeg",
|
||
"@metadataSaveFailedFfmpeg": {
|
||
"description": "Snackbar error when FFmpeg fails to write metadata"
|
||
},
|
||
"metadataSaveFailedStorage": "Failed to write metadata back to storage",
|
||
"@metadataSaveFailedStorage": {
|
||
"description": "Snackbar error when writing metadata file back to storage fails"
|
||
},
|
||
"snackbarFolderPickerFailed": "Failed to open folder picker: {error}",
|
||
"@snackbarFolderPickerFailed": {
|
||
"description": "Snackbar shown when folder picker fails to open",
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"notifDownloadingTrack": "Downloading {trackName}",
|
||
"@notifDownloadingTrack": {
|
||
"description": "Notification title while downloading a track",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"notifFinalizingTrack": "Finalizando {trackName}",
|
||
"@notifFinalizingTrack": {
|
||
"description": "Notification title while finalizing (embedding metadata) a track",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"notifEmbeddingMetadata": "Insertando información...",
|
||
"@notifEmbeddingMetadata": {
|
||
"description": "Notification body while embedding metadata into a downloaded track"
|
||
},
|
||
"notifAlreadyInLibraryCount": "Already in Library ({completed}/{total})",
|
||
"@notifAlreadyInLibraryCount": {
|
||
"description": "Notification title when track is already in library, with count",
|
||
"placeholders": {
|
||
"completed": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifAlreadyInLibrary": "Already in Library",
|
||
"@notifAlreadyInLibrary": {
|
||
"description": "Notification title when track is already in library"
|
||
},
|
||
"notifDownloadCompleteCount": "Download Complete ({completed}/{total})",
|
||
"@notifDownloadCompleteCount": {
|
||
"description": "Notification title when download is complete, with count",
|
||
"placeholders": {
|
||
"completed": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifDownloadComplete": "Descarga completa",
|
||
"@notifDownloadComplete": {
|
||
"description": "Notification title when a single download is complete"
|
||
},
|
||
"notifDownloadsFinished": "Downloads Finished ({completed} done, {failed} failed)",
|
||
"@notifDownloadsFinished": {
|
||
"description": "Notification title when queue finishes with some failures",
|
||
"placeholders": {
|
||
"completed": {
|
||
"type": "int"
|
||
},
|
||
"failed": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifVerificationRequiredTitle": "Verification required",
|
||
"@notifVerificationRequiredTitle": {
|
||
"description": "Notification title shown when a download needs the user to complete a verification challenge but the app is in the background"
|
||
},
|
||
"notifVerificationRequiredBody": "Open the app to complete verification and resume downloads",
|
||
"@notifVerificationRequiredBody": {
|
||
"description": "Notification body prompting the user to return to the app to solve a verification challenge"
|
||
},
|
||
"notifAllDownloadsComplete": "Todas las descargas completadas",
|
||
"@notifAllDownloadsComplete": {
|
||
"description": "Notification title when all downloads finish successfully"
|
||
},
|
||
"notifTracksDownloadedSuccess": "{count, plural, =1{1 track downloaded successfully} other{{count} tracks downloaded successfully}}",
|
||
"@notifTracksDownloadedSuccess": {
|
||
"description": "Notification body for queue complete - how many tracks were downloaded",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifDownloadsFinishedBody": "{completed, plural, =1{1 track downloaded} other{{completed} tracks downloaded}}, {failed, plural, =1{1 failed} other{{failed} failed}}",
|
||
"@notifDownloadsFinishedBody": {
|
||
"description": "Notification body when queue finishes with failures",
|
||
"placeholders": {
|
||
"completed": {
|
||
"type": "int"
|
||
},
|
||
"failed": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifDownloadsCanceledTitle": "Descargas canceladas",
|
||
"@notifDownloadsCanceledTitle": {
|
||
"description": "Notification title when downloads are canceled by the user"
|
||
},
|
||
"notifDownloadsCanceledBody": "{count, plural, =1{1 download canceled by user} other{{count} downloads canceled by user}}",
|
||
"@notifDownloadsCanceledBody": {
|
||
"description": "Notification body when downloads are canceled by the user",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifScanningLibrary": "Escaneando biblioteca local",
|
||
"@notifScanningLibrary": {
|
||
"description": "Notification title while scanning local library"
|
||
},
|
||
"notifLibraryScanProgressWithTotal": "{scanned}/{total} files • {percentage}%",
|
||
"@notifLibraryScanProgressWithTotal": {
|
||
"description": "Notification body for library scan progress when total is known",
|
||
"placeholders": {
|
||
"scanned": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
},
|
||
"percentage": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifLibraryScanProgressNoTotal": "{scanned} files scanned • {percentage}%",
|
||
"@notifLibraryScanProgressNoTotal": {
|
||
"description": "Notification body for library scan progress when total is unknown",
|
||
"placeholders": {
|
||
"scanned": {
|
||
"type": "int"
|
||
},
|
||
"percentage": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifLibraryScanComplete": "Escaneo de biblioteca completado",
|
||
"@notifLibraryScanComplete": {
|
||
"description": "Notification title when library scan finishes"
|
||
},
|
||
"notifLibraryScanCompleteBody": "{count} tracks indexed",
|
||
"@notifLibraryScanCompleteBody": {
|
||
"description": "Notification body for library scan complete - number of indexed tracks",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifLibraryScanExcluded": "{count} excluded",
|
||
"@notifLibraryScanExcluded": {
|
||
"description": "Library scan complete suffix - excluded track count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifLibraryScanErrors": "{count} errores",
|
||
"@notifLibraryScanErrors": {
|
||
"description": "Library scan complete suffix - error count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifLibraryScanFailed": "Error al escanear la biblioteca",
|
||
"@notifLibraryScanFailed": {
|
||
"description": "Notification title when library scan fails"
|
||
},
|
||
"notifLibraryScanCancelled": "Library scan cancelled",
|
||
"@notifLibraryScanCancelled": {
|
||
"description": "Notification title when library scan is cancelled by the user"
|
||
},
|
||
"notifLibraryScanStopped": "Scan stopped before completion.",
|
||
"@notifLibraryScanStopped": {
|
||
"description": "Notification body when library scan is cancelled"
|
||
},
|
||
"notifDownloadingUpdate": "Downloading SpotiFLAC Mobile v{version}",
|
||
"@notifDownloadingUpdate": {
|
||
"description": "Notification title while downloading an app update",
|
||
"placeholders": {
|
||
"version": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"notifUpdateProgress": "{received} / {total} MB • {percentage}%",
|
||
"@notifUpdateProgress": {
|
||
"description": "Notification body showing update download progress",
|
||
"placeholders": {
|
||
"received": {
|
||
"type": "String"
|
||
},
|
||
"total": {
|
||
"type": "String"
|
||
},
|
||
"percentage": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"notifUpdateReady": "Actualización preparada",
|
||
"@notifUpdateReady": {
|
||
"description": "Notification title when app update download is complete"
|
||
},
|
||
"notifUpdateReadyBody": "SpotiFLAC Mobile v{version} downloaded. Tap to install.",
|
||
"@notifUpdateReadyBody": {
|
||
"description": "Notification body when app update is ready to install",
|
||
"placeholders": {
|
||
"version": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"notifUpdateFailed": "Update Failed",
|
||
"@notifUpdateFailed": {
|
||
"description": "Notification title when app update download fails"
|
||
},
|
||
"notifUpdateFailedBody": "Could not download update. Try again later.",
|
||
"@notifUpdateFailedBody": {
|
||
"description": "Notification body when app update download fails"
|
||
},
|
||
"searchTracks": "Pistas",
|
||
"@searchTracks": {
|
||
"description": "Search filter label - tracks"
|
||
},
|
||
"homeSearchHintDefault": "Paste supported URL or search...",
|
||
"@homeSearchHintDefault": {
|
||
"description": "Default placeholder for the main search field on Home"
|
||
},
|
||
"homeSearchHintProvider": "Search with {providerName}...",
|
||
"@homeSearchHintProvider": {
|
||
"description": "Placeholder for the main search field when a provider is selected",
|
||
"placeholders": {
|
||
"providerName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"homeImportCsvTooltip": "Import playlist (CSV, M3U)",
|
||
"@homeImportCsvTooltip": {
|
||
"description": "Tooltip for importing a CSV or M3U playlist file into Home search"
|
||
},
|
||
"homeChangeSearchProviderTooltip": "Change search provider",
|
||
"@homeChangeSearchProviderTooltip": {
|
||
"description": "Tooltip for the Home search provider picker"
|
||
},
|
||
"actionPaste": "Pegar",
|
||
"@actionPaste": {
|
||
"description": "Generic action - paste from clipboard"
|
||
},
|
||
"tutorialSearchHint": "Pegar o buscar...",
|
||
"@tutorialSearchHint": {
|
||
"description": "Placeholder shown in the tutorial search demo"
|
||
},
|
||
"tutorialDownloadCompletedSemantics": "Descarga completada",
|
||
"@tutorialDownloadCompletedSemantics": {
|
||
"description": "Accessibility label for completed download state in tutorial demo"
|
||
},
|
||
"tutorialDownloadInProgressSemantics": "Descarga en curso",
|
||
"@tutorialDownloadInProgressSemantics": {
|
||
"description": "Accessibility label for active download state in tutorial demo"
|
||
},
|
||
"tutorialStartDownloadSemantics": "Comenzar descarga",
|
||
"@tutorialStartDownloadSemantics": {
|
||
"description": "Accessibility label for idle download button in tutorial demo"
|
||
},
|
||
"optionsEmbedMetadata": "Incrustar información",
|
||
"@optionsEmbedMetadata": {
|
||
"description": "Settings toggle title for writing metadata into downloaded files"
|
||
},
|
||
"optionsEmbedMetadataSubtitleOn": "Escribir información, carátulas y letras incrustadas en archivos",
|
||
"@optionsEmbedMetadataSubtitleOn": {
|
||
"description": "Subtitle when metadata embedding is enabled"
|
||
},
|
||
"optionsEmbedMetadataSubtitleOff": "Disabled (advanced): skip all metadata embedding",
|
||
"@optionsEmbedMetadataSubtitleOff": {
|
||
"description": "Subtitle when metadata embedding is disabled"
|
||
},
|
||
"trackCoverNoEmbeddedArt": "No embedded album art found",
|
||
"@trackCoverNoEmbeddedArt": {
|
||
"description": "Message shown when a track file has no embedded cover art"
|
||
},
|
||
"trackCoverReplace": "Reemplazar portada",
|
||
"@trackCoverReplace": {
|
||
"description": "Button label for replacing selected cover art"
|
||
},
|
||
"trackCoverPick": "Elegir portada",
|
||
"@trackCoverPick": {
|
||
"description": "Button label for selecting cover art"
|
||
},
|
||
"trackCoverClearSelected": "Borrar portada seleccionada",
|
||
"@trackCoverClearSelected": {
|
||
"description": "Tooltip for clearing the newly selected cover art"
|
||
},
|
||
"trackCoverCurrent": "Portada actual",
|
||
"@trackCoverCurrent": {
|
||
"description": "Label for the currently embedded cover preview"
|
||
},
|
||
"trackCoverSelected": "Carátula seleccionada",
|
||
"@trackCoverSelected": {
|
||
"description": "Label for the newly selected cover preview"
|
||
},
|
||
"trackCoverReplaceNotice": "La portada seleccionada sustituirá a la portada actual incrustada cuando pulses Guardar.",
|
||
"@trackCoverReplaceNotice": {
|
||
"description": "Notice shown when a new cover has been selected but not saved yet"
|
||
},
|
||
"trackCoverResolution": "Cover resolution",
|
||
"@trackCoverResolution": {
|
||
"description": "Label for selecting the embedded cover art resolution"
|
||
},
|
||
"trackCoverResolutionHint": "Sets the longest edge when saved. Enlarging does not add image detail.",
|
||
"@trackCoverResolutionHint": {
|
||
"description": "Explanation below the embedded cover art resolution selector"
|
||
},
|
||
"trackCoverResizeFailed": "The cover image could not be resized. Please try another size or image.",
|
||
"@trackCoverResizeFailed": {
|
||
"description": "Error shown when resizing cover art before saving metadata fails"
|
||
},
|
||
"actionStop": "Detener",
|
||
"@actionStop": {
|
||
"description": "Generic action - stop"
|
||
},
|
||
"queueFinalizingDownload": "Finalizando descarga",
|
||
"@queueFinalizingDownload": {
|
||
"description": "Accessibility label for a queue item that is finalizing"
|
||
},
|
||
"queueDownloadNext": "Download next",
|
||
"@queueDownloadNext": {
|
||
"description": "Tooltip on a queued download row; moves the item to the front of the queue so the next free slot downloads it"
|
||
},
|
||
"queueMoveUp": "Move up",
|
||
"@queueMoveUp": {
|
||
"description": "Queue item menu action - move the queued item one position earlier"
|
||
},
|
||
"queueMoveDown": "Move down",
|
||
"@queueMoveDown": {
|
||
"description": "Queue item menu action - move the queued item one position later"
|
||
},
|
||
"editMetadataMusicBrainzButton": "Fetch from MusicBrainz",
|
||
"@editMetadataMusicBrainzButton": {
|
||
"description": "Tag editor button that fills genre and album artist from MusicBrainz by ISRC"
|
||
},
|
||
"editMetadataMusicBrainzFilled": "Updated from MusicBrainz",
|
||
"@editMetadataMusicBrainzFilled": {
|
||
"description": "Snackbar after MusicBrainz suggestions were applied to the tag editor fields"
|
||
},
|
||
"editMetadataMusicBrainzNothing": "Nothing found on MusicBrainz",
|
||
"@editMetadataMusicBrainzNothing": {
|
||
"description": "Snackbar when the MusicBrainz lookup returns no data"
|
||
},
|
||
"editMetadataMusicBrainzNeedsIsrc": "Requires an ISRC tag",
|
||
"@editMetadataMusicBrainzNeedsIsrc": {
|
||
"description": "Snackbar when the MusicBrainz lookup is tapped without an ISRC"
|
||
},
|
||
"nowPlayingRepeatOff": "Repeat off",
|
||
"@nowPlayingRepeatOff": {
|
||
"description": "Repeat toggle tooltip when repeat is disabled"
|
||
},
|
||
"nowPlayingRepeatAll": "Repeat all",
|
||
"@nowPlayingRepeatAll": {
|
||
"description": "Repeat toggle tooltip when the whole queue repeats"
|
||
},
|
||
"nowPlayingRepeatOne": "Repeat one",
|
||
"@nowPlayingRepeatOne": {
|
||
"description": "Repeat toggle tooltip when the current track repeats"
|
||
},
|
||
"queueNetworkFailedOffline": "{count} downloads failed while offline",
|
||
"@queueNetworkFailedOffline": {
|
||
"description": "Snackbar shown when connectivity returns and network-failed downloads can be retried",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"queueDownloadedFileMissing": "Downloaded file missing",
|
||
"@queueDownloadedFileMissing": {
|
||
"description": "Accessibility label when a downloaded file is missing from disk"
|
||
},
|
||
"queueCheckingDownloadedFile": "Checking downloaded file...",
|
||
"@queueCheckingDownloadedFile": {
|
||
"description": "Accessibility label while the app checks whether a just-completed download has appeared at its final path yet. Not about authentication or a download session."
|
||
},
|
||
"queueDownloadCompleted": "Descarga completada",
|
||
"@queueDownloadCompleted": {
|
||
"description": "Accessibility label for completed download state in queue"
|
||
},
|
||
"queueRateLimitTitle": "Service rate limited",
|
||
"@queueRateLimitTitle": {
|
||
"description": "Title shown on a failed queue item when the download service rate limits requests"
|
||
},
|
||
"queueRateLimitMessage": "This track may still be available. Wait a few minutes, reduce parallel downloads, then retry.",
|
||
"@queueRateLimitMessage": {
|
||
"description": "Explanation shown on a failed queue item when the download service rate limits requests"
|
||
},
|
||
"appearanceSelectAccentColor": "Selecciona un color de contraste {hex}",
|
||
"@appearanceSelectAccentColor": {
|
||
"description": "Accessibility label for picking an accent color",
|
||
"placeholders": {
|
||
"hex": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"logAutoScrollOn": "Auto-scroll ON",
|
||
"@logAutoScrollOn": {
|
||
"description": "Tooltip when auto-scroll is enabled on the log screen"
|
||
},
|
||
"logAutoScrollOff": "Auto-scroll OFF",
|
||
"@logAutoScrollOff": {
|
||
"description": "Tooltip when auto-scroll is disabled on the log screen"
|
||
},
|
||
"logCopyLogs": "Copy logs",
|
||
"@logCopyLogs": {
|
||
"description": "Tooltip for copying logs"
|
||
},
|
||
"logClearSearch": "Limpiar búsqueda",
|
||
"@logClearSearch": {
|
||
"description": "Tooltip for clearing the log search field"
|
||
},
|
||
"logIssueIspBlockingLabel": "ISP BLOCKING DETECTED",
|
||
"@logIssueIspBlockingLabel": {
|
||
"description": "Diagnostic badge label when ISP blocking is detected"
|
||
},
|
||
"logIssueIspBlockingDescription": "Your ISP may be blocking access to download services",
|
||
"@logIssueIspBlockingDescription": {
|
||
"description": "Diagnostic badge description for ISP blocking"
|
||
},
|
||
"logIssueIspBlockingSuggestion": "Try using a VPN or change DNS to 1.1.1.1 or 8.8.8.8",
|
||
"@logIssueIspBlockingSuggestion": {
|
||
"description": "Diagnostic badge suggestion for ISP blocking"
|
||
},
|
||
"logIssueRateLimitedLabel": "RATE LIMITED",
|
||
"@logIssueRateLimitedLabel": {
|
||
"description": "Diagnostic badge label when the service rate limits requests"
|
||
},
|
||
"logIssueRateLimitedDescription": "Too many requests to the service",
|
||
"@logIssueRateLimitedDescription": {
|
||
"description": "Diagnostic badge description for rate limiting"
|
||
},
|
||
"logIssueRateLimitedSuggestion": "Wait a few minutes before trying again",
|
||
"@logIssueRateLimitedSuggestion": {
|
||
"description": "Diagnostic badge suggestion for rate limiting"
|
||
},
|
||
"logIssueNetworkErrorLabel": "NETWORK ERROR",
|
||
"@logIssueNetworkErrorLabel": {
|
||
"description": "Diagnostic badge label for generic network errors"
|
||
},
|
||
"logIssueNetworkErrorDescription": "Connection issues detected",
|
||
"@logIssueNetworkErrorDescription": {
|
||
"description": "Diagnostic badge description for generic network errors"
|
||
},
|
||
"logIssueNetworkErrorSuggestion": "Check your internet connection",
|
||
"@logIssueNetworkErrorSuggestion": {
|
||
"description": "Diagnostic badge suggestion for generic network errors"
|
||
},
|
||
"logIssueTrackNotFoundLabel": "TRACK NOT FOUND",
|
||
"@logIssueTrackNotFoundLabel": {
|
||
"description": "Diagnostic badge label when a track is unavailable"
|
||
},
|
||
"logIssueTrackNotFoundDescription": "Some tracks could not be found on download services",
|
||
"@logIssueTrackNotFoundDescription": {
|
||
"description": "Diagnostic badge description when a track is unavailable"
|
||
},
|
||
"logIssueTrackNotFoundSuggestion": "The track may not be available in lossless quality",
|
||
"@logIssueTrackNotFoundSuggestion": {
|
||
"description": "Diagnostic badge suggestion when a track is unavailable"
|
||
},
|
||
"clickableLookingUpArtist": "Looking up artist...",
|
||
"@clickableLookingUpArtist": {
|
||
"description": "Snackbar shown while clickable artist metadata is being resolved"
|
||
},
|
||
"clickableInformationUnavailable": "{type} information not available",
|
||
"@clickableInformationUnavailable": {
|
||
"description": "Snackbar shown when clickable metadata cannot open a destination",
|
||
"placeholders": {
|
||
"type": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"extensionDetailsTags": "Etiquetas",
|
||
"@extensionDetailsTags": {
|
||
"description": "Section title for extension tags"
|
||
},
|
||
"extensionDetailsInformation": "Información",
|
||
"@extensionDetailsInformation": {
|
||
"description": "Section title for extension metadata information"
|
||
},
|
||
"extensionUtilityFunctions": "Utility Functions",
|
||
"@extensionUtilityFunctions": {
|
||
"description": "Capability label for utility-only extensions"
|
||
},
|
||
"actionDismiss": "Descartar",
|
||
"@actionDismiss": {
|
||
"description": "Generic action - dismiss"
|
||
},
|
||
"setupChangeFolderTooltip": "Change folder",
|
||
"@setupChangeFolderTooltip": {
|
||
"description": "Tooltip for editing the selected download folder"
|
||
},
|
||
"a11yOpenTrackByArtist": "Open track {trackName} by {artistName}",
|
||
"@a11yOpenTrackByArtist": {
|
||
"description": "Accessibility label for opening a track item",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
},
|
||
"artistName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"a11yOpenItem": "Abrir {itemType} {name}",
|
||
"@a11yOpenItem": {
|
||
"description": "Accessibility label for opening a generic item",
|
||
"placeholders": {
|
||
"itemType": {
|
||
"type": "String"
|
||
},
|
||
"name": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"a11yOpenItemCount": "Abrir {title}, {count} {count, plural, =1{objeto} other{objetos}}",
|
||
"@a11yOpenItemCount": {
|
||
"description": "Accessibility label for opening a grouped item with count",
|
||
"placeholders": {
|
||
"title": {
|
||
"type": "String"
|
||
},
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"a11yOpenAlbumByArtistTrackCount": "Abrir álbum {albumName} de {artistName}, {trackCount} pistas",
|
||
"@a11yOpenAlbumByArtistTrackCount": {
|
||
"description": "Accessibility label for opening an album item with track count",
|
||
"placeholders": {
|
||
"albumName": {
|
||
"type": "String"
|
||
},
|
||
"artistName": {
|
||
"type": "String"
|
||
},
|
||
"trackCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"a11yTrackByArtist": "{trackName} de {artistName}",
|
||
"@a11yTrackByArtist": {
|
||
"description": "Accessibility label for a queue or list track item",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
},
|
||
"artistName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"a11ySelectAlbum": "Seleccionar álbum {albumName}",
|
||
"@a11ySelectAlbum": {
|
||
"description": "Accessibility label for selecting an album",
|
||
"placeholders": {
|
||
"albumName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"a11yOpenAlbum": "Abrir álbum {albumName}",
|
||
"@a11yOpenAlbum": {
|
||
"description": "Accessibility label for opening an album",
|
||
"placeholders": {
|
||
"albumName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"settingsFiles": "Archivos y carpetas",
|
||
"@settingsFiles": {
|
||
"description": "Settings menu item - file and folder settings"
|
||
},
|
||
"settingsFilesSubtitle": "Directorio de descarga, nombre de archivo y estructura de carpetas",
|
||
"@settingsFilesSubtitle": {
|
||
"description": "Subtitle for files & folders settings"
|
||
},
|
||
"settingsMetadata": "Información",
|
||
"@settingsMetadata": {
|
||
"description": "Settings menu item - metadata settings"
|
||
},
|
||
"settingsMetadataSubtitle": "Carátula, etiquetas, ReplayGain, proveedores",
|
||
"@settingsMetadataSubtitle": {
|
||
"description": "Subtitle for metadata settings"
|
||
},
|
||
"settingsLyrics": "Letra",
|
||
"@settingsLyrics": {
|
||
"description": "Settings menu item - lyrics settings"
|
||
},
|
||
"settingsLyricsSubtitle": "Insertar, modo, proveedores, opciones de idioma",
|
||
"@settingsLyricsSubtitle": {
|
||
"description": "Subtitle for lyrics settings"
|
||
},
|
||
"settingsApp": "Aplicación",
|
||
"@settingsApp": {
|
||
"description": "Settings menu item - app settings"
|
||
},
|
||
"settingsAppSubtitle": "Actualizaciones, datos, extensiones repo, depuración",
|
||
"@settingsAppSubtitle": {
|
||
"description": "Subtitle for app settings"
|
||
},
|
||
"sectionMetadataProviders": "Proveedores",
|
||
"@sectionMetadataProviders": {
|
||
"description": "Settings section header for metadata providers"
|
||
},
|
||
"sectionDuplicates": "Duplicados",
|
||
"@sectionDuplicates": {
|
||
"description": "Settings section header for deduplication"
|
||
},
|
||
"sectionLyricsProviderOptions": "Opciones del proveedor",
|
||
"@sectionLyricsProviderOptions": {
|
||
"description": "Settings section header for per-provider lyrics options"
|
||
},
|
||
"metadataProvidersTitle": "Prioridad de proveedor de información",
|
||
"@metadataProvidersTitle": {
|
||
"description": "Settings item title for metadata provider order"
|
||
},
|
||
"metadataProvidersSubtitle": "Arrastre para establecer orden de búsqueda y origen de información",
|
||
"@metadataProvidersSubtitle": {
|
||
"description": "Subtitle for metadata provider priority item"
|
||
},
|
||
"downloadDeduplication": "Saltar descargas duplicadas",
|
||
"@downloadDeduplication": {
|
||
"description": "Setting - skip tracks already in download history"
|
||
},
|
||
"downloadDeduplicationEnabled": "Las pistas previamente descargadas se omitirán",
|
||
"@downloadDeduplicationEnabled": {
|
||
"description": "Subtitle when deduplication is on"
|
||
},
|
||
"downloadDeduplicationWithQualityVariants": "Existing files at the selected quality will be skipped",
|
||
"@downloadDeduplicationWithQualityVariants": {
|
||
"description": "Deduplication subtitle when separate quality versions are allowed"
|
||
},
|
||
"downloadDeduplicationDisabled": "Todas las pistas se descargarán independientemente del historial",
|
||
"@downloadDeduplicationDisabled": {
|
||
"description": "Subtitle when deduplication is off"
|
||
},
|
||
"downloadQualityVariants": "Allow different quality versions",
|
||
"@downloadQualityVariants": {
|
||
"description": "Setting to retain multiple quality versions of the same track"
|
||
},
|
||
"downloadQualityVariantsDescription": "Keep every quality version; add its measured quality to the filename only when the name is already used",
|
||
"@downloadQualityVariantsDescription": {
|
||
"description": "Description for retaining multiple quality versions"
|
||
},
|
||
"trackOptionDownloadQualityVariant": "Download another quality",
|
||
"@trackOptionDownloadQualityVariant": {
|
||
"description": "Track menu action to download another quality version"
|
||
},
|
||
"downloadFallbackExtensions": "Reslpado de extensiones",
|
||
"@downloadFallbackExtensions": {
|
||
"description": "Settings item for configuring fallback extension providers"
|
||
},
|
||
"downloadFallbackExtensionsSubtitle": "Elige qué extensiones se pueden utilizar como alternativa",
|
||
"@downloadFallbackExtensionsSubtitle": {
|
||
"description": "Subtitle for fallback extensions item"
|
||
},
|
||
"editMetadataFieldDateHint": "AAA-MM-DD o AAAA",
|
||
"@editMetadataFieldDateHint": {
|
||
"description": "Hint text for the edit metadata date field"
|
||
},
|
||
"editMetadataFieldTrackTotal": "Total de pistas",
|
||
"@editMetadataFieldTrackTotal": {
|
||
"description": "Label for total tracks field in the edit metadata sheet"
|
||
},
|
||
"editMetadataFieldDiscTotal": "Total de discos",
|
||
"@editMetadataFieldDiscTotal": {
|
||
"description": "Label for total discs field in the edit metadata sheet"
|
||
},
|
||
"editMetadataFieldComposer": "Compositor",
|
||
"@editMetadataFieldComposer": {
|
||
"description": "Label for composer field in the edit metadata sheet"
|
||
},
|
||
"editMetadataFieldComment": "Comentario",
|
||
"@editMetadataFieldComment": {
|
||
"description": "Label for comment field in the edit metadata sheet"
|
||
},
|
||
"trackAlbumType": "Release Type",
|
||
"@trackAlbumType": {
|
||
"description": "Label for an album or release type metadata value"
|
||
},
|
||
"editMetadataFieldAlbumTypeHint": "Album, single, EP, compilation...",
|
||
"@editMetadataFieldAlbumTypeHint": {
|
||
"description": "Hint for the release type metadata field"
|
||
},
|
||
"editMetadataFieldExplicit": "Explicit",
|
||
"@editMetadataFieldExplicit": {
|
||
"description": "Label for the explicit content metadata field"
|
||
},
|
||
"editMetadataFieldExplicitHint": "Mark this track as containing explicit content",
|
||
"@editMetadataFieldExplicitHint": {
|
||
"description": "Description for the explicit content metadata switch"
|
||
},
|
||
"metadataExplicitValue": "Explicit",
|
||
"@metadataExplicitValue": {
|
||
"description": "Displayed value when a track is marked explicit"
|
||
},
|
||
"editMetadataFieldUpc": "UPC / Barcode",
|
||
"@editMetadataFieldUpc": {
|
||
"description": "Label for the release barcode metadata field"
|
||
},
|
||
"editMetadataFieldUpcHint": "Numeric UPC, EAN, or GTIN",
|
||
"@editMetadataFieldUpcHint": {
|
||
"description": "Hint for the release barcode metadata field"
|
||
},
|
||
"editMetadataAdvanced": "Avanzado",
|
||
"@editMetadataAdvanced": {
|
||
"description": "Expandable section label for advanced metadata fields"
|
||
},
|
||
"libraryFilterMetadataMissingTrackNumber": "Falta número de pista",
|
||
"@libraryFilterMetadataMissingTrackNumber": {
|
||
"description": "Filter option - items missing track number"
|
||
},
|
||
"libraryFilterMetadataMissingDiscNumber": "Falta número de álbum",
|
||
"@libraryFilterMetadataMissingDiscNumber": {
|
||
"description": "Filter option - items missing disc number"
|
||
},
|
||
"libraryFilterMetadataMissingArtist": "Falta artista",
|
||
"@libraryFilterMetadataMissingArtist": {
|
||
"description": "Filter option - items missing artist"
|
||
},
|
||
"libraryFilterMetadataIncorrectIsrcFormat": "Formato de ISRC erróneo",
|
||
"@libraryFilterMetadataIncorrectIsrcFormat": {
|
||
"description": "Filter option - items with an invalid ISRC format"
|
||
},
|
||
"libraryFilterMetadataMissingIsrc": "Missing ISRC",
|
||
"@libraryFilterMetadataMissingIsrc": {
|
||
"description": "Filter option - items without any ISRC tag"
|
||
},
|
||
"libraryFilterMetadataMissingLabel": "Falta etiqueta",
|
||
"@libraryFilterMetadataMissingLabel": {
|
||
"description": "Filter option - items missing record label"
|
||
},
|
||
"collectionDeletePlaylistsMessage": "¿Eliminar {count} {count, plural, =1{lista} other{listas de reproducción}}?",
|
||
"@collectionDeletePlaylistsMessage": {
|
||
"description": "Confirmation message for deleting selected playlists",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"collectionPlaylistsDeleted": "{count} {count, plural, =1{lista} other{listas de reproducción}} eliminadas",
|
||
"@collectionPlaylistsDeleted": {
|
||
"description": "Snackbar after deleting selected playlists",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"collectionAddedTracksToPlaylist": "Añadido {count} {count, plural, =1{track} other{tracks}} a {playlistName}",
|
||
"@collectionAddedTracksToPlaylist": {
|
||
"description": "Snackbar after adding multiple tracks to a playlist",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"playlistName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"collectionAddedTracksToPlaylistWithExisting": "Añadido {count} {count, plural, =1{pista} other{pistas}} a {playlistName} ({alreadyCount} ya en la lista de reproducción)",
|
||
"@collectionAddedTracksToPlaylistWithExisting": {
|
||
"description": "Snackbar after adding multiple tracks to a playlist when some were already present",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"playlistName": {
|
||
"type": "String"
|
||
},
|
||
"alreadyCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"itemCount": "{count} {count, plural, =1{objeto} other{objetos}}",
|
||
"@itemCount": {
|
||
"description": "Generic item count label",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"trackReEnrichSuccessWithFailures": "Información enriquecida nuevamente con éxito\n({successCount}/{total}) - Fallaron: {failedCount}",
|
||
"@trackReEnrichSuccessWithFailures": {
|
||
"description": "Snackbar summary after batch metadata re-enrichment finishes with failures",
|
||
"placeholders": {
|
||
"successCount": {
|
||
"type": "int"
|
||
},
|
||
"total": {
|
||
"type": "int"
|
||
},
|
||
"failedCount": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"selectionDeleteTracksCount": "Eliminar {count} {count, plural, =1{pista} other{pistas}}",
|
||
"@selectionDeleteTracksCount": {
|
||
"description": "Button label for deleting selected tracks",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"queueDownloadSpeedStatus": "Descargando - {speed} MB/s",
|
||
"@queueDownloadSpeedStatus": {
|
||
"description": "Queue status while downloading with speed",
|
||
"placeholders": {
|
||
"speed": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"queueDownloadStarting": "Comenzando...",
|
||
"queueCheckingDownloadSession": "Checking download session...",
|
||
"queueResolvingDownloadMetadata": "Resolving track metadata...",
|
||
"queueResolvingDownloadStream": "Preparing audio stream...",
|
||
"queueWaitingForVerification": "Waiting for verification...",
|
||
"queueResumingAfterVerification": "Resuming after verification...",
|
||
"@queueDownloadStarting": {
|
||
"description": "Queue status before download progress is available"
|
||
},
|
||
"@queueCheckingDownloadSession": {
|
||
"description": "Queue status while the download provider's session is being checked during preparation (preparationStage 'checking_session'). This is about the provider session, not about locating a finished file."
|
||
},
|
||
"a11ySelectTrack": "Seleccionar pista",
|
||
"@a11ySelectTrack": {
|
||
"description": "Accessibility label for selecting a track"
|
||
},
|
||
"a11yDeselectTrack": "No seleccionar pista",
|
||
"@a11yDeselectTrack": {
|
||
"description": "Accessibility label for deselecting a track"
|
||
},
|
||
"a11yPlayTrackByArtist": "Reproducir {trackName} de {artistName}",
|
||
"@a11yPlayTrackByArtist": {
|
||
"description": "Accessibility label for playing a local library track",
|
||
"placeholders": {
|
||
"trackName": {
|
||
"type": "String"
|
||
},
|
||
"artistName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"storeExtensionsCount": "{count} {count, plural, =1{extensión} other{extensiones}}",
|
||
"@storeExtensionsCount": {
|
||
"description": "Store extension result count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"storeRequiresVersion": "Requiere v{version}+",
|
||
"@storeRequiresVersion": {
|
||
"description": "Store compatibility badge for minimum app version",
|
||
"placeholders": {
|
||
"version": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"actionGo": "Ir",
|
||
"@actionGo": {
|
||
"description": "Generic action button label"
|
||
},
|
||
"logIssueSummary": "Resumen de incidencias",
|
||
"@logIssueSummary": {
|
||
"description": "Header for log issue analysis summary"
|
||
},
|
||
"logTotalErrors": "Total de errores: {count}",
|
||
"@logTotalErrors": {
|
||
"description": "Total error count in log issue analysis",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"logAffectedDomains": "Afectados: {domains}",
|
||
"@logAffectedDomains": {
|
||
"description": "Affected domains in log issue analysis",
|
||
"placeholders": {
|
||
"domains": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"libraryScanCancelled": "Escaneo cancelado",
|
||
"@libraryScanCancelled": {
|
||
"description": "Library scan status when a scan was cancelled"
|
||
},
|
||
"libraryScanCancelledSubtitle": "Puedes volver a intentar el escaneo cuando esté listo.",
|
||
"@libraryScanCancelledSubtitle": {
|
||
"description": "Library scan status subtitle after cancellation"
|
||
},
|
||
"libraryDownloadsHistoryExcluded": "{count} del historial de descargas (excluidos de la lista)",
|
||
"@libraryDownloadsHistoryExcluded": {
|
||
"description": "Library count note for downloaded history items excluded from the local list",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"downloadNativeWorker": "Trabajador de descarga nativo",
|
||
"@downloadNativeWorker": {
|
||
"description": "Setting title for Android native download worker"
|
||
},
|
||
"downloadNativeWorkerSubtitle": "Android background service for extension downloads",
|
||
"@downloadNativeWorkerSubtitle": {
|
||
"description": "Setting subtitle for Android native download worker"
|
||
},
|
||
"extensionServiceStatus": "Estado del servicio",
|
||
"@extensionServiceStatus": {
|
||
"description": "Extension detail section header for service status"
|
||
},
|
||
"extensionServiceHealth": "Estado de servicio",
|
||
"@extensionServiceHealth": {
|
||
"description": "Extension capability label for service health checks"
|
||
},
|
||
"extensionHealthChecksConfigured": "{count} {count, plural, =1{chequeo} other{chequeos}} ",
|
||
"@extensionHealthChecksConfigured": {
|
||
"description": "Extension service health check count",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"extensionOauthConnectHint": "Pulsa para conectar a Spotify y rellenar el campo.",
|
||
"@extensionOauthConnectHint": {
|
||
"description": "Hint for an OAuth login link field before connecting Spotify"
|
||
},
|
||
"extensionLastChecked": "Última comprobación {time}",
|
||
"@extensionLastChecked": {
|
||
"description": "Timestamp for the latest extension service health check",
|
||
"placeholders": {
|
||
"time": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"extensionRefreshStatus": "Actualizar estado",
|
||
"@extensionRefreshStatus": {
|
||
"description": "Tooltip for refreshing extension service health status"
|
||
},
|
||
"extensionCustomUrlHandling": "Gestión de URL personalizada",
|
||
"@extensionCustomUrlHandling": {
|
||
"description": "Extension detail section title for custom URL handling"
|
||
},
|
||
"extensionCustomUrlHandlingSubtitle": "Esta extensión puede manejar enlaces de estos sitios",
|
||
"@extensionCustomUrlHandlingSubtitle": {
|
||
"description": "Extension detail subtitle for custom URL handling"
|
||
},
|
||
"extensionCustomUrlHandlingShareHint": "Comparte enlaces de estos sitios a SpotiFLAC Mobile y esta extensión los manejará.",
|
||
"@extensionCustomUrlHandlingShareHint": {
|
||
"description": "Extension detail hint explaining share-to-app URL handling"
|
||
},
|
||
"extensionSettingsCount": "{count} {count, plural, =1{ajuste} other{ajustes}}",
|
||
"@extensionSettingsCount": {
|
||
"description": "Count of settings exposed by an extension quality option",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"extensionHealthOnline": "En línea",
|
||
"@extensionHealthOnline": {
|
||
"description": "Extension service health status - online"
|
||
},
|
||
"extensionHealthDegraded": "Degradado",
|
||
"@extensionHealthDegraded": {
|
||
"description": "Extension service health status - degraded"
|
||
},
|
||
"extensionHealthOffline": "Sin conexión",
|
||
"@extensionHealthOffline": {
|
||
"description": "Extension service health status - offline"
|
||
},
|
||
"extensionHealthNotConfigured": "Sin configurar",
|
||
"@extensionHealthNotConfigured": {
|
||
"description": "Extension service health status - not configured"
|
||
},
|
||
"extensionHealthUnknown": "Desconocido",
|
||
"@extensionHealthUnknown": {
|
||
"description": "Extension service health status - unknown"
|
||
},
|
||
"extensionHealthRequired": "requerido",
|
||
"@extensionHealthRequired": {
|
||
"description": "Label for a required extension service health check"
|
||
},
|
||
"extensionSettingNotSet": "Sin establecer",
|
||
"@extensionSettingNotSet": {
|
||
"description": "Value shown when an extension setting has no value"
|
||
},
|
||
"extensionActionFailed": "Error de acción",
|
||
"@extensionActionFailed": {
|
||
"description": "Fallback error when an extension action fails without details"
|
||
},
|
||
"extensionEnterValue": "Ingrese un valor",
|
||
"@extensionEnterValue": {
|
||
"description": "Hint for editing an extension setting value"
|
||
},
|
||
"extensionHealthServiceOnline": "Servicio en línea",
|
||
"@extensionHealthServiceOnline": {
|
||
"description": "Tooltip for online extension service"
|
||
},
|
||
"extensionHealthServiceDegraded": "Servicio degradado",
|
||
"@extensionHealthServiceDegraded": {
|
||
"description": "Tooltip for degraded extension service"
|
||
},
|
||
"extensionHealthServiceOffline": "Servicio fuera de línea",
|
||
"@extensionHealthServiceOffline": {
|
||
"description": "Tooltip for offline extension service"
|
||
},
|
||
"extensionHealthServiceUnknown": "Estado de servicio desconocido",
|
||
"@extensionHealthServiceUnknown": {
|
||
"description": "Tooltip for unknown extension service health"
|
||
},
|
||
"audioAnalysisStereo": "Estéreo",
|
||
"@audioAnalysisStereo": {
|
||
"description": "Audio channel layout label - stereo"
|
||
},
|
||
"audioAnalysisMono": "Mono",
|
||
"@audioAnalysisMono": {
|
||
"description": "Audio channel layout label - mono"
|
||
},
|
||
"trackOpenInService": "Abrir en {serviceName}",
|
||
"@trackOpenInService": {
|
||
"description": "Button label to open a track in a named music service",
|
||
"placeholders": {
|
||
"serviceName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackLyricsEmbeddedSource": "Incrustado",
|
||
"@trackLyricsEmbeddedSource": {
|
||
"description": "Lyrics source label for embedded lyrics"
|
||
},
|
||
"unknownAlbum": "Álbum desconocido",
|
||
"@unknownAlbum": {
|
||
"description": "Fallback album name when metadata is missing"
|
||
},
|
||
"unknownArtist": "Artista desconocido",
|
||
"@unknownArtist": {
|
||
"description": "Fallback artist name when metadata is missing"
|
||
},
|
||
"permissionAudio": "Audio",
|
||
"@permissionAudio": {
|
||
"description": "Audio permission type label"
|
||
},
|
||
"permissionStorage": "Almacenamiento",
|
||
"@permissionStorage": {
|
||
"description": "Storage permission type label"
|
||
},
|
||
"permissionNotification": "Notificación",
|
||
"@permissionNotification": {
|
||
"description": "Notification permission type label"
|
||
},
|
||
"errorInvalidFolderSelected": "Directorio seleccionado inválido",
|
||
"@errorInvalidFolderSelected": {
|
||
"description": "Error when the selected folder is invalid"
|
||
},
|
||
"storeAnyVersion": "Cualquier",
|
||
"@storeAnyVersion": {
|
||
"description": "Store detail value when any app version is accepted"
|
||
},
|
||
"storeCategoryMetadata": "Información",
|
||
"@storeCategoryMetadata": {
|
||
"description": "Store extension category - metadata"
|
||
},
|
||
"storeCategoryDownload": "Descargar",
|
||
"@storeCategoryDownload": {
|
||
"description": "Store extension category - download"
|
||
},
|
||
"storeCategoryUtility": "Utilidad",
|
||
"@storeCategoryUtility": {
|
||
"description": "Store extension category - utility"
|
||
},
|
||
"storeCategoryLyrics": "Letras",
|
||
"@storeCategoryLyrics": {
|
||
"description": "Store extension category - lyrics"
|
||
},
|
||
"storeCategoryIntegration": "Integración",
|
||
"@storeCategoryIntegration": {
|
||
"description": "Store extension category - integration"
|
||
},
|
||
"artistReleases": "Lanzamientos",
|
||
"@artistReleases": {
|
||
"description": "Section header for all artist releases"
|
||
},
|
||
"editMetadataSelectNone": "None",
|
||
"@editMetadataSelectNone": {
|
||
"description": "Button to clear selected fields for auto-fill"
|
||
},
|
||
"queueRetryAllFailed": "Retry {count} failed",
|
||
"@queueRetryAllFailed": {
|
||
"description": "Button to retry every failed download in the queue",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"settingsSaveDownloadHistory": "Save download history",
|
||
"@settingsSaveDownloadHistory": {
|
||
"description": "Settings switch title for storing completed downloads in history"
|
||
},
|
||
"settingsSaveDownloadHistorySubtitle": "Keep completed downloads in history and library views",
|
||
"@settingsSaveDownloadHistorySubtitle": {
|
||
"description": "Settings switch subtitle for storing completed downloads in history"
|
||
},
|
||
"dialogDisableHistoryTitle": "Turn off download history?",
|
||
"@dialogDisableHistoryTitle": {
|
||
"description": "Confirmation dialog title shown before disabling download history"
|
||
},
|
||
"dialogDisableHistoryMessage": "Existing history will be cleared. Downloaded files will not be deleted.",
|
||
"@dialogDisableHistoryMessage": {
|
||
"description": "Confirmation dialog message shown before disabling download history"
|
||
},
|
||
"dialogDisableAndClear": "Turn off and clear",
|
||
"@dialogDisableAndClear": {
|
||
"description": "Confirmation action to disable download history and clear existing entries"
|
||
},
|
||
"openInOtherServices": "Open in Other Services",
|
||
"@openInOtherServices": {
|
||
"description": "Title and tooltip for finding the current collection in other services"
|
||
},
|
||
"shareSheetNoExtensions": "No other compatible services",
|
||
"@shareSheetNoExtensions": {
|
||
"description": "Empty state when no extensions can be searched for cross-service links"
|
||
},
|
||
"shareSheetNotFound": "Not found",
|
||
"@shareSheetNotFound": {
|
||
"description": "Cross-service share sheet row subtitle when a service has no match"
|
||
},
|
||
"shareSheetCopyLink": "Copy Link",
|
||
"@shareSheetCopyLink": {
|
||
"description": "Tooltip for copying a cross-service link"
|
||
},
|
||
"shareSheetLinkCopied": "{service} link copied",
|
||
"@shareSheetLinkCopied": {
|
||
"description": "Snackbar after copying a cross-service link",
|
||
"placeholders": {
|
||
"service": {}
|
||
}
|
||
},
|
||
"libraryPlayback": "Playback",
|
||
"@libraryPlayback": {
|
||
"description": "Section header for playback settings in library settings"
|
||
},
|
||
"libraryExternalPlayer": "External player",
|
||
"@libraryExternalPlayer": {
|
||
"description": "Setting option to use an external music player"
|
||
},
|
||
"libraryExternalPlayerSubtitle": "Recommended for listening, best quality, gapless playback, EQ, and wider format support",
|
||
"@libraryExternalPlayerSubtitle": {
|
||
"description": "Subtitle for external player option"
|
||
},
|
||
"libraryBuiltInPreviewPlayer": "Built-in preview player",
|
||
"@libraryBuiltInPreviewPlayer": {
|
||
"description": "Setting option to use the built-in preview player"
|
||
},
|
||
"libraryBuiltInPreviewPlayerSubtitle": "Quick local previews inside SpotiFLAC Mobile",
|
||
"@libraryBuiltInPreviewPlayerSubtitle": {
|
||
"description": "Subtitle for built-in preview player option"
|
||
},
|
||
"libraryBuiltInPlayerInfo": "The built-in player is a preview tool for checking local tracks quickly. Use an external music player for actual listening.",
|
||
"@libraryBuiltInPlayerInfo": {
|
||
"description": "Info note explaining the built-in player is for previews only"
|
||
},
|
||
"nowPlayingTitle": "Now Playing",
|
||
"@nowPlayingTitle": {
|
||
"description": "Title for the now playing screen"
|
||
},
|
||
"nowPlayingNothingPlaying": "Nothing is playing",
|
||
"@nowPlayingNothingPlaying": {
|
||
"description": "Empty state when no track is currently playing"
|
||
},
|
||
"nowPlayingMinimize": "Minimize",
|
||
"@nowPlayingMinimize": {
|
||
"description": "Tooltip for minimizing the now playing screen"
|
||
},
|
||
"nowPlayingUpNext": "Up next",
|
||
"@nowPlayingUpNext": {
|
||
"description": "Title for the playback queue sheet"
|
||
},
|
||
"nowPlayingPreviousTrack": "Previous track",
|
||
"@nowPlayingPreviousTrack": {
|
||
"description": "Tooltip for the previous-track playback control"
|
||
},
|
||
"nowPlayingNextTrack": "Next track",
|
||
"@nowPlayingNextTrack": {
|
||
"description": "Tooltip for the next-track playback control"
|
||
},
|
||
"nowPlayingDetails": "Details",
|
||
"@nowPlayingDetails": {
|
||
"description": "Menu item and section title for track metadata details"
|
||
},
|
||
"nowPlayingSleepTimer": "Sleep timer",
|
||
"@nowPlayingSleepTimer": {
|
||
"description": "Menu item and sheet title for the playback sleep timer"
|
||
},
|
||
"nowPlayingSleepTimerActive": "Ends at {time}",
|
||
"@nowPlayingSleepTimerActive": {
|
||
"description": "Active sleep timer deadline shown in the player menu",
|
||
"placeholders": {
|
||
"time": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"nowPlayingSleepTimerMinutes": "{minutes, plural, =1{1 minute} other{{minutes} minutes}}",
|
||
"@nowPlayingSleepTimerMinutes": {
|
||
"description": "Duration choice for the playback sleep timer",
|
||
"placeholders": {
|
||
"minutes": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"nowPlayingSleepTimerOff": "Turn off sleep timer",
|
||
"@nowPlayingSleepTimerOff": {
|
||
"description": "Action to cancel the active playback sleep timer"
|
||
},
|
||
"nowPlayingSleepTimerSet": "Sleep timer set for {duration}",
|
||
"@nowPlayingSleepTimerSet": {
|
||
"description": "Confirmation after setting the playback sleep timer",
|
||
"placeholders": {
|
||
"duration": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"nowPlayingSleepTimerCancelled": "Sleep timer turned off",
|
||
"@nowPlayingSleepTimerCancelled": {
|
||
"description": "Confirmation after cancelling the playback sleep timer"
|
||
},
|
||
"nowPlayingOpenInExternalPlayer": "Open in external player",
|
||
"@nowPlayingOpenInExternalPlayer": {
|
||
"description": "Menu item to open the current track in an external player"
|
||
},
|
||
"nowPlayingTabPlayer": "Player",
|
||
"@nowPlayingTabPlayer": {
|
||
"description": "Tab label for the player view"
|
||
},
|
||
"nowPlayingTabLyrics": "Lyrics",
|
||
"@nowPlayingTabLyrics": {
|
||
"description": "Tab label for the lyrics view"
|
||
},
|
||
"nowPlayingNoLyrics": "No lyrics in this file",
|
||
"@nowPlayingNoLyrics": {
|
||
"description": "Empty state when the playing file has no embedded lyrics"
|
||
},
|
||
"nowPlayingLibraryEmpty": "Your library is empty",
|
||
"@nowPlayingLibraryEmpty": {
|
||
"description": "Snackbar when shuffle library is requested but library has no tracks"
|
||
},
|
||
"nowPlayingShuffleLibraryFailed": "Could not shuffle library: {error}",
|
||
"@nowPlayingShuffleLibraryFailed": {
|
||
"description": "Snackbar when shuffling the library fails",
|
||
"placeholders": {
|
||
"error": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"nowPlayingShuffleOn": "Shuffle on",
|
||
"@nowPlayingShuffleOn": {
|
||
"description": "Tooltip when shuffle mode is enabled"
|
||
},
|
||
"nowPlayingPlayInOrder": "Play in order",
|
||
"@nowPlayingPlayInOrder": {
|
||
"description": "Tooltip when shuffle mode is disabled"
|
||
},
|
||
"nowPlayingShuffleLibrary": "Shuffle library",
|
||
"@nowPlayingShuffleLibrary": {
|
||
"description": "Button label to shuffle and play the entire local library"
|
||
},
|
||
"nowPlayingQueueEmpty": "Queue is empty",
|
||
"@nowPlayingQueueEmpty": {
|
||
"description": "Empty state when the playback queue has no items"
|
||
},
|
||
"nowPlayingNoMetadata": "No metadata available",
|
||
"@nowPlayingNoMetadata": {
|
||
"description": "Empty state when track metadata cannot be loaded"
|
||
},
|
||
"announcementUnableToOpenLink": "Unable to open link. Please try again.",
|
||
"@announcementUnableToOpenLink": {
|
||
"description": "Snackbar shown when an announcement CTA link cannot be opened"
|
||
},
|
||
"trackConvertLosslessOutputWithCap": "Lossless output with {quality} cap",
|
||
"@trackConvertLosslessOutputWithCap": {
|
||
"description": "Hint shown when lossless conversion will cap bit depth or sample rate",
|
||
"placeholders": {
|
||
"quality": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackConvertConfirmMessageLosslessCapped": "Convert from {sourceFormat} to {targetFormat} ({quality})?\n\nThe output stays in a lossless codec, but bit depth/sample rate will be capped. Original file will be deleted after conversion.",
|
||
"@trackConvertConfirmMessageLosslessCapped": {
|
||
"description": "Confirmation dialog message for capped lossless conversion of a single file",
|
||
"placeholders": {
|
||
"sourceFormat": {
|
||
"type": "String"
|
||
},
|
||
"targetFormat": {
|
||
"type": "String"
|
||
},
|
||
"quality": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"selectionBatchConvertConfirmMessageLosslessCapped": "Convert {count} {count, plural, =1{track} other{tracks}} to {format} ({quality})?\n\nThe output stays in a lossless codec, but bit depth/sample rate will be capped. Original files will be deleted after conversion.",
|
||
"@selectionBatchConvertConfirmMessageLosslessCapped": {
|
||
"description": "Confirmation dialog message for capped lossless batch conversion",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
},
|
||
"format": {
|
||
"type": "String"
|
||
},
|
||
"quality": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackConvertActionLabelLossless": "{sourceFormat} → {targetFormat} ({quality})",
|
||
"@trackConvertActionLabelLossless": {
|
||
"description": "Convert button label for lossless conversion with quality cap",
|
||
"placeholders": {
|
||
"sourceFormat": {
|
||
"type": "String"
|
||
},
|
||
"targetFormat": {
|
||
"type": "String"
|
||
},
|
||
"quality": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"trackConvertActionLabelLossy": "{sourceFormat} → {targetFormat} @ {bitrate}",
|
||
"@trackConvertActionLabelLossy": {
|
||
"description": "Convert button label for lossy conversion",
|
||
"placeholders": {
|
||
"sourceFormat": {
|
||
"type": "String"
|
||
},
|
||
"targetFormat": {
|
||
"type": "String"
|
||
},
|
||
"bitrate": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"aboutPaxsenixSubtitle": "Lyrics proxy for Musixmatch, Netease, Apple Music, QQ Music, Spotify, Deezer, YouTube, Kugou, and Genius",
|
||
"@aboutPaxsenixSubtitle": {
|
||
"description": "Subtitle for Paxsenix special thanks entry on the about page"
|
||
},
|
||
"snackbarPlayingNext": "Playing next",
|
||
"@snackbarPlayingNext": {
|
||
"description": "Snackbar when a track is inserted as the next queue item"
|
||
},
|
||
"snackbarAddedToQueueGeneric": "Added to queue",
|
||
"@snackbarAddedToQueueGeneric": {
|
||
"description": "Snackbar when a track is added to the playback queue without naming it"
|
||
},
|
||
"selectionDeletePlaylistsCount": "Delete {count} {count, plural, =1{playlist} other{playlists}}",
|
||
"@selectionDeletePlaylistsCount": {
|
||
"description": "Button label for deleting multiple selected playlists",
|
||
"placeholders": {
|
||
"count": {
|
||
"type": "int"
|
||
}
|
||
}
|
||
},
|
||
"actionShuffle": "Shuffle",
|
||
"@actionShuffle": {
|
||
"description": "Tooltip for shuffle playback action"
|
||
},
|
||
"downloadPrimaryArtistOnlyOn": "Primary only: On",
|
||
"@downloadPrimaryArtistOnlyOn": {
|
||
"description": "Status label when primary-artist-only folder naming is enabled"
|
||
},
|
||
"downloadPrimaryArtistOnlyOff": "Primary only: Off",
|
||
"@downloadPrimaryArtistOnlyOff": {
|
||
"description": "Status label when primary-artist-only folder naming is disabled"
|
||
},
|
||
"downloadAlbumArtistMetadataPrimaryOnly": "Album Artist metadata: Primary only",
|
||
"@downloadAlbumArtistMetadataPrimaryOnly": {
|
||
"description": "Status label when album-artist folder filtering uses primary artist only"
|
||
},
|
||
"downloadAlbumArtistMetadataFull": "Album Artist metadata: Full",
|
||
"@downloadAlbumArtistMetadataFull": {
|
||
"description": "Status label when album-artist folder filtering uses full metadata"
|
||
},
|
||
"trackConvertOriginal": "Original",
|
||
"@trackConvertOriginal": {
|
||
"description": "Label for keeping original bit depth or sample rate during conversion"
|
||
},
|
||
"trackConvertOriginalQuality": "Original quality",
|
||
"@trackConvertOriginalQuality": {
|
||
"description": "Label when no bit depth or sample rate cap is applied during lossless conversion"
|
||
},
|
||
"trackConvertLosslessSuffix": "Lossless",
|
||
"@trackConvertLosslessSuffix": {
|
||
"description": "Suffix used in converted lossless quality labels"
|
||
},
|
||
"trackConvertDithering": "Dithering",
|
||
"@trackConvertDithering": {
|
||
"description": "Section label for lossless conversion dithering options"
|
||
},
|
||
"trackConvertResampler": "Resampler",
|
||
"@trackConvertResampler": {
|
||
"description": "Section label for lossless conversion resampler options"
|
||
},
|
||
"trackConvertDitherNone": "None",
|
||
"@trackConvertDitherNone": {
|
||
"description": "Lossless conversion dither option with no dithering applied"
|
||
},
|
||
"trackConvertDitherTriangular": "TPDF",
|
||
"@trackConvertDitherTriangular": {
|
||
"description": "Lossless conversion triangular probability density function dither option"
|
||
},
|
||
"trackConvertDitherTriangularHp": "Triangular HP",
|
||
"@trackConvertDitherTriangularHp": {
|
||
"description": "Lossless conversion high-pass triangular dither option"
|
||
},
|
||
"trackConvertResamplerSwr": "SWR",
|
||
"@trackConvertResamplerSwr": {
|
||
"description": "Lossless conversion default FFmpeg swresample resampler option"
|
||
},
|
||
"trackConvertResamplerSoxr": "SoXr",
|
||
"@trackConvertResamplerSoxr": {
|
||
"description": "Lossless conversion SoX resampler option"
|
||
},
|
||
"updateSeeReleaseNotes": "See release notes for details.",
|
||
"@updateSeeReleaseNotes": {
|
||
"description": "Fallback changelog text when release notes cannot be parsed"
|
||
},
|
||
"unknownTitle": "Unknown title",
|
||
"@unknownTitle": {
|
||
"description": "Fallback track title when metadata is missing"
|
||
},
|
||
"trackPlayNext": "Play next",
|
||
"@trackPlayNext": {
|
||
"description": "Menu action to play a track as the next queue item"
|
||
},
|
||
"trackAddToQueue": "Add to queue",
|
||
"@trackAddToQueue": {
|
||
"description": "Menu action to add a track to the playback queue"
|
||
},
|
||
"snackbarExtensionInstalledEnable": "{extensionName} installed. Enable it in Settings > Extensions",
|
||
"@snackbarExtensionInstalledEnable": {
|
||
"description": "Snackbar after installing an extension from the repo tab",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}",
|
||
"@snackbarExtensionUpdatedVersion": {
|
||
"description": "Snackbar after updating an extension from the repo tab",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
},
|
||
"version": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarFailedToInstallNamed": "Failed to install {extensionName}",
|
||
"@snackbarFailedToInstallNamed": {
|
||
"description": "Snackbar when extension install fails in the repo tab",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"snackbarFailedToUpdateNamed": "Failed to update {extensionName}",
|
||
"@snackbarFailedToUpdateNamed": {
|
||
"description": "Snackbar when extension update fails in the repo tab",
|
||
"placeholders": {
|
||
"extensionName": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"releaseTypeEp": "EP",
|
||
"@releaseTypeEp": {
|
||
"description": "Badge label for EP releases"
|
||
},
|
||
"releaseTypeSingle": "Single",
|
||
"@releaseTypeSingle": {
|
||
"description": "Badge label for single releases"
|
||
},
|
||
"trackCoverOnline": "Online cover",
|
||
"@trackCoverOnline": {
|
||
"description": "Label shown when metadata autofill downloaded cover art from the internet"
|
||
},
|
||
"regionCountryUS": "United States",
|
||
"@regionCountryUS": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryGB": "United Kingdom",
|
||
"@regionCountryGB": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryFR": "France",
|
||
"@regionCountryFR": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryDE": "Germany",
|
||
"@regionCountryDE": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryJP": "Japan",
|
||
"@regionCountryJP": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryKR": "South Korea",
|
||
"@regionCountryKR": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryIN": "India",
|
||
"@regionCountryIN": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryID": "Indonesia",
|
||
"@regionCountryID": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryBR": "Brazil",
|
||
"@regionCountryBR": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryMX": "Mexico",
|
||
"@regionCountryMX": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryAU": "Australia",
|
||
"@regionCountryAU": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryCA": "Canada",
|
||
"@regionCountryCA": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"regionCountryXK": "Kosovo",
|
||
"@regionCountryXK": {
|
||
"description": "Country name for SongLink region picker"
|
||
},
|
||
"extensionVerificationBrowserTitle": "Verification browser",
|
||
"@extensionVerificationBrowserTitle": {
|
||
"description": "Settings option title for extension verification browser preference"
|
||
},
|
||
"extensionVerificationBrowserSubtitleExternal": "Open challenges in the default browser first",
|
||
"@extensionVerificationBrowserSubtitleExternal": {
|
||
"description": "Subtitle when external browser is preferred for extension verification"
|
||
},
|
||
"extensionVerificationBrowserSubtitleInApp": "Open challenges in the in-app browser first",
|
||
"@extensionVerificationBrowserSubtitleInApp": {
|
||
"description": "Subtitle when in-app browser is preferred for extension verification"
|
||
},
|
||
"extensionVerificationBrowserExternal": "External",
|
||
"@extensionVerificationBrowserExternal": {
|
||
"description": "Chip label for external browser verification mode"
|
||
},
|
||
"extensionVerificationBrowserInApp": "In-app",
|
||
"@extensionVerificationBrowserInApp": {
|
||
"description": "Chip label for in-app browser verification mode"
|
||
},
|
||
"extensionVerificationUnavailable": "No verification page is available for {extension}. Retry the download to request a new challenge.",
|
||
"@extensionVerificationUnavailable": {
|
||
"description": "Shown when the app cannot retrieve a pending verification challenge",
|
||
"placeholders": {
|
||
"extension": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"extensionVerificationHelpTitleManual": "Open verification manually",
|
||
"@extensionVerificationHelpTitleManual": {
|
||
"description": "Dialog title when automatic browser launch for verification fails"
|
||
},
|
||
"extensionVerificationHelpTitleWaiting": "Verification still waiting",
|
||
"@extensionVerificationHelpTitleWaiting": {
|
||
"description": "Dialog title when verification is taking longer than expected"
|
||
},
|
||
"extensionVerificationHelpMessageManual": "SpotiFLAC Mobile could not open the browser automatically. Open this link in your browser, or copy it manually.",
|
||
"@extensionVerificationHelpMessageManual": {
|
||
"description": "Dialog message when automatic browser launch for verification fails"
|
||
},
|
||
"extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.",
|
||
"@extensionVerificationHelpMessageWaiting": {
|
||
"description": "Dialog message when verification may need manual browser help"
|
||
},
|
||
"extensionVerificationClose": "Close",
|
||
"@extensionVerificationClose": {
|
||
"description": "Button to dismiss the extension verification help dialog"
|
||
},
|
||
"extensionVerificationCopyLink": "Copy link",
|
||
"@extensionVerificationCopyLink": {
|
||
"description": "Button to copy the extension verification URL"
|
||
},
|
||
"extensionVerificationLinkCopied": "Verification link copied",
|
||
"@extensionVerificationLinkCopied": {
|
||
"description": "Snackbar after copying the extension verification URL"
|
||
},
|
||
"extensionVerificationOpenBrowser": "Open browser",
|
||
"@extensionVerificationOpenBrowser": {
|
||
"description": "Button to open the extension verification URL in a browser"
|
||
},
|
||
"settingsSearchHint": "Search settings",
|
||
"@settingsSearchHint": {
|
||
"description": "Placeholder of the search field on the Settings tab"
|
||
},
|
||
"settingsSearchNoResults": "No settings match \"{query}\"",
|
||
"@settingsSearchNoResults": {
|
||
"description": "Shown when a Settings search returns nothing",
|
||
"placeholders": {
|
||
"query": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"settingsGroupInterface": "Extensions & appearance",
|
||
"@settingsGroupInterface": {
|
||
"description": "Settings group covering look and feel"
|
||
},
|
||
"settingsGroupContent": "Content & metadata",
|
||
"@settingsGroupContent": {
|
||
"description": "Settings group covering the library, metadata and lyrics"
|
||
},
|
||
"settingsGroupDownloads": "Downloads & files",
|
||
"@settingsGroupDownloads": {
|
||
"description": "Settings group covering download behaviour and storage"
|
||
},
|
||
"settingsGroupSystem": "System",
|
||
"@settingsGroupSystem": {
|
||
"description": "Settings group covering app-level data, cache and logs"
|
||
},
|
||
"settingsGroupHelp": "About & support",
|
||
"@settingsGroupHelp": {
|
||
"description": "Settings group covering the about page and donations"
|
||
},
|
||
"libraryFilterMetadataMissingLyrics": "Missing lyrics",
|
||
"@libraryFilterMetadataMissingLyrics": {
|
||
"description": "Filter option for tracks without embedded or sidecar lyrics"
|
||
},
|
||
"trackOptionCopyTrackName": "Copy track name",
|
||
"@trackOptionCopyTrackName": {
|
||
"description": "Track menu action that copies the track title"
|
||
},
|
||
"trackOptionCopyArtist": "Copy artist",
|
||
"@trackOptionCopyArtist": {
|
||
"description": "Track menu action that copies the artist name"
|
||
},
|
||
"trackOptionCopyTrackAndArtist": "Copy track and artist",
|
||
"@trackOptionCopyTrackAndArtist": {
|
||
"description": "Track menu action that copies the track title and artist"
|
||
},
|
||
"metadataCopyValue": "Copy value",
|
||
"@metadataCopyValue": {
|
||
"description": "Metadata menu action that copies only the selected value"
|
||
},
|
||
"metadataCopyField": "Copy field and value",
|
||
"@metadataCopyField": {
|
||
"description": "Metadata menu action that copies the selected key and value"
|
||
},
|
||
"mornyeShowTabs": "Show tabs",
|
||
"mornyeSearch": "Search",
|
||
"mornyeContinuePlaying": "Continue Playing",
|
||
"metadataCopyAll": "Copy all metadata",
|
||
"@metadataCopyAll": {
|
||
"description": "Metadata menu action that copies every visible key and value"
|
||
},
|
||
"optionsEmbeddedCoverSize": "Embedded Cover Size",
|
||
"@optionsEmbeddedCoverSize": {
|
||
"description": "Metadata setting that limits downloaded artwork resolution before it is embedded"
|
||
},
|
||
"optionsEmbeddedCoverSizeDescription": "Downscale remotely downloaded cover art before embedding it. Images already within the limit are kept unchanged.",
|
||
"@optionsEmbeddedCoverSizeDescription": {
|
||
"description": "Description shown in the embedded cover size picker"
|
||
},
|
||
"mornyeFavorite": "Favorite",
|
||
"mornyeGoToArtist": "Go to Artist",
|
||
"@mornyeFavorite": {
|
||
"description": "Compact context menu action that adds a track to Loved"
|
||
},
|
||
"mornyeFavorited": "Favorited",
|
||
"@mornyeFavorited": {
|
||
"description": "Selected state of the compact favorite action"
|
||
},
|
||
"autoMixDescription": "Blend songs with beat matching and pitch-preserving tempo adjustment. Uses crossfade when beats cannot be matched.",
|
||
"autoMixOn": "AutoMix on",
|
||
"autoMixOff": "AutoMix off",
|
||
"profileTitle": "Profile",
|
||
"profileSetUp": "Set up your profile",
|
||
"profileEdit": "Edit name and photo",
|
||
"backupIncludesProfile": "Includes your profile name and photo",
|
||
"profileName": "Name",
|
||
"profileNameHint": "Your name",
|
||
"profileChangePhoto": "Choose photo",
|
||
"profileRemovePhoto": "Remove photo",
|
||
"profilePhotoError": "Choose a valid image smaller than 20 MB.",
|
||
"profileSaveError": "Could not save your profile. Please try again.",
|
||
"optionsEmbeddedCoverSizeOriginal": "Original resolution",
|
||
"@optionsEmbeddedCoverSizeOriginal": {
|
||
"description": "Option that preserves the provider artwork at its original resolution"
|
||
}
|
||
}
|