18160c22f7
Pairs a phone to the desktop by QR code, then sends recordings over an iroh connection for Sona to transcribe, streaming the transcript back. The phone side is a PWA deployed alongside the website at /vibe/phone/. Browsers cannot hole-punch, so its traffic is relayed — end-to-end encrypted throughout, so the relay only ever sees ciphertext. Desktop: - iroh endpoint behind the `vibe/handoff/0` ALPN, off by default and restored on startup only when the user previously enabled it - pairing token compared in constant time; identity persisted so the QR survives restarts - incoming audio saved to ~/Documents/Vibe like any other recording, and written to the transcripts store so it lands in Recents - Settings -> Phone section with a self-contained QR encoder, reachable from a phone icon in the sidebar footer - launch-at-startup setting via tauri-plugin-autostart, default off Phone PWA: - React + Vite on the desktop app's UI stack - language list and model come from the desktop over the wire, never hardcoded, so the picker always matches the loaded model - MediaRecorder mime negotiation for Safari, screen wake lock, and an install-to-home-screen hint Analytics cover adoption and success rate without sending transcripts, filenames, paths, or the chosen language. Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
483 lines
24 KiB
JSON
483 lines
24 KiB
JSON
{
|
|
"aborting": "Stoppando",
|
|
"advanced": "Avanza",
|
|
"appTitle": "Vibe",
|
|
"askForDownloadModel": "Vuoi scaricare il modello dal sito",
|
|
"askForInstallYtdlpMessage": "Vuoi installare ytdlp utilizzato per scaricare audio da siti Web popolari?",
|
|
"askForInstallYtdlpTitle": "Installa ytdlp",
|
|
"askForRelaunchBody": "Vuoi rilanciare ora?",
|
|
"askForRelaunchTitle": "Aggiornamento completato",
|
|
"askForUpdateBody": "Vuoi aggiornare vibe alla versione {version}?",
|
|
"askForUpdateTitle": "Conferma aggiornamento",
|
|
"askForUpdateYtdlpMessage": "Trovata nuova versione ytdlp. \nVuoi aggiornare ytdlp?",
|
|
"askForUpdateYtdlpTitle": "Aggiorna ytdlp",
|
|
"back": "Indietro",
|
|
"cancel": "Stop",
|
|
"cancelRelaunch": "Dopo",
|
|
"cancelUpdate": "Dopo",
|
|
"changeFile": "Cambia file",
|
|
"changeFiles": "Cambia files",
|
|
"changeModelsFolder": "Seleziona la cartella dei modelli",
|
|
"characters": "caratteri",
|
|
"checkError": "Controllo fallito",
|
|
"checkLoading": "Controllo",
|
|
"checkSuccess": "Testato con successo",
|
|
"checkYtdlpUpdates": "Controlla YTDLP per gli aggiornamenti",
|
|
"modelMemory": "Memoria del modello",
|
|
"minutes": "minuti",
|
|
"unloadModelAfterInactivity": "Scarica il modello dopo l'inattività",
|
|
"unloadModelAfterInactivityInfo": "Libera la memoria del modello e la VRAM quando non ci sono attività di trascrizione. La trascrizione successiva potrebbe richiedere più tempo durante il ricaricamento del modello.",
|
|
"zeroMeansNever": "Imposta 0 per mantenere caricato il modello.",
|
|
"confirmExit": "Vuoi uscire? \nLe modifiche non salvate andranno perse.",
|
|
"confirmRelaunch": "Rilancia ora",
|
|
"confirmUpdate": "Aggiorna ora",
|
|
"copied": "Copiato!",
|
|
"copy": "Copia",
|
|
"copyLogs": "Copia registri",
|
|
"crashedRecently": "Poiché l'app viene arrestata di recente, la GPU è disabilitata. \nPuoi abilitarlo nelle impostazioni.",
|
|
"customFfmpegCommand": "Comando personalizzato",
|
|
"customize": "Personalizza",
|
|
"customizeInfo": "Scarica un qualunque modello supportato nel formato ggml o gguf (con estensione file '.bin'). Copialo nella cartella dei modelli e,selezionalo dal menù a tendina. Non è richiesto il riavvio 🌟",
|
|
"dark": "Scuro",
|
|
"diarizeThreshold": "Soglia di riconoscimento dell'relatore",
|
|
"discordCommunity": "Discord",
|
|
"downloadFile": "Scarica e trascrivi",
|
|
"downloadModel": "Scarica modello",
|
|
"downloadModelsLink": "Scarica modelli",
|
|
"downloading": "Download in corso... {progress}%",
|
|
"downloadingAiModels": "Scaricando i modelli AI...",
|
|
"downloadingModel": "Scaricando il modello...",
|
|
"noModelsInstalled": "Nessun modello installato",
|
|
"downloadDefaultModelDescription": "Scarica il modello predefinito per iniziare a trascrivere.",
|
|
"downloadingYtdlp": "Scaricando i modelli ytdlp",
|
|
"enableLogs": "Abilita registri",
|
|
"error": "Errore",
|
|
"errorTitle": "Errore",
|
|
"ffmpegOptions": "Opzioni FFMPEG",
|
|
"files": "File",
|
|
"findHere": "Trova qui",
|
|
"focusWindowOnFinish": "Focus finestra",
|
|
"format": "Formato",
|
|
"formats": "Formati",
|
|
"general": "Generale",
|
|
"gpuDevice": "Numero GPU Device",
|
|
"highGpuPerformance": "Imposta il livello delle performance grafiche su Alto",
|
|
"iPreferManualSetup": "Preferisco scaricarlo manualmente",
|
|
"includeSubFolders": "Includi le cartelle secondarie",
|
|
"infoCancelDownload": "Puoi cancellare l'operazione e scaricare manualmente il modello in un secondo momento.",
|
|
"infoDiarizeThreshold": "Soglia per il riconoscimento del parlante o da considerare come non rilevato",
|
|
"infoEnableLogs": "Scrivere i log su file. \nRiavviare dopo averlo abilitato.",
|
|
"infoGpuDevice": "Seleziona la GPU da utilizzare per la trascrizione. Inserisci il numero della GPU partendo da 0. Se sono installate 2 GPU, scegli 0 o 1.",
|
|
"infoHighGpuPerformance": "Migliora la performance grafica di Vibe. Consumerà più risorse.",
|
|
"infoLlmApiKey": "La chiave API dal sito Web del modello AI",
|
|
"infoLlmPrompt": "Richiedi il modello AI. \ndeve includere il pattern %s che verrà sostituito con la trascrizione.",
|
|
"infoLlmSummarize": "Riepiloga con l'intelligenza artificiale. \nRichiede la chiave API. \nUna volta completata la trascrizione, verrà inviata all'API Claude insieme al prompt scelto e quindi in pochi secondi la risposta dell'IA verrà visualizzata in Vibe al posto della trascrizione. \nFunziona anche durante la trascrizione di più file!",
|
|
"infoManualDownload": "Una connesione ad Internet è richiesta per il download dei modelli AI",
|
|
"infoMaxSentenceLen": "Quante lettere saranno in un singolo periodo. Disponibile solo quando la funzionalità di word timestamp è attiva.",
|
|
"infoMaxSpeakers": "Quanti oratori dovrebbero essere presenti nel file. \nutilizzato per un riconoscimento più preciso",
|
|
"infoMaxTextCtx": "Massimo numero di token da utilizzare dal precedente testo come prompt per il decoder",
|
|
"infoMaxTokens": "Token massimi per il modello AI. \nOgni token è solitamente considerato come una singola parola. \nCiò può evitarti di inviare troppi dati che costano denaro. \nSi consiglia di limitarlo anche nel sito.",
|
|
"infoNormalizeLoudness": "Abilita questa opzione per una migliore precisione della trascrizione. \nPotrebbero essere necessari fino a 8 minuti per ora di audio.",
|
|
"infoPrompt": "Rendi la trascrizione migliore scrivendo il risultato atteso.",
|
|
"infoRecognizeSpeakers": "Individua la voce per ogni frase",
|
|
"infoTemperature": "Valori più alti contirbuiscono a parole di uso più raro; valori bassi a parole di uso più comune. Per un comportamento bilanciato si consiglia il valore di 0.4.",
|
|
"infoThreads": "Utilizza più CPU per accelerare la fase di decoding; bilancia la velocità con l'utilizzo di risorse. Raccomandato: 4",
|
|
"infoTranslateToEnglish": "Traduci la trascrizione in Inglese a partire da qualsiasi lingua",
|
|
"infoUseWordTimestamps": "Trascrizione con timestamp delle parole invece che delle frasi. \nUtile nel formato JSON. \nDisabilitato quando il riconoscimento dell'relatore è attivo.",
|
|
"installNow": "Installa ora",
|
|
"invalidLlmPrompt": "Richiesta non valida. \ndeve includere il seguente pattern %s che verrà sostituito con la trascrizione.",
|
|
"language": "Lingua",
|
|
"later": "Dopo",
|
|
"leftover": "rimanente",
|
|
"light": "Chiaro",
|
|
"llmApiKey": "Chiave API Claude",
|
|
"llmCurrentCost": "Costi di utilizzo",
|
|
"llmModel": "Modello",
|
|
"llmPlatform": "Piattaforma",
|
|
"llmPrompt": "Richiesta",
|
|
"logsFolder": "Apri la cartella dei log",
|
|
"maxSentenceLen": "Lunghezza massima di ogni frase",
|
|
"maxSpeakers": "Relatori massimi",
|
|
"maxTextCtx": "Lunghezza del contesto",
|
|
"maxTokens": "Gettoni massimi",
|
|
"microphone": "Microfono",
|
|
"modalClose": "Chiudi",
|
|
"modalErrorBody": "Sei incappato in un bug!",
|
|
"modeText": "Testo",
|
|
"modelOptions": "Opzioni del modello",
|
|
"modelsFolder": "Apri la cartella dei modelli",
|
|
"moreOptions": "Opzioni aggiuntive",
|
|
"noConnection": "Connessione Internet assente",
|
|
"noRecord": "Nessuno",
|
|
"normalizeLoudness": "Normalizza il volume",
|
|
"ollamaBaseUrl": "URL di base di Ollama",
|
|
"others": "Altro",
|
|
"pasteModelLink": "incolla il link del modello",
|
|
"placeTranscriptNextToFiles": "Posiziona la trascrizione accanto ai file",
|
|
"playSoundOnFinish": "Avviso sonoro",
|
|
"pleaseEnableWordTimestamps": "Abilita i timestamp delle parole per utilizzare questa opzione!\n\nAssicurati inoltre di disabilitare questa opzione una volta terminato o reimpostare le opzioni del modello!",
|
|
"popular": "Popolare",
|
|
"presetForSubtitles": "Creazione dei sottotitoli",
|
|
"presets": "Impostazione rapida",
|
|
"printTooltip": "Stampa",
|
|
"processWithLlm": "Riassumere",
|
|
"projectLink": "About Vibe",
|
|
"prompt": "Prompt",
|
|
"recognizeSpeakers": "Riconosci voci",
|
|
"record": "Registra",
|
|
"replaceAll": "Sostituisci",
|
|
"reportIssue": "Segnala un problema",
|
|
"resetApp": "Ripristina Vibe",
|
|
"resetAskDialog": "Sei sicuro di voler ripristinare Vibe? I dati dell'applicazione, inclusi i modelli, verrano eliminati.",
|
|
"resetOptions": "Ripristina le opzioni predefinite",
|
|
"rightAlignment": "Allinea a destra",
|
|
"runLlmCheck": "Esegui il controllo",
|
|
"saveRecordInDocumentsFolder": "Salva la registrazione nei documenti",
|
|
"saveSuccess": "Salvataggio riuscito!",
|
|
"saveTranscript": "Salva trascrizione",
|
|
"segmentsTab": "Trascrizione",
|
|
"selectFile": "Seleziona File",
|
|
"selectFolder": "Seleziona la cartella",
|
|
"selectLanguage": "Seleziona lingua",
|
|
"selectModel": "Seleziona modello",
|
|
"selectTheme": "Seleziona il tema",
|
|
"setMonthlySpendLimit": "Imposta il limite di spesa mensile",
|
|
"settings": "Impostazioni",
|
|
"skipIfTranscriptExists": "Saltare se esiste la trascrizione",
|
|
"speakerPrefix": "Voce",
|
|
"speakerRecognition": "Riconoscimento del relatore",
|
|
"speakers": "Altoparlanti",
|
|
"startRecord": "Registra e trascrivi",
|
|
"stopAndTranscribe": "Ferma la registrazione",
|
|
"successAction": "L'operazione è riuscita.",
|
|
"summarizeLoading": "Riassumendo",
|
|
"summarizeSuccess": "Riassunto",
|
|
"summaryTab": "Riepilogo",
|
|
"supportTheProject": "Supporta Vibe",
|
|
"tempFolder": "File temporanei",
|
|
"temperature": "Temperatura",
|
|
"theme": "Tema",
|
|
"thisHappensOnce": "Verrà effettuato una sola volta! 🎉",
|
|
"threads": "Threads",
|
|
"transcribe": "Trascrivi",
|
|
"transcribeFolder": "TRASCRIZIONE FOLLEGGIO",
|
|
"transcribeTook": "Trascritto correttamente in {total} secondi.",
|
|
"transcribed": "Trascritto",
|
|
"transcribing": "Trascrivendo...",
|
|
"transcriptWillDisplayedShortly": "La trascrizione verrà visualizzata a breve...",
|
|
"translateToEnglish": "Traduci in Inglese",
|
|
"tryAgain": "Riprova",
|
|
"updateNow": "Aggiorna ora",
|
|
"updateVersion": "Aggiorna Vibe",
|
|
"updatingModalBody": "Aggiornando Vibe alla versione {version}",
|
|
"updatingModalTitle": "Aggiornamento...",
|
|
"useGpu": "Usa GPU",
|
|
"useWordTimestamps": "Timestamp per ogni parola",
|
|
"whenCompletingTranscription": "Quando la trascrizione è completata",
|
|
"ytdlpOptions": "Opzioni di trascrizione URL",
|
|
"ytdlpOptionsInfo": "Vibe utilizza ytdlp per la trascrizione dell'URL.",
|
|
"languageafrikaans": "Africano",
|
|
"languagealbanian": "Albanese",
|
|
"languageamharic": "Amarico",
|
|
"languagearabic": "Arabo",
|
|
"languagearmenian": "Armeno",
|
|
"languageassamese": "Assamese",
|
|
"languageauto": "Rileva automaticamente ✨",
|
|
"languageazerbaijani": "Azerbaigiano",
|
|
"languagebashkir": "Bashkir",
|
|
"languagebasque": "Basco",
|
|
"languagebelarusian": "Bielorusso",
|
|
"languagebengali": "Bengali",
|
|
"languagebosnian": "Bosniaco",
|
|
"languagebreton": "Bretone",
|
|
"languagebulgarian": "Bulgaro",
|
|
"languagecatalan": "Catalano",
|
|
"languagechinese": "Cinese",
|
|
"languagecroatian": "Croato",
|
|
"languageczech": "Ceca",
|
|
"languagedanish": "Danese",
|
|
"languagedutch": "Olandese",
|
|
"languageenglish": "Inglese",
|
|
"languageestonian": "Estone",
|
|
"languagefaroese": "Faroense",
|
|
"languagefinnish": "Finlandese",
|
|
"languagefrench": "Francese",
|
|
"languagegalician": "Galico",
|
|
"languagegeorgian": "Georgiano",
|
|
"languagegerman": "Tedesco",
|
|
"languagegreek": "Greco",
|
|
"languagegujarati": "Gujarati",
|
|
"languagehaitiancreole": "Creolo Haitiano",
|
|
"languagehausa": "Hausa",
|
|
"languagehawaiian": "Hawaiano",
|
|
"languagehebrew": "Ebraico",
|
|
"languagehindi": "Hindi",
|
|
"languagehungarian": "Ungherese",
|
|
"languageicelandic": "islandese",
|
|
"languageindonesian": "Indonesiano",
|
|
"languageitalian": "Italiano",
|
|
"languagejapanese": "Giapponese",
|
|
"languagejavanese": "Giavanese",
|
|
"languagekannada": "Canarese",
|
|
"languagekazakh": "Kazako",
|
|
"languagekhmer": "Cambogiano",
|
|
"languagekorean": "Coreano",
|
|
"languagelao": "Lao",
|
|
"languagelatin": "Latino",
|
|
"languagelatvian": "Lettone",
|
|
"languagelingala": "Lingala",
|
|
"languagelithuanian": "Lituano",
|
|
"languageluxembourgish": "Lussemburghese",
|
|
"languagemacedonian": "Macedone",
|
|
"languagemalagasy": "Malgascio",
|
|
"languagemalay": "Malese",
|
|
"languagemalayalam": "Malayalam",
|
|
"languagemaltese": "Maltese",
|
|
"languagemaori": "Maori",
|
|
"languagemarathi": "Marathi",
|
|
"languagemongolian": "Mongolo",
|
|
"languagemyanmar": "Birmano",
|
|
"languagenepali": "Nepalese",
|
|
"languagenorwegian": "Norvegese",
|
|
"languagenynorsk": "Nynorsk",
|
|
"languageoccitan": "Occitano",
|
|
"languagepashto": "Pashto",
|
|
"languagepersian": "Persiano",
|
|
"languagepolish": "Polacco",
|
|
"languageportuguese": "Portoghese",
|
|
"languagepunjabi": "Punjabi",
|
|
"languageromanian": "Rumeno",
|
|
"languagerussian": "Russo",
|
|
"languagesanskrit": "Sanscrito",
|
|
"languageserbian": "Serbo",
|
|
"languageshona": "Shona",
|
|
"languagesindhi": "Sindhi",
|
|
"languagesinhala": "Singalese",
|
|
"languageslovak": "Solvacco",
|
|
"languageslovenian": "Sloveno",
|
|
"languagesomali": "Somalo",
|
|
"languagespanish": "Spagnolo",
|
|
"languagesundanese": "Sundanese",
|
|
"languageswahili": "Swahili",
|
|
"languageswedish": "Svedese",
|
|
"languagetagalog": "Tagalog",
|
|
"languagetajik": "Tagico",
|
|
"languagetamil": "Tamil",
|
|
"languagetatar": "Tataro",
|
|
"languagetelugu": "Telugu",
|
|
"languagethai": "Thailandese",
|
|
"languagetibetan": "Tibetano",
|
|
"languageturkish": "Turco",
|
|
"languageturkmen": "Turcomanno",
|
|
"languageukrainian": "Ucraino",
|
|
"languageurdu": "Urdu",
|
|
"languageuzbek": "Uzbeco",
|
|
"languagevietnamese": "Vietnamita",
|
|
"languagewelsh": "Gallese",
|
|
"languageyiddish": "Yiddish",
|
|
"languageyoruba": "Yoruba",
|
|
"analyticsEnabled": "Statistiche anonime",
|
|
"analyticsDisabledWarning": "Consigliamo vivamente di lasciarla attiva per individuare e correggere i problemi più rapidamente.",
|
|
"apiAgentsDescription": "Esegui trascrizioni da script, strumenti a riga di comando o agenti IA tramite l'API locale di Vibe.",
|
|
"apiAndAgents": "API e agenti",
|
|
"apiServerOff": "Il server API è spento",
|
|
"apiServerRunning": "Il server API è in esecuzione",
|
|
"apiStarting": "Avvio…",
|
|
"apiStopping": "Arresto…",
|
|
"copyAgentSkill": "Copia le istruzioni Agent Skill",
|
|
"copyCurlExample": "Copia l'esempio cURL",
|
|
"diarizeMaxSpeakersNote": "Supporta il riconoscimento di massimo 4 interlocutori.",
|
|
"diarization": "Diarizzazione",
|
|
"downloadComplete": "Download completato",
|
|
"downloadDiarizeModel": "La diarizzazione richiede un modello (~25 MB). Scaricarlo ora?",
|
|
"downloadingDiarizeModel": "Download del modello di diarizzazione...",
|
|
"enableDiarization": "Attiva la diarizzazione",
|
|
"enabled": "Attivo",
|
|
"disabled": "Disattivato",
|
|
"fineTuning": "Regolazione fine",
|
|
"gpuDevicePlaceholder": "Automatico (lascia vuoto)",
|
|
"globalDictation": "Dettatura globale",
|
|
"globalDictationEnable": "Attiva",
|
|
"globalDictationPromo": "Premi una scorciatoia ovunque per trascrivere all'istante. Funziona mentre Vibe è in esecuzione in background.",
|
|
"globalHotkey": "Scorciatoia globale",
|
|
"globalHotkeyEnabled": "Attiva la scorciatoia globale",
|
|
"globalHotkeyShortcut": "Scorciatoia",
|
|
"globalHotkeyDescription": "Tieni premuta la scorciatoia per registrare, rilasciala per trascrivere.",
|
|
"hotkeyActivationMode": "Modalità di attivazione",
|
|
"hotkeyActivationPushToTalk": "Tieni premuto per parlare",
|
|
"hotkeyActivationPushToTalkDescription": "Tieni premuta la scorciatoia per registrare, poi rilasciala per trascrivere.",
|
|
"hotkeyActivationToggle": "Premi per alternare",
|
|
"hotkeyActivationToggleDescription": "Premi una volta per iniziare a registrare e di nuovo per fermarti e trascrivere.",
|
|
"dictationIndicatorSetting": "Mostra l'indicatore di stato",
|
|
"dictationIndicatorSettingInfo": "Mostra un piccolo indicatore Vibe fluttuante mentre la dettatura globale ascolta e trascrive.",
|
|
"dictationIndicatorListening": "In ascolto…",
|
|
"dictationIndicatorTranscribing": "Trascrizione…",
|
|
"dictationIndicatorCopied": "Copiato",
|
|
"dictationIndicatorInserted": "Inserito",
|
|
"dictationIndicatorError": "Dettatura non riuscita",
|
|
"normalizeHotkeyOutput": "Normalizza il risultato",
|
|
"normalizeHotkeyOutputInfo": "Riduce interruzioni di riga e spazi in eccesso a spazi singoli, così il risultato è un'unica riga di testo pulita invece di più righe.",
|
|
"globalDictationPromoShort": "Prova la dettatura globale",
|
|
"hotkeyOutputMode": "Modalità di output",
|
|
"hotkeyOutputClipboard": "Copia negli appunti",
|
|
"hotkeyOutputType": "Scrivi al cursore",
|
|
"hotkeyTranscriptionCopied": "Trascrizione copiata negli appunti",
|
|
"infoDiarization": "Rileva ed etichetta i diversi interlocutori nell'audio. Richiede il download di un modello separato.",
|
|
"recentlyUsed": "Usati di recente",
|
|
"orSelectFolder": "o un'intera cartella",
|
|
"privacy": "Privacy",
|
|
"privacyPolicy": "Informativa sulla privacy",
|
|
"promptMustContainPlaceholder": "Il prompt deve contenere %s come segnaposto per la trascrizione",
|
|
"promptTemplateMeetingNotes": "Note della riunione",
|
|
"promptTemplateTranslate": "Traduci",
|
|
"promptTemplateRewrite": "Riscrivi come articolo",
|
|
"promptTemplateTldr": "In breve",
|
|
"resummarize": "Riassumi di nuovo",
|
|
"recordingName": "Nome della registrazione",
|
|
"recordingNamePlaceholder": "es. Riunione del team",
|
|
"recordingSavePath": "Percorso di salvataggio delle registrazioni",
|
|
"recordingSavePathInfo": "Scegli dove salvare i file audio registrati. Il valore predefinito è Documenti/Vibe.",
|
|
"changeRecordingPath": "Modifica",
|
|
"resetToDefault": "Ripristina",
|
|
"setup": "Configurazione",
|
|
"speakerTiming": "Interlocutori e tempi",
|
|
"start": "Avvia",
|
|
"stop": "Ferma",
|
|
"supportsFormats": "Supporta file audio e video",
|
|
"swaggerDocs": "Documentazione Swagger",
|
|
"targetLanguage": "Lingua di destinazione",
|
|
"gpuFallbackToCpu": "La GPU non è riuscita a caricare il modello. Si passa alla CPU.",
|
|
"avx2NotSupported": "La tua CPU non è supportata da questa versione di Vibe. Usa un computer più recente.",
|
|
"noModelLoadedBatchStopped": "Modello non caricato. Interruzione del batch.",
|
|
"noModelSelected": "Seleziona un modello nelle impostazioni per iniziare",
|
|
"transcription": "Trascrizione",
|
|
"batch": "Batch",
|
|
"nowPlaying": "In riproduzione",
|
|
"audioLevel": "Livello audio",
|
|
"auto": "Automatico",
|
|
"pasteApiKey": "Incolla qui la tua chiave API",
|
|
"baseUrl": "URL di base",
|
|
"apiKey": "Chiave API",
|
|
"optionalLocalServerKey": "sk-... (facoltativa per i server locali)",
|
|
"stableTimestampsInfo": "Usa la decodifica per segmenti con VAD per tempi dei sottotitoli più precisi. Circa 4 volte più lento; ideale per film e trascrizioni lunghe.",
|
|
"stableTimestampsSlowNote": "Timestamp molto precisi, ma circa 4 volte più lenti.",
|
|
"enableStableTimestamps": "Attiva i timestamp stabili",
|
|
"translateWhisperModelNote": "Solo Whisper medium/large; non v3 Turbo.",
|
|
"samplingStrategyInfo": "Greedy o Beam Search: l'impostazione predefinita è Beam Search (dimensione 5, pazienza -1), che valuta 5 sequenze possibili a ogni passo per risultati più accurati ma più lenti. Greedy invece sceglie il token migliore tra i primi 5 a ogni passo: più veloce, ma potenzialmente meno accurato.",
|
|
"samplingStrategy": "Strategia di campionamento",
|
|
"greedyInfo": "Candidati principali in modalità Greedy (predefinito: 5): valore più alto = più preciso, più lento.",
|
|
"beamInfo": "Percorsi esplorati in Beam Search (predefinito: 5): valore più alto = più preciso, più lento.",
|
|
"bestOf": "Migliore tra",
|
|
"beamSize": "Dimensione del beam",
|
|
"stableTimestampsConfirm": "I timestamp stabili richiedono un modello VAD (~1 MB). Scaricarlo ora?",
|
|
"stableTimestamps": "Timestamp stabili",
|
|
"downloadingVadModel": "Download del modello VAD...",
|
|
"loading": "Caricamento...",
|
|
"agentInstructionsCopied": "Istruzioni Agent Skill copiate negli appunti",
|
|
"localApiUnreachable": "Impossibile raggiungere l'API locale",
|
|
"permissionAudioRecording": "Attiva la registrazione dell'audio di sistema nelle Impostazioni di sistema e riprova.",
|
|
"rename": "Rinomina",
|
|
"modelName": "Nome del modello",
|
|
"save": "Salva",
|
|
"showInFolder": "Mostra nella cartella",
|
|
"newTranscription": "Nuova trascrizione",
|
|
"recents": "Recenti",
|
|
"noRecentTranscripts": "Le trascrizioni che crei appariranno qui",
|
|
"noMatches": "Nessun risultato",
|
|
"searchRecents": "Cerca nei recenti",
|
|
"searchTranscript": "Cerca nella trascrizione",
|
|
"transcriptName": "Nome della trascrizione",
|
|
"transcriptActions": "Azioni sulla trascrizione",
|
|
"reTranscribe": "Trascrivi di nuovo",
|
|
"delete": "Elimina",
|
|
"deleteTranscript": "Elimina trascrizione",
|
|
"deleteTranscriptBody": "Eliminare “{name}”? La trascrizione e la sua copia dell'audio verranno rimosse.",
|
|
"resizeSidebar": "Ridimensiona la barra laterale",
|
|
"toggleRecents": "Mostra o nascondi i recenti",
|
|
"updateAvailableOpenRecents": "Aggiornamento disponibile — apri i recenti",
|
|
"justNow": "proprio ora",
|
|
"minutesAgo": "{minutes} min fa",
|
|
"hoursAgo": "{hours} h fa",
|
|
"daysAgo": "{days} g fa",
|
|
"dropFilesHere": "Trascina qui audio, video o una cartella",
|
|
"orClickToBrowse": "oppure fai clic per scegliere i file",
|
|
"dropToAddToQueue": "Rilascia per aggiungere alla coda",
|
|
"pasteMediaLink": "Incolla un link video o audio",
|
|
"worksWith": "Funziona con",
|
|
"moreSources": "+1000 altri",
|
|
"fromFile": "File",
|
|
"fromLink": "Da link",
|
|
"newSession": "Nuova",
|
|
"editLine": "Modifica riga",
|
|
"noMatchingLines": "Nessuna riga corrispondente.",
|
|
"play": "Riproduci",
|
|
"pause": "Pausa",
|
|
"seek": "Scorri",
|
|
"couldNotOpenFolder": "Impossibile aprire la cartella che contiene il file",
|
|
"audioCopyUnavailable": "Qui non è possibile salvare una copia dell'audio",
|
|
"saveTranscriptsToDocuments": "Salva le trascrizioni in Documenti",
|
|
"saveTranscriptsToDocumentsInfo": "Conserva una copia locale di ogni trascrizione per poterla riaprire in seguito",
|
|
"decoding": "Decodifica",
|
|
"promptPlaceholder": "Nomi, termini tecnici o grafie che ti aspetti nell'audio — ad esempio: Vibe, Tauri, Whisper",
|
|
"developer": "Sviluppo",
|
|
"fakeUpdateAvailable": "Simula aggiornamento disponibile",
|
|
"fakeUpdateAvailableInfo": "Mostra il puntino e il pulsante di aggiornamento come se fosse in attesa una nuova versione.",
|
|
"connection": "Connessione",
|
|
"llmPromptPlaceholder": "Riassumi la seguente trascrizione in punti chiari:%s",
|
|
"viewOptions": "Opzioni di visualizzazione",
|
|
"textSize": "Dimensione del testo",
|
|
"textSizeSmall": "Piccolo",
|
|
"textSizeMedium": "Medio",
|
|
"textSizeLarge": "Grande",
|
|
"showTimestamps": "Mostra i timestamp",
|
|
"showSpeakers": "Mostra gli interlocutori",
|
|
"playFromHere": "Riproduci da qui",
|
|
"jumpToPlaying": "Vai alla riproduzione",
|
|
"textDirection": "Direzione del testo",
|
|
"pressShortcutKeys": "Premi i tasti…",
|
|
"shortcutNeedsModifier": "Tieni premuto anche ⌘, ⌃, ⌥ o ⇧",
|
|
"changeShortcut": "Cambia scorciatoia",
|
|
"inProgress": "In corso",
|
|
"queued": "In coda",
|
|
"never": "Mai",
|
|
"configFile": "File di configurazione",
|
|
"closeToTray": "Continua a funzionare nell'area di notifica",
|
|
"closeToTrayInfo": "Chiudendo la finestra, Vibe resta in esecuzione nell'area di notifica, così la dettatura globale continua a funzionare. Puoi uscire dal menu dell'icona.",
|
|
"trayShow": "Apri Vibe",
|
|
"trayHide": "Nascondi Vibe",
|
|
"trayQuit": "Esci da Vibe",
|
|
"launchAtStartup": "Avvia all'accesso",
|
|
"launchAtStartupInfo": "Apre Vibe automaticamente quando accedi al computer.",
|
|
"couldNotEnableLaunchAtStartup": "Impossibile attivare l'avvio all'accesso: {error}",
|
|
"couldNotDisableLaunchAtStartup": "Impossibile disattivare l'avvio all'accesso: {error}",
|
|
"phone": "Telefono",
|
|
"phoneHandoff": "Trasferimento dal telefono",
|
|
"phoneHandoffInfo": "Registra dal telefono e lascia che sia questo computer a trascrivere: la trascrizione torna direttamente sul telefono.",
|
|
"phoneHandoffToggleInfo": "Associa un telefono una sola volta, poi registra da lì quando vuoi.",
|
|
"phoneHandoffRelayNote": "L'audio passa attraverso un server relay, perché i browser dei telefoni non possono connettersi direttamente, ma è cifrato end-to-end: il relay vede solo dati cifrati. Vibe deve restare aperto su questo computer perché il telefono possa raggiungerlo.",
|
|
"phoneHandoffUnavailable": "Il trasferimento dal telefono non è disponibile in questa versione di Vibe.",
|
|
"pairAPhone": "Associa un telefono",
|
|
"pairingQrCode": "Codice QR di associazione",
|
|
"pairingQrCodeError": "Impossibile mostrare il codice di associazione.",
|
|
"scanPairingCodeInfo": "Inquadra questo codice con la fotocamera del telefono, poi conserva la pagina che si apre.",
|
|
"pairingLink": "Link di associazione",
|
|
"copyPairingLink": "Copia il link di associazione",
|
|
"noPairingCode": "Nessun codice di associazione per ora.",
|
|
"thisComputer": "Questo computer",
|
|
"endpointIdInfo": "ID dell'endpoint a cui si connette il telefono",
|
|
"status": "Stato",
|
|
"failed": "Non riuscito",
|
|
"phoneWaitingForRecording": "In attesa di una registrazione da un telefono.",
|
|
"phoneReceivingAudio": "Ricezione dell'audio dal telefono…",
|
|
"phoneLoadingModel": "Caricamento del modello di trascrizione…",
|
|
"phoneTranscribing": "Trascrizione della registrazione…",
|
|
"phoneTranscriptSentBack": "Fatto: la trascrizione è tornata sul telefono.",
|
|
"phoneRecordingFailed": "L'ultima registrazione non è riuscita.",
|
|
"regeneratePairingCode": "Rigenera il codice di associazione",
|
|
"regeneratePairingCodeInfo": "Genera un nuovo codice e invalida quello vecchio: un telefono già associato dovrà scansionarlo di nuovo.",
|
|
"showInFinder": "Mostra nel Finder",
|
|
"showInFileExplorer": "Mostra in Esplora file",
|
|
"phoneTranscriptionSaved": "Trascrizione dal telefono salvata",
|
|
"phoneRecording": "Registrazione dal telefono"
|
|
}
|