{
"language": {
"display_name": "Español (Spanish)",
"select_language": "Seleccionar idioma:",
"current_language": "Idioma actual: {language}",
"restart_required": "Los cambios de idioma tendrán efecto después de reiniciar la aplicación.",
"english": "Inglés",
"spanish": "Español (Spanish)",
"portuguese": "Português (Portuguese)",
"russian": "Русский (Russian)",
"chinese": "中文 (简体) (Chinese Simplified)",
"german": "Deutsch (German)",
"french": "Français (French)",
"hindi": "Hindi",
"indonesian": "Indonesio",
"turkish": "Turco",
"polish": "Polaco",
"italian": "Italiano",
"arabic": "Árabe",
"japanese": "Japonés"
},
"app": {
"title": "YTSage",
"version": "v{version}",
"ready": "Listo"
},
"buttons": {
"reset": "Restablecer",
"download": "Descargar",
"pause": "Pausar",
"resume": "Reanudar",
"cancel": "Cancelar",
"browse": "Examinar",
"clear": "Limpiar",
"ok": "Aceptar",
"apply": "Aplicar",
"close": "Cerrar",
"run_command": "Ejecutar Comando",
"about": "Acerca de",
"update": "Actualizar",
"analyze": "Analizar",
"paste_url": "Pegar URL",
"select_videos": "Seleccionar Videos...",
"video": "Video",
"audio_only": "Solo Audio",
"custom_options": "Opciones Personalizadas",
"trim_video": "Recortar Video",
"download_settings": "Configuración de Descarga",
"select_defaults": "Seleccionar Predeterminados",
"select_all": "Seleccionar Todos",
"deselect_all": "Deseleccionar Todos",
"open_folder": "Abrir ubicación de carpeta",
"history": "Historial"
},
"dialogs": {
"custom_options": "Opciones Personalizadas",
"settings": "Configuración",
"select_folder": "Seleccionar Carpeta de Descarga",
"sponsorblock_categories": "Categorías SponsorBlock",
"sponsorblock_description": "Selecciona qué tipos de segmentos de video se eliminarán automáticamente durante la descarga.\nSponsorBlock utiliza datos enviados por la comunidad para identificar estos segmentos.",
"select_subtitles": "Seleccionar Subtítulos",
"filter_languages_placeholder": "Filtrar idiomas (ej., en, es)...",
"no_subtitles_available": "No hay subtítulos disponibles",
"matching": "que coincidan con",
"ytdlp_log_title": "Registro de yt-dlp"
},
"tabs": {
"cookies": "Iniciar sesión con Cookies",
"custom_command": "Comando Personalizado",
"proxy": "Proxy",
"language": "Idioma",
"updater": "Actualizador"
},
"cookies": {
"help_text": "Elige cómo proporcionar cookies para iniciar sesión.\nEsto permite la descarga de videos privados y audio de calidad premium.",
"cookie_source": "Origen de Cookie",
"use_cookie_file": "Usar archivo de cookie (formato Netscape)",
"extract_from_browser": "Extraer cookies del navegador",
"recommended": "Recomendado",
"cookie_file": "Archivo de Cookie",
"cookie_file_placeholder": "Ruta al archivo de cookies (formato Netscape)",
"browser_selection": "Selección de Navegador",
"browser_help": "Selecciona el navegador del cual extraer cookies. Asegúrate de que el navegador esté cerrado antes de la extracción.",
"browser_label": "Navegador:",
"profile_label": "Perfil (opcional):",
"profile_placeholder": "Nombre o ruta del perfil (dejar vacío para el predeterminado)",
"browser_extract_message": "Las cookies del navegador se extraerán al aplicar",
"file_selected_message": "Archivo de cookies seleccionado - Haz clic en Aceptar para aplicar",
"select_file_title": "Seleccionar Archivo de Cookies",
"file_filter": "Archivos de cookies (*.txt *.lwp)",
"file_selected_title": "Archivo de Cookies Aplicado",
"file_applied_message": "Archivo de cookies aplicado: {path}",
"browser_selected_title": "Cookies del Navegador Aplicadas",
"browser_applied_message": "Las cookies del navegador se extraerán de: {browser}",
"cleared_title": "Cookies Borradas",
"cleared_message": "La configuración de cookies se ha borrado",
"active_browser": "✓ Activas: cookies del navegador ({browser})",
"active_file": "✓ Activo: archivo de cookies ({file})",
"none_active": "○ No hay cookies activas"
},
"custom_command": {
"help_text": "Ingresa tu comando yt-dlp personalizado a continuación. La URL actual se añadirá automáticamente.
Para ver la lista completa de opciones y ejemplos de uso, haz clic aquí para ver la documentación oficial de yt-dlp.
Nota: La ruta de descarga y la plantilla de nombre de archivo se manejarán automáticamente.",
"input_label": "Argumentos de yt-dlp:",
"input_placeholder": "Ingresa argumentos de yt-dlp aquí...\n\nej. --extract-audio --audio-format mp3",
"output_label": "Salida del Comando:",
"output_placeholder": "La salida del comando aparecerá aquí...",
"full_command": "🔧 Comando completo: {command}",
"command_failed": "❌ El comando falló con código de salida {code}",
"command_success": "✅ ¡Comando completado exitosamente!",
"command_error": "❌ Error ejecutando comando: {error}",
"error_no_url": "❌ Error: No se proporcionó URL. Ingresa una URL en la ventana principal.",
"error_no_command": "❌ Error: No se proporcionó comando. Ingresa argumentos de yt-dlp.",
"executing": "🚀 Ejecutando comando personalizado de yt-dlp",
"url_label": "📍 URL: {url}",
"args_label": "⚙️ Argumentos: {command}",
"download_path_label": "📁 Ruta de descarga: {path}",
"separator": "=================================================="
},
"proxy": {
"help_text": "Configurar ajustes de proxy para conexiones de red y geo-verificación.\nEl proxy puede ayudar a evitar restricciones regionales y mejorar el rendimiento de descarga.",
"main_proxy": "Proxy Principal",
"main_proxy_help": "Usar el proxy HTTP/HTTPS/SOCKS especificado para todas las conexiones.",
"proxy_url_label": "URL del Proxy:",
"proxy_url_placeholder": "ej., http://proxy.example.com:8080 o socks5://user:pass@127.0.0.1:1080",
"proxy_examples": "Ejemplos: http://proxy.com:8080, https://proxy.com:8080, socks5://127.0.0.1:1080",
"geo_proxy": "Proxy de Geo-verificación",
"geo_proxy_help": "Usar este proxy para verificar dirección IP para sitios con restricciones geográficas. El proxy principal (si está configurado) se usa para la descarga real.",
"geo_proxy_url_label": "URL del Geo Proxy:",
"geo_proxy_url_placeholder": "ej., http://us-proxy.example.com:8080",
"clear_main_proxy": "Limpiar Proxy Principal",
"clear_geo_proxy": "Limpiar Geo Proxy",
"invalid_main_url": "Formato de URL de proxy principal inválido",
"invalid_geo_url": "Formato de URL de geo proxy inválido",
"main_configured": "Proxy principal configurado",
"geo_configured": "Geo proxy configurado",
"set_title": "Proxy establecido",
"set_message": "Proxy principal establecido y guardado: {proxy}",
"geo_set_title": "Proxy geo establecido",
"geo_set_message": "Proxy de verificación geográfica establecido y guardado: {proxy}",
"cleared_title": "Configuración de proxy borrada",
"cleared_message": "Se borró y guardó toda la configuración de proxy.",
"saved_main": "Proxy principal guardado: {proxy}",
"saved_geo": "Proxy geo guardado: {proxy}"
},
"download": {
"preparing": "Preparando descarga...",
"starting": "🚀 Iniciando descarga...",
"fetching_info": "🔍 Obteniendo información del video...",
"preparing_streams": "🎯 Preparando flujos de video...",
"downloading_audio": "⏬ Descargando audio...",
"downloading_video": "⏬ Descargando video...",
"downloading_subtitle": "⏬ Descargando subtítulos...",
"downloading": "⏬ Descargando...",
"completed": "✅ ¡Descarga completada!",
"video_completed": "✅ ¡Descarga de video completada!",
"audio_completed": "✅ ¡Descarga de audio completada!",
"subtitle_completed": "✅ ¡Descarga de subtítulos completada!",
"completed_cleaning": "✅ ¡Descarga completada! Limpiando...",
"cancelled": "Descarga cancelada",
"processing_playlist": "📋 Procesando datos de lista de reproducción...",
"paused": "Descarga pausada",
"resumed": "Descarga reanudada",
"merging_formats": "✨ Post-procesamiento: Fusionando formatos...",
"removing_sponsor_segments": "✨ Post-procesamiento: Eliminando segmentos patrocinados...",
"speed": "Velocidad",
"eta": "Tiempo restante",
"please_enter_url": "Por favor ingresa una URL primero.",
"please_set_path": "Por favor establece una ruta de descarga primero.",
"please_enter_url_and_path": "Por favor ingresa URL y establece ruta de descarga.",
"please_select_format": "Por favor selecciona un formato primero.",
"downloading_fallback": "⚡ Descargando..."
},
"formats": {
"show_formats": "Mostrar formatos:",
"select": "Seleccionar",
"quality": "Calidad",
"extension": "Extensión",
"resolution": "Resolución",
"file_size": "Tamaño",
"codec": "Códec",
"audio": "Audio",
"fps": "FPS",
"hdr": "HDR",
"will_merge_audio": "Se combinará audio",
"has_audio": "✓ Tiene Audio",
"audio_only": "Solo Audio",
"best_4k": "Óptima (4K)",
"best_2k": "Óptima (2K)",
"high_1080p": "Alta (1080p)",
"high_720p": "Alta (720p)",
"medium_480p": "Media (480p)",
"low_quality": "Baja Calidad",
"best_audio": "Mejor Audio",
"high_audio": "Audio Alto",
"medium_audio": "Audio Medio",
"low_audio": "Audio Bajo",
"audio_only_resolution": "Solo audio"
},
"about": {
"title": "Acerca de YTSage",
"version": "Versión {version}",
"description": "Descargador moderno de YouTube con una interfaz limpia de PySide6.",
"author": "Por: {author}",
"github": "GitHub: {repo}",
"system_info": "Información del Sistema",
"loading": "🔄 Cargando información del sistema...",
"refresh": "🔄",
"open_logs": "📂 Registros",
"logs_tooltip": "Abrir carpeta de registros de la aplicación",
"refreshing": "🔄 Actualizando...",
"refresh_failed": "Actualización Fallida",
"refresh_failed_message": "No se pudo actualizar la información de versión.",
"detected": "✓ Detectado",
"missing": "✗ Faltante",
"not_available": "No Disponible"
},
"time_range": {
"title": "Descargar Sección del Video",
"help_text": "Descarga solo partes específicas de un video especificando rangos de tiempo.\nUsa formato HH:MM:SS o segundos. Deja inicio o fin vacío para descargar desde el principio o hasta el final.",
"time_range_group": "Rango de Tiempo",
"start_time": "Tiempo de Inicio:",
"end_time": "Tiempo de Fin:",
"start_time_placeholder": "00:00:00 (o dejar vacío para inicio)",
"end_time_placeholder": "00:10:00 (o dejar vacío para fin)",
"force_keyframes": "Forzar fotogramas clave en cortes (mejor precisión, más lento)"
},
"update": {
"title": "Actualizar yt-dlp",
"checking": "Verificando actualizaciones...",
"update_available": "¡Actualización disponible!\nVersión actual: {current}\nÚltima versión: {latest}",
"up_to_date": "yt-dlp está actualizado (versión {version})",
"already_up_to_date": "✅ ¡yt-dlp ya está actualizado!",
"could_not_determine": "No se pudieron determinar las versiones.",
"error_comparing": "Error al comparar versiones: {error}",
"update_available_failed": "¡Actualización disponible! (Comparación fallida)\nActual: {current}\nÚltima: {latest}",
"updating": "Actualizando...",
"initializing": "🚀 Inicializando proceso de actualización...",
"checking_current": "🔍 Verificando instalación actual...",
"found_at": "📍 Se encontró yt-dlp en: {path}",
"error_getting_path": "❌ Error al obtener la ruta de yt-dlp: {error}",
"updating_binary": "📦 Actualizando binario de yt-dlp administrado por la app...",
"update_failed": "❌ Falló la actualización de yt-dlp. Inténtalo de nuevo o verifica tu conexión a internet.",
"binary_updated": "✅ ¡Binario actualizado exitosamente!",
"update_failed_stderr": "❌ Falló la actualización de yt-dlp: {error}",
"update_timeout": "❌ Tiempo agotado en la actualización de yt-dlp.",
"unexpected_error": "❌ Error inesperado durante la actualización: {error}",
"update_success": "✅ ¡yt-dlp se ha actualizado exitosamente!",
"already_latest": "yt-dlp está actualizado (versión {version})",
"network_error": "❌ Error de red durante la actualización: {error}",
"general_error": "❌ La actualización falló: {error}",
"update_in_progress_title": "Actualización en curso",
"update_in_progress_message": "yt-dlp se está actualizando actualmente. Por favor espere un momento."
},
"settings": {
"title": "Configuración de Descarga",
"download_path": "Ruta de Descarga",
"browse": "Examinar...",
"speed_limit": "Límite de Velocidad",
"speed_limit_placeholder": "Ninguno",
"auto_update_ytdlp": "Auto-Actualizar yt-dlp",
"enable_auto_updates": "Habilitar actualizaciones automáticas de yt-dlp",
"update_frequency": "Frecuencia de actualización:",
"check_startup": "Verificar en cada inicio (mínimo 1 hora entre verificaciones)",
"check_daily": "Verificar diariamente",
"check_weekly": "Verificar semanalmente",
"check_updates_now": "Actualizar yt-dlp",
"update_check_title": "Verificación de Actualizaciones",
"could_not_determine_version": "No se pudo determinar la versión actual de yt-dlp.",
"update_available_dialog": "¡Actualización disponible!\n\nActual: {current}\nÚltima: {latest}\n\nHaz clic en Aceptar para continuar con la actualización.",
"up_to_date_dialog": "¡yt-dlp está actualizado!\n\nVersión actual: {version}",
"error_checking_updates": "Error al verificar actualizaciones: {error}",
"settings_saved_title": "Configuración Guardada",
"settings_saved_message": "¡La configuración de auto-actualización se ha guardado exitosamente!",
"error_title": "Error",
"failed_save_settings": "Falló al guardar la configuración de auto-actualización.",
"error_saving_settings": "Error al guardar la configuración de auto-actualización: {error}",
"ytdlp_channel": "Canal de Lanzamiento de yt-dlp",
"ytdlp_channel_stable": "Estable (Versiones probadas)",
"ytdlp_channel_nightly": "Nightly (Actualizaciones diarias, recomendado por yt-dlp)",
"ytdlp_channel_description": "Elige entre versiones estables y nightly. Las versiones nightly se actualizan diariamente con las últimas correcciones y características. Puedes cambiar de canal en cualquier momento.",
"ytdlp_switching_channel": "Cambiando al canal {channel}...",
"ytdlp_channel_switched": "✅ ¡Cambiado exitosamente al canal {channel}!",
"ytdlp_channel_switch_failed": "❌ Error al cambiar de canal: {error}",
"ytdlp_current_channel": "Canal actual: {channel}",
"app_updates_title": "Actualizaciones de YTSage",
"check_beta_updates": "Recibir actualizaciones beta",
"auto_update_title": "Configuración de Auto-Actualización",
"auto_update_header": "🔄 Configuración de Auto-Actualización",
"auto_update_description": "Configura las actualizaciones automáticas de yt-dlp para asegurar que siempre tengas las últimas funciones y correcciones de errores.",
"current_status": "Estado Actual",
"current_version_label": "Versión actual de yt-dlp: Verificando...",
"last_check_label": "Última verificación de actualización: Nunca",
"next_check_label": "Próxima verificación: Basado en configuración",
"manual_check_button": "🔍 Verificar Actualizaciones Ahora",
"update_frequency_group": "Frecuencia de Actualización",
"save_settings": "Guardar Configuración",
"settings_saved_successfully": "✅ ¡Configuración guardada exitosamente!",
"error_saving": "❌ Error al guardar configuración: {error}",
"output_format_settings": "Configuración de Formato de Salida",
"force_output_format": "Forzar formato de salida al combinar",
"preferred_format": "Formato preferido:",
"force_format_help": "Cuando está habilitado, los videos combinados se convertirán a su formato preferido. Deshabilitar para dejar que yt-dlp decida automáticamente.",
"format_mp4": "MP4 (Más compatible)",
"format_webm": "WebM (Moderno, abierto)",
"format_mkv": "MKV (Rico en funciones)",
"audio_format_settings": "Configuración de formato de audio",
"force_audio_format": "Forzar formato de audio para descargas solo de audio",
"preferred_audio_format": "Formato de audio preferido:",
"force_audio_format_help": "Cuando está habilitado, las descargas solo de audio se convertirán a su formato preferido. Esto solo se aplica al descargar formatos de audio.",
"audio_format_best": "Mejor (Sin conversión)",
"audio_format_aac": "AAC (Bueno para edición)",
"audio_format_mp3": "MP3 (Universal)",
"audio_format_flac": "FLAC (Sin pérdida)",
"audio_format_wav": "WAV (Sin comprimir)",
"audio_format_opus": "Opus (Eficiente)",
"audio_format_m4a": "M4A (Apple)",
"audio_format_vorbis": "Vorbis (Abierto)",
"filename_format": "Formato de nombre de archivo",
"filename_format_help": "Variables disponibles: %(title)s, %(uploader)s, %(upload_date)s, %(resolution)s, %(id)s, %(ext)s. Se admite la sintaxis estándar de plantilla de salida de yt-dlp."
},
"main_ui": {
"url_placeholder": "Ingresa URL de video o lista de YouTube",
"merge_subtitles": "Combinar Subtítulos",
"save_thumbnail": "Guardar Miniatura",
"save_description": "Guardar Descripción",
"embed_chapters": "Incrustar Capítulos",
"subtitles_selected": "{count} seleccionados",
"all_selected": "Todos seleccionados",
"select_videos_all": "Seleccionar Videos... (Todos seleccionados)",
"please_enter_url": "Por favor ingresa primero una URL",
"error_title": "Error",
"cookie_file_selected_title": "Archivo de Cookies Seleccionado",
"cookie_file_selected_message": "Archivo de cookies seleccionado: {path}",
"browser_cookies_selected_title": "Cookies de Navegador Seleccionadas",
"browser_cookies_selected_message": "Las cookies del navegador serán extraídas de: {browser}",
"error_no_format_info": "Error: No hay información de formato disponible.",
"error_extract_info": "Error: No se pudo extraer la información básica del video. Por favor verifica tu enlace.",
"analyzing_preparing": "Preparando solicitud...",
"analyzing_extracting_basic": "Extrayendo información básica...",
"analyzing_extracting_detailed": "Extrayendo información detallada...",
"analyzing_processing_video": "Procesando datos de video...",
"analyzing_processing_formats": "Procesando formatos...",
"analyzing_loading_thumbnail": "Cargando miniatura...",
"analyzing_processing_subtitles": "Procesando subtítulos...",
"analyzing_updating_table": "Actualizando tabla de formatos...",
"analysis_complete": "¡Análisis completo!",
"analyzing_extracting_ytdlp": "Extrayendo información...",
"analyzing_fetching_first_video": "Obteniendo formatos del primer video...",
"analyzing_processing_data": "Procesando datos...",
"analyzing_processing_formats_ytdlp": "Procesando formatos...",
"analyzing_loading_thumbnail_ytdlp": "Cargando miniatura...",
"analyzing_processing_subtitles_ytdlp": "Procesando subtítulos...",
"select_subtitles": "Seleccionar Subtítulos...",
"sponsorblock_categories": "Categorías SponsorBlock...",
"invalid_url_or_enter": "URL inválida o por favor ingresa una URL.",
"zero_selected": "0 seleccionados",
"analyze_first_tooltip": "Por favor analiza el video primero",
"audio_mode_disabled": "No disponible en modo solo audio",
"select_subtitles_first": "Por favor selecciona subtítulos primero",
"settings_tooltip": "Ruta actual: {path}\nLímite de velocidad: {speed_limit}",
"speed_limit_none": "Ninguno",
"open_folder_error": "No se pudo abrir la carpeta: {error}",
"time_range_set": "Sección establecida: {section}"
},
"sponsorblock": {
"sponsor": "Patrocinador",
"sponsor_desc": "Promoción pagada, referencias pagadas y anuncios directos",
"selfpromo": "Autopromoción No Pagada",
"selfpromo_desc": "Promoción no pagada del propio contenido del creador",
"interaction": "Recordatorio de Interacción",
"interaction_desc": "Pedir a los espectadores que den like, se suscriban o sigan en redes sociales",
"intro": "Introducción",
"intro_desc": "Introducción del video que se puede omitir",
"outro": "Outro/Tarjetas Finales",
"outro_desc": "Créditos o cuando termina el video",
"preview": "Vista Previa/Resumen",
"preview_desc": "Resumen rápido de videos anteriores o vista previa de lo que viene",
"music_offtopic": "Sección No Musical",
"music_offtopic_desc": "Solo para videos musicales. Marca secciones no musicales",
"filler": "Relleno/Tangente",
"filler_desc": "Escenas tangenciales agregadas solo como relleno o humor"
},
"video_info": {
"channel": "Canal",
"views": "👁 Visualizaciones",
"likes": "👍 Me gusta",
"upload_date": "📅 Fecha de subida",
"duration": "⏱ Duración",
"unknown_channel": "Canal desconocido",
"unknown_date": "Fecha desconocida",
"unknown_title": "Título desconocido"
},
"command": {
"running": "Ejecutando...",
"run_command": "Ejecutar Comando"
},
"selection": {
"none_selected": "0 seleccionados",
"one_selected": "1 categoría seleccionada",
"count_selected": "{count} seleccionados"
},
"status": {
"ready": "Listo",
"file_exists": "⚠️ El archivo ya existe",
"video_file_exists": "⚠️ El archivo de video ya existe",
"audio_file_exists": "⚠️ El archivo de audio ya existe",
"subtitle_file_exists": "⚠️ El archivo de subtítulos ya existe",
"cancelling": "Cancelando descarga...",
"thumbnail_saved": "✅ Miniatura guardada: {filename}",
"thumbnail_error": "❌ Error de miniatura: {error}",
"thumbnail_no_image": "No hay miniatura disponible para guardar"
},
"errors": {
"playlist_no_videos": "Error: La lista de reproducción no contiene videos válidos.",
"playlist_no_url": "Error: No se pudo obtener la URL del primer video de la lista.",
"ytdlp_not_found": "Error: Ejecutable de yt-dlp no encontrado. Por favor instala yt-dlp primero.",
"ytdlp_not_found_path": "Error: Ejecutable de yt-dlp no encontrado. Esto podría deberse a una instalación incorrecta o un problema de PATH.",
"no_data_returned": "Error: yt-dlp no devolvió datos",
"no_format_info": "Error: No hay información de formato disponible.",
"analysis_timeout": "Error: Se agotó el tiempo de análisis. Por favor inténtalo de nuevo.",
"invalid_speed_limit": "❌ Error: Valor de límite de velocidad inválido en configuración.",
"ytdlp_failed": "Error: yt-dlp falló: {error}",
"parse_failed": "Error: Falló al analizar salida de yt-dlp: {error}",
"analysis_failed": "Error: Análisis falló: {error}",
"generic_error": "Error: {error}",
"download_failed_return_code_conflict": "La descarga falló con el código de salida {return_code}. Esto puede deberse a un conflicto con varias instalaciones de yt-dlp. Intenta desinstalar cualquier yt-dlp instalado en el sistema (p. ej., mediante snap o apt) y reinicia la aplicación.",
"download_failed_return_code": "La descarga falló con el código de salida {return_code}",
"direct_command_error": "Error en el comando directo: {error}"
},
"update_dialog": {
"title": "Actualización disponible",
"new_version_available": "¡Una nueva versión de YTSage está disponible!",
"current_version_label": "Versión actual:",
"latest_version_label": "Última versión:",
"changelog": "Registro de cambios",
"download_update": "Descargar Actualización",
"remind_later": "Recordar Más Tarde"
},
"playlist": {
"unknown": "Lista de reproducción desconocida",
"total_videos": "Total de Videos: {count}",
"display_format": "Lista de reproducción: {title} | {count} videos",
"select_videos_title": "Seleccionar Videos de la Lista de Reproducción"
},
"subtitle_selection": {
"count_selected": "{count} seleccionados"
},
"file_exists_dialog": {
"title": "El archivo ya existe",
"message": "El archivo ya existe:\n{filename}",
"info": "Este video ya ha sido descargado."
},
"auto_update": {
"last_check_never": "Última verificación: Nunca",
"last_check": "Última verificación: {time}",
"next_check_disabled": "Próxima verificación: Deshabilitada",
"next_check_startup": "Próxima verificación: Al iniciar",
"next_check_overdue": "Próxima verificación: Ahora (atrasada)",
"next_check": "Próxima verificación: {time}",
"next_check_error": "Próxima verificación: Error al calcular",
"checking": "🔄 Verificando...",
"check_now": "🔍 Verificar actualizaciones ahora",
"current_version": "Versión actual de yt-dlp: {version}"
},
"url_validation": {
"empty_url": "La URL no puede estar vacía",
"invalid_format": "Formato de URL no válido",
"invalid_scheme": "La URL debe comenzar con http:// o https://",
"missing_domain": "URL no válida: falta el nombre de dominio",
"unsupported_platform": "YTSage solo admite URLs de YouTube y YouTube Music.\nEl dominio '{domain}' no es compatible.",
"invalid_youtu_be": "URL de youtu.be no válida: falta el ID del video"
},
"ytdlp_errors": {
"private_video": "Este es un video privado. Puede descargarlo iniciando sesión en su cuenta usando cookies.\nVaya a 'Opciones Personalizadas' → 'Iniciar sesión con Cookies' → 'Extraer cookies del navegador' para autenticarse.",
"age_restricted": "Este video tiene restricción de edad. Debe iniciar sesión para acceder a él.\nUse 'Opciones Personalizadas' → 'Iniciar sesión con Cookies' para autenticarse con su cuenta.",
"geo_blocked": "Este video no está disponible en su región (bloqueado geográficamente).\nPuede necesitar usar una VPN o el video puede estar restringido en su país.",
"video_unavailable": "Este video ha sido eliminado o ya no está disponible.\nEl video puede haber sido eliminado por el usuario que lo subió o eliminado debido a violaciones de políticas.",
"live_stream": "Esta es una transmisión en vivo que no se puede descargar mientras está activa.\nEspere a que termine la transmisión y luego intente descargar la versión archivada.",
"playlist_error": "No se puede acceder a esta lista de reproducción. Puede ser privada, estar eliminada o vacía.\nVerifique si la lista de reproducción existe y es públicamente accesible.",
"network_error": "Error de conexión de red. Verifique su conexión a Internet e intente nuevamente.\nSi el problema persiste, el servidor de video puede no estar disponible temporalmente.",
"invalid_url": "URL no válida o no compatible. Verifique el enlace e intente nuevamente.\nAsegúrese de usar una URL válida de YouTube, Vimeo u otra plataforma compatible.",
"premium_content": "Este contenido requiere YouTube Premium o membresía del canal.\nDebe iniciar sesión con una cuenta que tenga acceso a este contenido.",
"copyright_blocked": "Este video está bloqueado debido a reclamaciones de derechos de autor.\nEl propietario del contenido ha restringido el acceso a este video.",
"extraction_failed": "Error al extraer información del video. Esto podría ser un problema temporal.\nIntente nuevamente en unos minutos o verifique si el enlace del video es correcto.",
"generic_error": "No se pudo extraer la información del video. Verifique su enlace.\nDetalles técnicos: {error}"
},
"history": {
"title": "Historial de Descargas",
"clear_all": "Borrar Todo",
"clear_confirm_title": "¿Borrar Historial?",
"clear_confirm_message": "¿Estás seguro de que quieres borrar todo el historial? Esto no se puede deshacer.",
"no_history": "Aún no hay historial",
"no_history_description": "Tus descargas aparecerán aquí",
"loading": "Cargando historial...",
"search_placeholder": "Buscar...",
"open_location": "Abrir Ubicación",
"redownload": "Descargar de Nuevo",
"remove": "Eliminar",
"file_not_found": "Archivo no encontrado",
"file_not_found_message": "El archivo fue movido o eliminado:\n{path}",
"downloaded_on": "Descargado: {date}",
"file_size": "Tamaño: {size}",
"audio_download": "Audio",
"video_download": "Video",
"remove_confirm_title": "¿Eliminar?",
"remove_confirm_message": "¿Eliminar del historial?\n\n{title}",
"item_removed": "Eliminado",
"history_cleared": "Historial borrado",
"entries_count": "{count} descargas",
"one_entry": "1 descarga",
"redownload_confirm_title": "¿Descargar de Nuevo?",
"redownload_confirm_message": "¿Descargar nuevamente?\n\n{title}",
"redownload_started": "Descarga iniciada",
"no_url_error": "No se encontró URL en la entrada del historial",
"redownload_failed": "No se pudo iniciar la re-descarga: {error}"
},
"ffmpeg": {
"installation_title": "Instalación de FFmpeg",
"installation_message": "YTSage necesita FFmpeg para procesar videos.\n\nElige una opción de instalación:",
"install_button": "Instalar FFmpeg",
"manual_guide": "Guía manual",
"installation_failed": "La instalación de FFmpeg encontró un problema.",
"already_installed": "¡FFmpeg ya está instalado!",
"installation_complete": "Instalación completa. Puedes cerrar este diálogo y seguir usando YTSage.",
"installing": "Instalando FFmpeg... Por favor espera",
"install_success": "¡FFmpeg se instaló correctamente!",
"installation_complete_close": "Instalación completa. Ahora puedes cerrar este diálogo y seguir usando YTSage.",
"try_manual": "Intenta usar la guía de instalación manual en su lugar."
},
"ytdlp_setup": {
"required_title": "Se requiere configurar yt-dlp",
"description": "YTSage requiere yt-dlp para descargar videos.
No se encontró yt-dlp en el directorio local de la app. YTSage necesita configurar yt-dlp para tu sistema {os_name}.
Elige una opción:",
"option_auto": "Descargar automáticamente (recomendado)",
"option_manual": "Seleccionar ruta manualmente",
"setup_button": "Configurar yt-dlp",
"downloading": "Descargando yt-dlp...",
"success": "¡yt-dlp se instaló correctamente!",
"error": "Error: {error}",
"download_failed_title": "Descarga fallida",
"download_failed_message": "No se pudo descargar yt-dlp: {error}",
"select_executable_title": "Seleccionar ejecutable de yt-dlp",
"copied_to": "yt-dlp se copió correctamente a {path}",
"setup_error_title": "Error de configuración",
"copy_error": "Error al copiar yt-dlp al directorio de la app: {error}",
"invalid_executable_title": "Ejecutable inválido",
"invalid_executable_message": "El archivo seleccionado no parece ser un ejecutable válido de yt-dlp.",
"verify_error": "Error al verificar el ejecutable de yt-dlp: {error}",
"setup_failed_title": "Configuración fallida",
"setup_failed_message": "No se pudo configurar yt-dlp. Algunas funciones pueden no funcionar correctamente.",
"success_dialog_title": "Configuración de yt-dlp",
"success_dialog_message": "yt-dlp se configuró correctamente en:\n{path}",
"file_filter_windows": "Archivos ejecutables (*.exe)",
"file_filter_all": "Todos los archivos (*)"
},
"ffmpeg_updater": {
"title": "Comprobador de Versión FFmpeg",
"current_version": "Versión Actual:",
"latest_version": "Última Versión:",
"status_up_to_date": "✓ Actualizado",
"status_update_available": "⚠ Actualización disponible",
"status_not_installed": "✗ No instalado",
"status_idle": "Haga clic en 'Comprobar Versión' para comenzar",
"status_checking": "🔄 Verificando versión...",
"check_updates": "Comprobar Versión",
"check_failed": "Error al verificar la versión. Por favor, verifique su conexión a internet.",
"description": "Compruebe su versión de FFmpeg y compárela con la última versión disponible.",
"guide_info": " Para instalar o actualizar FFmpeg, haga clic aquí para ver nuestra guía completa de instalación."
},
"deno": {
"setup_required": "Configuración de Deno requerida",
"setup_description": "YTSage requiere Deno para ejecutar ciertas funciones.
No se encontró Deno en el directorio local de la aplicación. YTSage necesita configurar Deno para su sistema {os_name}.
Haga clic en 'Configurar Deno' para descargar e instalar automáticamente.",
"setup_button": "Configurar Deno",
"downloading": "Descargando Deno...",
"extracting": "Extrayendo Deno...",
"verifying": "Verificando Deno...",
"success": "¡Deno se instaló correctamente!",
"download_failed": "Descarga fallida",
"download_error": "Error al descargar Deno: {error}",
"verification_failed": "Error en la verificación SHA256. El archivo descargado puede estar dañado o alterado.",
"setup_failed": "Error al configurar Deno. Es posible que algunas funciones no funcionen correctamente.",
"setup_error": "Error de configuración"
},
"deno_updater": {
"title": "Verificador y Actualizador de Versión de Deno",
"description": "Verifique su versión de Deno y actualice a la última versión.",
"current_version": "Versión Actual:",
"latest_version": "Última Versión:",
"status_idle": "Haga clic en 'Buscar Actualizaciones' para comenzar",
"status_checking": "🔄 Buscando actualizaciones...",
"status_up_to_date": "✓ Actualizado",
"status_update_available": "⚠ Actualización disponible",
"status_not_installed": "✗ No instalado",
"check_updates": "Buscar Actualizaciones",
"update_now": "Actualizar Deno",
"updating": "🔄 Actualizando Deno...",
"update_success": "✅ ¡Deno se ha actualizado correctamente!",
"update_failed": "❌ Error en la actualización: {error}",
"check_failed": "Error al buscar actualizaciones. Por favor, verifique su conexión a Internet."
}
}