Refine and standardize wording in readme-translations/README.de.md and README.it.md. Improvements include clearer UI labels (Analyze/Download), consistent terminology for installation and features, corrected language names, updated tables and formatting, improved screenshot alt texts, and various grammar/translation fixes to align both locales with the main README for clarity and consistency.
26 KiB
Un downloader YouTube moderno con un'interfaccia PySide6 pulita.
Scarica video in qualsiasi qualità, estrai audio, ottieni sottotitoli e molto altro.
🌍 Lingue del README
Inglese: EN | Arabo: AR | Tedesco: DE | Spagnolo: ES | Francese: FR | Hindi: HI | Indonesiano: ID | Italiano: IT | Giapponese: JA | Polacco: PL | Portoghese: PT | Russo: RU | Turco: TR | Cinese: ZH
Installazione • Caratteristiche • Utilizzo • Screenshot • Risoluzione dei problemi • Sponsor • Contribuire
❓ Perché YTSage?
YTSage è progettato per gli utenti che desiderano un downloader YouTube semplice ma potente. A differenza di altri strumenti, offre:
- Un'interfaccia PySide6 moderna e pulita
- Download di video, audio e sottotitoli con un solo clic
- Funzioni avanzate come SponsorBlock, fusione dei sottotitoli e selezione della playlist
- Modalità Generica opzionale per siti diversi da YouTube supportati da yt-dlp
- Supporto multipiattaforma e installazione semplice
✨ Caratteristiche
| Funzioni Base | Funzioni Avanzate | Funzioni Extra |
|---|---|---|
| 🎥 Tabella Formati | 🚫 Integrazione SponsorBlock | 🎞️ Visualizzazione FPS/HDR |
| 🎵 Estrazione Audio | 📝 Selezione e Fusione Sottotitoli | 🔄 Aggiornamento automatico yt-dlp |
| ✨ Interfaccia Utente Semplice | 💾 Salva Descrizione e Anteprima | 🛠️ Rilevamento FFmpeg/yt-dlp/Deno |
| 📋 Supporto e Selettore Playlist | 🚀 Limitatore di Velocità | ⚙️ Comandi Personalizzati |
| 📑 Integrazione Capitoli | ✂️ Ritaglio Sezioni Video | 🍪 Login tramite Cookie |
| 📜 Cronologia Download | 🔄 Scelta del Canale di Rilascio | 🌐 Supporto Proxy |
| 🎚️ Conversione Formato Audio | 🎬 Impostazioni Formato Video | 🆙 Tab Aggiornamento Integrato |
| 🌍 Modalità Generica | 🔊 Normalizzazione Audio (EBU R128) | 🌍 Localizzazione in 14 lingue |
| 💾 Esportazione Playlist | ⚙️ Qualità e Sottotitoli Predefiniti |
🚀 Installazione
⚡ Installazione Rapida (Consigliata)
Installa YTSage tramite PyPI:
pip install ytsage
🔄 Aggiornare un'installazione esistente
pip install --upgrade ytsage
Quindi esegui l'applicazione:
ytsage
📦 Eseguibili Pre-compilati (Executable)
🪟 Windows
| Formato | Descrizione |
|---|---|
| Installer Standard | |
| Include FFmpeg | |
| Versione Portable, nessuna installazione richiesta | |
| Portable con FFmpeg, compresso (ZIP) |
🛠️ Passaggi per l'installazione
- Installer EXE (
.exe): Fare doppio clic sul file e seguire la procedura guidata. - Versione Portable (
.zip): Estrarre l'archivio nella posizione desiderata ed eseguireytsage.exe. - FFmpeg integrato: Se non hai FFmpeg sul tuo sistema, scegli le versioni con FFmpeg integrato.
🐧 Linux
| Formato | Descrizione |
|---|---|
| Pacchetto Debian | |
| AppImage, Portable | |
| Pacchetto RPM | |
| Bundle Flatpak |
🛠️ Passaggi per l'installazione
- DEB (
.deb):sudo dpkg -i ytsage_*.deb sudo apt-get install -f # Se necessario per correggere le dipendenze mancanti - RPM (
.rpm):sudo rpm -i ytsage-*.rpm - AppImage (
.AppImage):chmod +x YTSage-*.AppImage ./YTSage-*.AppImage - Flatpak: Seguire le istruzioni su Flathub o eseguire:
flatpak install flathub io.github.oop7.ytsage
🍎 macOS
| Formato | Descrizione |
|---|---|
| App ZIP per Apple Silicon | |
| Installer Disk Image per Apple Silicon |
🛠️ Passaggi per l'installazione
- Installer DMG (
.dmg): Fare doppio clic per montare, quindi trascinareYTSage.appnella cartella Applicazioni. - Archivio App (
.zip): Estrarre lo ZIP e spostareYTSage.appnella cartella Applicazioni.
Nota: Se ricevi l'errore "L'app è danneggiata", consulta la sezione Risoluzione dei problemi macOS di seguito.
💻 Installazione manuale dai sorgenti
1. Clonare il repository
git clone https://github.com/oop7/YTSage.git
cd YTSage
2. Installare le dipendenze
⚡ Con uv
uv pip install .
📦 O con pip standard
pip install .
3. Eseguire l'applicazione
python -m ytsage.main
📸 Screenshot
📖 Utilizzo
🎯 Utilizzo Base
- Avvia YTSage
- Incolla un URL di YouTube (o usa il pulsante "Incolla URL")
- Clicca su "Analizza"
- Scegli il formato:
Videoper il download del videoSolo Audioper l'estrazione dell'audio
- Seleziona le opzioni:
- Abilita i sottotitoli e scegli la lingua
- Abilita la fusione dei sottotitoli
- Salva l'anteprima (thumbnail)
- Rimuovi sezioni sponsor
- Salva la descrizione
- Incorpora i capitoli
- Scegli la directory di destinazione
- Clicca su "Download"
💡 La directory di download predefinita è la cartella "Download" dell'utente.
📋 Download Playlist
- Incolla l'URL della playlist
- Clicca su "Analizza"
- Seleziona i video dal selettore (opzionale, tutti per impostazione predefinita)
- Scegli il formato/qualità desiderati
- Clicca su "Download"
💡 L'applicazione gestisce automaticamente la coda di download e puoi esportare le voci della playlist come file
.txt,.csv,.m3uo.json.
🌍 Modalità Generica per siti non YouTube
Usa la Modalità Generica quando vuoi che YTSage accetti URL da siti supportati da yt-dlp come Dailymotion, CBC Gem, TikTok e altri.
Come usarla:
- Apri
Impostazioni Download. - Abilita
Modalità Generica. - Incolla un URL di un video o di una playlist supportata che non sia YouTube.
- Clicca su
Analizza. - Scegli un formato e scarica normalmente.
Note:
- La Modalità Generica cambia solo la validazione dell'URL all'interno di YTSage. Il sito di destinazione deve essere comunque supportato dalla versione di yt-dlp installata.
- Alcuni siti richiedono cookie, login, proxy o argomenti yt-dlp aggiuntivi a seconda dell'estrattore.
- Se un sito fallisce, aggiorna yt-dlp dal tab di aggiornamento integrato prima di segnalare il problema.
🧰 Opzioni Media e Download
- Opzioni Sottotitoli: Filtra le lingue e incorpora i sottotitoli nel file video.
- Fusione Sottotitoli: Fonde i sottotitoli nel file video per sottotitoli permanenti (hardcoded).
- Salva Descrizione: Salva la descrizione del video come file di testo.
- Salva Anteprima: Salva l'anteprima (thumbnail) del video come file immagine.
- Incorpora Capitoli: Include i segnaposti dei capitoli come metadati per i lettori video compatibili.
- Rimuovi Sezioni Sponsor: Usa SponsorBlock per rimuovere i segmenti sponsorizzati dal video.
- Ritaglia Video: Scarica solo parti specifiche del video specificando un intervallo di tempo nel formato
HH:MM:SS.
⚙️ Impostazioni Output e File
- Limitatore di Velocità: Limita la velocità di download, ad esempio
500Kper 500 KB/s. - Salva Percorso Download: Salva il percorso di download predefinito per i download futuri. Disponibile in Impostazioni Download → Percorso Download.
- Risoluzione Video Predefinita: Imposta la risoluzione video preferita per la selezione automatica (es. 1080p, 720p). Disponibile in Impostazioni Download → Risoluzione Video Predefinita.
- Lingue Sottotitoli Predefinite: Imposta le lingue dei sottotitoli predefinite per la selezione automatica (separate da virgola, es.
it,en). Disponibile in Impostazioni Download → Lingue Sottotitoli Predefinite. - Formato Nome File: Personalizza il formato del nome del file di output utilizzando variabili come
%(title)s,%(uploader)s,%(playlist_index)se%(resolution)s. Disponibile in Impostazioni Download → Formato Nome File. - Forza Formato Output: Forza il download del video in un formato contenitore specifico come
mp4,webmomkv. Disponibile in Impostazioni Download → Impostazioni Formato Output. - Conversione Formato Audio: Converte i download di solo audio nel formato preferito come
AAC,MP3,FLAC,WAV,Opus,M4A,Vorbis, oBest. Disponibile in Impostazioni Download → Impostazioni Formato Audio. - Normalizzazione Audio: Standardizza il volume per i download di solo audio utilizzando EBU R128.
- Connessioni Simultanee: Aumenta significativamente la velocità di download scaricando i file in più parti contemporaneamente. Disponibile in Impostazioni Download → Generali → Connessioni Simultanee (predefinito 1, massimo 8-10 consigliato per evitare blocchi IP).
🌐 Accesso e Rete
- Login tramite Cookie: Accedi a YouTube utilizzando i cookie per accedere ai contenuti privati.
Utilizzo:
- Consigliato: Usa l'opzione integrata nell'app
Estrai cookie dal browser, quindi scegli il browser e opzionalmente il profilo. - In alternativa, estrai i cookie manualmente:
a. Esporta i cookie dal tuo browser utilizzando un'estensione come cookie-editor
b. Copia i cookie nel formato Netscape
c. Crea un file chiamato
cookies.txte incolla i cookie d. Seleziona il filecookies.txtnell'app
- Consigliato: Usa l'opzione integrata nell'app
- Supporto Proxy: Usa un server proxy per i download, ad esempio
http://<server-proxy>:<porta> - Modalità Generica: Consente a YTSage di analizzare e scaricare da siti non YouTube supportati da yt-dlp. Abilitalo da Impostazioni Download → Modalità Generica.
🛠️ Strumenti e Manutenzione
- Comandi Personalizzati: Accedi alle funzioni avanzate di yt-dlp tramite argomenti della riga di comando.
- Tab Aggiornamento: Gestisci gli strumenti di aggiornamento integrati da un unico posto nelle Opzioni Personalizzate:
- Aggiornamento yt-dlp: Controlla gli aggiornamenti e passa tra i canali di rilascio Stabile e Nightly.
- Controllo Versione FFmpeg: Verifica la tua versione di FFmpeg e apri le guide all'installazione.
- Aggiornamento Deno: Controlla e aggiorna il runtime Deno.
- Rilevamento FFmpeg/yt-dlp/Deno: Rileva automaticamente i percorsi e le versioni di FFmpeg, yt-dlp e Deno dal dialogo Informazioni.
- Cronologia Download: Visualizza i download passati con anteprime e stati dal pulsante Cronologia.
🌍 Localizzazione
YTSage supporta 14 lingue per una portata globale. Scegli la tua lingua preferita in Opzioni Personalizzate → Lingua.
Lingue Supportate
| Lingua | Codice | Lingua | Codice |
|---|---|---|---|
| 🇺🇸 Inglese | en |
🇪🇸 Spagnolo | es |
| 🇸🇦 Arabo | ar |
🇫🇷 Francese | fr |
| 🇩🇪 Tedesco | de |
🇮🇳 Hindi | hi |
| 🇮🇩 Indonesiano | id |
🇮🇹 Italiano | it |
| 🇯🇵 Giapponese | ja |
🇵🇱 Polacco | pl |
| 🇧🇷 Portoghese | pt |
🇷🇺 Russo | ru |
| 🇹🇷 Turco | tr |
🇨🇳 Cinese | zh |
Traduzioni del README
| Lingua | File | Lingua | File |
|---|---|---|---|
| 🇺🇸 Inglese | README.md | 🇪🇸 Spagnolo | README.es.md |
| 🇸🇦 Arabo | README.ar.md | 🇫🇷 Francese | README.fr.md |
| 🇩🇪 Tedesco | README.de.md | 🇮🇳 Hindi | README.hi.md |
| 🇮🇩 Indonesiano | README.id.md | 🇮🇹 Italiano | README.it.md |
| 🇯🇵 Giapponese | README.ja.md | 🇵🇱 Polacco | README.pl.md |
| 🇧🇷 Portoghese | README.pt.md | 🇷🇺 Russo | README.ru.md |
| 🇹🇷 Turco | README.tr.md | Cinese | README.zh.md |
💡 Vuoi aiutare con la traduzione? Consulta la sezione Contribuire per aiutarci ad aggiungere altre lingue!
🛠️ Risoluzione dei problemi
Clicca per visualizzare i problemi comuni e le soluzioni
- La tabella dei formati non appare: Aggiorna yt-dlp all'ultima versione e prova a passare a yt-dlp Nightly.
- Download fallito: Controlla la tua connessione internet e assicurati che il video sia disponibile.
- Errori di download specifici:
- Video Privati: Usa l'autenticazione tramite cookie per accedere ai contenuti privati.
- Contenuti con limiti di età: Accedi al tuo account YouTube per visualizzare i video con limiti di età.
- Video bloccati geograficamente: Considera l'uso di una VPN per aggirare le restrizioni regionali.
- Video rimosso: Il video non è più disponibile su YouTube.
- Live Stream: I live stream non possono essere scaricati durante la trasmissione; attendi la fine dello stream.
- Errori di rete: Controlla la tua connessione internet e riprova.
- URL non valido: Assicurati che l'URL sia corretto e provenga da una piattaforma supportata.
- Contenuti Premium: Richiede un abbonamento YouTube Premium.
- Blocco Copyright: Il contenuto è bloccato a causa di restrizioni sul copyright.
- I file video e audio sono separati dopo il download: Questo accade quando FFmpeg manca o non viene rilevato. YTSage richiede FFmpeg per unire i flussi video e audio di alta qualità.
- Soluzione: Assicurati che FFmpeg sia installato e accessibile nel PATH del tuo sistema. Per gli utenti Windows, l'opzione più semplice è scaricare il file
YTSage-v<versione>-ffmpeg.exe, che include FFmpeg.
- Soluzione: Assicurati che FFmpeg sia installato e accessibile nel PATH del tuo sistema. Per gli utenti Windows, l'opzione più semplice è scaricare il file
🛡️ Avviso Windows Defender / Antivirus
Alcuni software antivirus potrebbero contrassegnare i file .exe come falsi positivi. Questa è una limitazione nota delle applicazioni pacchettizzate.
Perché succede:
- Le euristiche dell'antivirus potrebbero identificare erroneamente gli eseguibili pacchettizzati come sospetti.
Opzioni sicure:
- ✅ Usa l'installazione tramite pip:
pip install ytsage(consigliato) - ✅ Compila dai sorgenti: Seguendo questa guida
- ✅ Aggiungi l'applicazione alla whitelist nel tuo software antivirus.
🍎 macOS: "L’app è danneggiata e non può essere aperta"
Se visualizzi questo errore su macOS Sonoma o versioni successive, devi rimuovere l'attributo di quarantena.
- Apri il Terminale (puoi trovarlo usando Spotlight).
- Digita il seguente comando ma NON premere ancora Invio. Assicurati di includere lo spazio alla fine:
xattr -d com.apple.quarantine - Trascina il file
YTSage.appdalla finestra del Finder e rilascialo direttamente nella finestra del Terminale. Questo incollerà automaticamente il percorso corretto del file. - Premi Invio per eseguire il comando.
- Prova a riaprire YTSage.app. Ora dovrebbe avviarsi correttamente.
Percorsi di configurazione (Avanzato)
- Windows:
%LOCALAPPDATA%\YTSage - macOS:
~/Library/Application Support/YTSage - Linux:
~/.local/share/YTSage
💖 Sponsor
Se YTSage ti fa risparmiare tempo, considera di sponsorizzare il progetto. Le sponsorizzazioni aiutano a coprire il tempo di sviluppo, i test su tutte le piattaforme e i miglioramenti futuri.
- GitHub Sponsors: https://github.com/sponsors/oop7
- Il link per la sponsorizzazione è disponibile direttamente tramite il dialogo Informazioni all'interno dell'app.
👥 Contribuire
I contributi sono benvenuti! Ecco come puoi aiutare:
- 🍴 Fork del repository
- 🌿 Crea il tuo ramo per la funzione:
git checkout -b feature/FunzioneIncredibile
- 💾 Fai il commit delle tue modifiche:
git commit -m 'Aggiungi FunzioneIncredibile'
- 📤 Fai il push sul ramo:
git push origin feature/FunzioneIncredibile
- 🔄 Apri una Pull Request
🌍 Contribuire alle traduzioni
- Aggiorna il file README localizzato pertinente (es.
readme-translations/README.it.md) - Mantieni sincronizzate le stringhe dell'app modificando
ytsage/languages/<code>.json - Se la tua lingua manca, parti da
README.mde creaREADME.<code>.md
📂 Struttura del Progetto
YTSage - Struttura del Progetto
Questo documento descrive la struttura organizzata delle cartelle di YTSage.
📁 Struttura del Progetto
YTSage/
├── 📁 .github/ # Configurazioni GitHub
│ ├── 📁 ISSUE_TEMPLATE/ # Modelli per segnalazioni
│ │ └── 🐛-bug-report.md # Modello per segnalazione bug
│ ├─── 📁 workflows/ # Workflow GitHub Actions
│ │ ├── build-linux.yml # Workflow build Linux
│ │ ├── build-macos.yml # Workflow build macOS
│ │ │── build-windows.yml # Workflow build Windows
| | └── release-all.yml # Workflow release master
│ └── 📄 CI_CD_README.md # Documentazione CI/CD
├── 📁 branding/ # Asset di branding (screenshot, SVG)
│ ├── 📁 icons/ # Icone dell'app
│ ├── 📁 screenshots/ # Screenshot per la documentazione
│ └── 📁 svg/ # Asset SVG
├── 📄 LICENSE # File della licenza
├── 📄 pyproject.toml # Metadati del progetto e dipendenze
├── 📄 README.md # Documentazione del progetto
├── 📄 requirements.txt # Dipendenze Python (dev)
└── 📁 ytsage/ # Pacchetto del codice sorgente
├── 📁 assets/ # Asset runtime
│ ├── 📁 Icon/ # Icone dell'app
│ └── 📁 sound/ # File audio
├── 📁 languages/ # File di localizzazione
│ ├── 📄 ar.json # Traduzione araba
│ ├── 📄 de.json # Traduzione tedesca
│ ├── 📄 en.json # Traduzione inglese
│ └── ... # Altre lingue
├── 📁 core/ # Logica di business principale
│ ├── 📄 __init__.py
│ ├── 📄 ytsage_deno.py # Integrazione Deno
│ ├── 📄 ytsage_downloader.py # Funzionalità di download
│ ├── 📄 ytsage_ffmpeg.py # Integrazione FFmpeg
│ ├── 📄 ytsage_utils.py # Funzioni di utilità
│ └── 📄 ytsage_yt_dlp.py # Integrazione yt-dlp
├── 📁 gui/ # Componenti dell'interfaccia utente
│ ├── 📄 __init__.py
│ ├── 📄 ytsage_gui_main.py # Finestra principale dell'app
│ └── 📁 ytsage_gui_dialogs/ # Classi per i dialoghi
├── 📁 utils/ # Moduli di utilità
│ ├── 📄 __init__.py
│ ├── 📄 ytsage_config_manager.py # Gestione configurazione
│ └── 📄 ytsage_logger.py # Strumenti di logging
├── 📄 __init__.py # Punto di ingresso del pacchetto
└── 📄 main.py # Script di esecuzione principale
⭐️ Cronologia Stelle
📜 Licenza
Questo progetto è rilasciato sotto Licenza MIT - vedi il file LICENSE per i dettagli.
🙏 Ringraziamenti
Mostra Ringraziamenti
Un grande ringraziamento a tutti coloro che hanno contribuito a questo progetto aprendo segnalazioni per suggerire miglioramenti o segnalare bug.
| Componenti Principali | |
|---|---|
| yt-dlp | Motore di Download |
| FFmpeg | Elaborazione Media |
| Deno | Runtime per l'integrazione di yt-dlp |
| Librerie e Framework | |
| PySide6 | Framework GUI |
| Pillow | Elaborazione Immagini |
| requests | Richieste HTTP |
| packaging | Gestione Versioni e Packaging |
| markdown | Rendering Markdown |
| loguru | Logging |
| Asset e Collaboratori | |
| New Notification 09 di Universfield | Suono di Notifica |
| viru185 | Collaboratore al Codice |
⚠️ Disclaimer
Questo strumento è solo per uso personale. Rispettate i Termini di Servizio di YouTube e i diritti dei produttori di contenuti.
Creato con ❤️ da oop7



