Copy edits and consistency fixes for translated README files in readme-translations (Spanish, Hindi and Indonesian). Changes include corrected wording and grammar, standardized headings and labels (installation, usage, settings), localized UI/alt text updates, clarified install/update instructions, unified terminology (e.g. Generic Mode, FFmpeg/yt-dlp detection), and various formatting improvements across language tables and troubleshooting notes. Pure documentation updates only.
25 KiB
Pengunduh YouTube modern dengan antarmuka PySide6 yang bersih.
Unduh video dalam kualitas apa pun, ekstrak audio, dapatkan subtitle, dan banyak lagi.
🌍 Bahasa README
Inggris: EN | Arab: AR | Jerman: DE | Spanyol: ES | Prancis: FR | Hindi: HI | Indonesia: ID | Italia: IT | Jepang: JA | Polandia: PL | Portugis: PT | Rusia: RU | Turki: TR | Mandarin: ZH
Instalasi • Fitur • Penggunaan • Screenshot • Troubleshooting • Sponsor • Kontribusi
❓ Mengapa YTSage?
YTSage dirancang untuk pengguna yang menginginkan pengunduh YouTube yang sederhana namun kuat. Tidak seperti alat lainnya, ia menawarkan:
- Antarmuka PySide6 yang modern dan bersih
- Unduh video, audio, dan subtitle sekali klik
- Fitur canggih seperti SponsorBlock, penggabungan subtitle, dan pemilihan playlist
- Mode Generik Opsional untuk situs di luar YouTube yang didukung oleh yt-dlp
- Dukungan lintas platform dan instalasi mudah
✨ Fitur
| Fitur Dasar | Fitur Lanjutan | Fitur Tambahan |
|---|---|---|
| 🎥 Tabel Format | 🚫 Integrasi SponsorBlock | 🎞️ Tampilan FPS/HDR |
| 🎵 Ekstraksi Audio | 📝 Pemilihan & Penggabungan Subtitle | 🔄 Pembaruan yt-dlp Otomatis |
| ✨ Antarmuka Pengguna Sederhana | 💾 Simpan Deskripsi & Thumbnail | 🛠️ Deteksi FFmpeg/yt-dlp/Deno |
| 📋 Dukungan & Pemilih Playlist | 🚀 Pembatas Kecepatan | ⚙️ Perintah Kustom |
| 📑 Integrasi Bab (Chapters) | ✂️ Potong Bagian Video | 🍪 Login Cookie |
| 📜 Riwayat Unduhan | 🔄 Pilihan Saluran Rilis | 🌐 Dukungan Proxy |
| 🎚️ Konversi Format Audio | 🎬 Pengaturan Format Video | 🆙 Tab Pembaruan Terintegrasi |
| 🌍 Mode Generik | 🔊 Normalisasi Audio (EBU R128) | 🌍 Lokalisasi dalam 14 Bahasa |
| 💾 Ekspor Playlist | ⚙️ Kualitas & Subtitle Default |
🚀 Instalasi
⚡ Instalasi Cepat (Direkomendasikan)
Instal YTSage melalui PyPI:
pip install ytsage
🔄 Perbarui Instalasi yang Ada
pip install --upgrade ytsage
Kemudian jalankan aplikasi:
ytsage
📦 Executable Siap Pakai (Executable)
🪟 Windows
| Format | Deskripsi |
|---|---|
| Installer Standar | |
| Dilengkapi dengan FFmpeg | |
| Versi Portabel, tidak perlu instalasi | |
| Portabel dengan FFmpeg, dikompresi (ZIP) |
🛠️ Langkah Instalasi
- Installer EXE (
.exe): Klik dua kali pada file dan ikuti wizard pengaturan. - Versi Portabel (
.zip): Ekstrak arsip ke lokasi yang diinginkan dan jalankanytsage.exe. - FFmpeg Bawaan: Jika Anda tidak memiliki FFmpeg di sistem Anda, pilih versi dengan FFmpeg bawaan.
🐧 Linux
| Format | Deskripsi |
|---|---|
| Paket Debian | |
| AppImage, Portabel | |
| Paket RPM | |
| Bundel Flatpak |
🛠️ Langkah Instalasi
- DEB (
.deb):sudo dpkg -i ytsage_*.deb sudo apt-get install -f # Jika perlu perbaiki dependensi yang kurang - RPM (
.rpm):sudo rpm -i ytsage-*.rpm - AppImage (
.AppImage):chmod +x YTSage-*.AppImage ./YTSage-*.AppImage - Flatpak: Ikuti instruksi di Flathub atau jalankan:
flatpak install flathub io.github.oop7.ytsage
🍎 macOS
| Format | Deskripsi |
|---|---|
| Aplikasi ZIP untuk Apple Silicon | |
| Installer Disk Image untuk Apple Silicon |
🛠️ Langkah Instalasi
- Installer DMG (
.dmg): Klik dua kali untuk memasang, lalu tarikYTSage.appke folder Applications Anda. - Arsip Aplikasi (
.zip): Ekstrak ZIP dan pindahkanYTSage.appke folder Applications Anda.
Catatan: Jika Anda mendapatkan kesalahan "App is damaged", lihat bagian Troubleshooting macOS di bawah ini.
💻 Instalasi Manual dari Sumber (Source)
1. Kloning Repositori
git clone https://github.com/oop7/YTSage.git
cd YTSage
2. Instal Dependensi
⚡ Dengan uv
uv pip install .
📦 Atau dengan pip standar
pip install .
3. Jalankan Aplikasi
python -m ytsage.main
📸 Screenshot
📖 Penggunaan
🎯 Penggunaan Dasar
- Luncurkan YTSage
- Tempel URL YouTube (atau gunakan tombol "Paste URL")
- Klik "Analyze"
- Pilih Format:
Videountuk unduhan videoAudio Onlyuntuk ekstraksi audio
- Pilih Opsi:
- Aktifkan subtitle dan pilih bahasa
- Aktifkan penggabungan subtitle
- Simpan thumbnail
- Hapus bagian sponsor
- Simpan deskripsi
- Masukkan bab (chapters)
- Pilih Direktori Output
- Klik "Download"
💡 Direktori unduhan bawaan adalah folder "Downloads" pengguna.
📋 Unduhan Playlist
- Tempel URL Playlist
- Klik "Analyze"
- Pilih video dari pemilih playlist (opsional, default semua)
- Pilih format/kualitas yang diinginkan
- Klik "Download"
💡 Aplikasi secara otomatis mengelola antrean unduhan, dan Anda dapat mengekspor entri playlist sebagai file
.txt,.csv,.m3u, atau.json.
🌍 Mode Generik untuk Situs Selain YouTube
Gunakan Mode Generik saat Anda ingin YTSage menerima URL dari situs yang didukung oleh yt-dlp seperti Dailymotion, CBC Gem, TikTok, dan lainnya.
Cara menggunakannya:
- Buka
Download Settings. - Aktifkan
Generic Mode. - Tempel URL video atau playlist yang didukung selain YouTube.
- Klik
Analyze. - Pilih format dan unduh seperti biasa.
Catatan:
- Mode Generik hanya mengubah validasi URL di dalam YTSage. Situs target harus tetap didukung oleh versi yt-dlp yang Anda instal.
- Beberapa situs memerlukan cookie, login, proxy, atau argumen yt-dlp tambahan tergantung pada ekstraktornya.
- Jika suatu situs gagal, perbarui yt-dlp dari tab pembaruan terintegrasi sebelum melaporkan masalah.
🧰 Opsi Media & Unduhan
- Opsi Subtitle: Filter bahasa dan masukkan subtitle ke dalam file video.
- Penggabungan Subtitle: Menggabungkan subtitle ke dalam file video untuk subtitle permanen (hardcoded).
- Simpan Deskripsi: Simpan deskripsi video sebagai file teks.
- Simpan Thumbnail: Simpan thumbnail video sebagai file gambar.
- Masukkan Bab (Chapters): Sertakan penanda bab sebagai metadata untuk pemutar video yang kompatibel.
- Hapus Bagian Sponsor: Gunakan SponsorBlock untuk menghapus segmen sponsor dari video.
- Potong Video: Unduh hanya bagian tertentu dari video dengan menentukan rentang waktu dalam format
JJ:MM:DD.
⚙️ Pengaturan Output & File
- Pembatas Kecepatan: Batasi kecepatan unduhan, misalnya
500Kuntuk 500 KB/s. - Simpan Jalur Unduhan: Menyimpan jalur unduhan default untuk unduhan di masa mendatang. Tersedia di Download Settings → Download Path.
- Resolusi Video Default: Atur resolusi video pilihan Anda untuk pemilihan otomatis (misalnya 1080p, 720p). Tersedia di Download Settings → Default Video Resolution.
- Bahasa Subtitle Default: Atur bahasa subtitle default untuk pemilihan otomatis (dipisahkan koma, misalnya
id,en). Tersedia di Download Settings → Default Subtitle Languages. - Format Nama File: Sesuaikan format nama file output menggunakan variabel seperti
%(title)s,%(uploader)s,%(playlist_index)s, dan%(resolution)s. Tersedia di Download Settings → Filename Format. - Paksa Format Output: Paksa unduhan video ke format kontainer tertentu seperti
mp4,webm, ataumkv. Tersedia di Download Settings → Output Format Settings. - Konversi Format Audio: Konversi unduhan audio saja ke format pilihan seperti
AAC,MP3,FLAC,WAV,Opus,M4A,Vorbis, atauBest. Tersedia di Download Settings → Audio Format Settings. - Normalisasi Audio: Standarisasi volume untuk unduhan audio saja menggunakan EBU R128.
- Koneksi Serentak: Tingkatkan kecepatan unduhan secara signifikan dengan mengunduh file dalam beberapa bagian secara bersamaan. Tersedia di Download Settings → General → Concurrent Connections (default 1, maksimal 8-10 direkomendasikan untuk menghindari blokir IP).
🌐 Akses & Jaringan
- Login Cookie: Masuk ke YouTube menggunakan cookie untuk mengakses konten pribadi.
Penggunaan:
- Direkomendasikan: Gunakan opsi bawaan
Extract cookies from browserdi aplikasi, lalu pilih browser dan opsional profil Anda. - Secara opsional, ekstrak cookie secara manual:
a. Ekspor cookie dari browser Anda menggunakan ekstensi seperti cookie-editor
b. Salin cookie dalam format Netscape
c. Buat file bernama
cookies.txtdan tempel cookie d. Pilih filecookies.txtdi aplikasi
- Direkomendasikan: Gunakan opsi bawaan
- Dukungan Proxy: Gunakan server proxy untuk unduhan, misalnya
http://<server-proxy>:<port> - Mode Generik: Izinkan YTSage untuk menganalisis dan mengunduh dari situs selain YouTube yang didukung oleh yt-dlp. Aktifkan dari Download Settings → Generic Mode.
🛠️ Alat & Pemeliharaan
- Perintah Kustom: Akses fitur yt-dlp tingkat lanjut melalui argumen baris perintah.
- Tab Pembaruan: Kelola alat pembaruan bawaan dari satu tempat di Opsi Kustom:
- Pembaruan yt-dlp: Periksa pembaruan dan beralih antara saluran rilis Stable dan Nightly.
- Pemeriksa Versi FFmpeg: Verifikasi versi FFmpeg Anda dan buka panduan instalasi.
- Pembaruan Deno: Periksa dan perbarui runtime Deno.
- Deteksi FFmpeg/yt-dlp/Deno: Secara otomatis mendeteksi jalur dan versi FFmpeg, yt-dlp, dan Deno dari dialog About.
- Riwayat Unduhan: Lihat unduhan sebelumnya dengan thumbnail dan status dari tombol History.
🌍 Lokalisasi
YTSage mendukung 14 bahasa untuk jangkauan global. Pilih bahasa pilihan Anda di Custom Options → Language.
Bahasa yang Didukung
| Bahasa | Kode | Bahasa | Kode |
|---|---|---|---|
| 🇺🇸 Inggris | en |
🇪🇸 Spanyol | es |
| 🇸🇦 Arab | ar |
🇫🇷 Prancis | fr |
| 🇩🇪 Jerman | de |
🇮🇳 Hindi | hi |
| 🇮🇩 Indonesia | id |
🇮🇹 Italia | it |
| 🇯🇵 Jepang | ja |
🇵🇱 Polandia | pl |
| 🇧🇷 Portugis | pt |
🇷🇺 Rusia | ru |
| 🇹🇷 Turki | tr |
🇨🇳 Mandarin | zh |
Terjemahan README
| Bahasa | File | Bahasa | File |
|---|---|---|---|
| 🇺🇸 Inggris | README.md | 🇪🇸 Spanyol | README.es.md |
| 🇸🇦 Arab | README.ar.md | 🇫🇷 Prancis | README.fr.md |
| 🇩🇪 Jerman | README.de.md | 🇮🇳 Hindi | README.hi.md |
| 🇮🇩 Indonesia | README.id.md | 🇮🇹 Italia | README.it.md |
| 🇯🇵 Jepang | README.ja.md | 🇵🇱 Polandia | README.pl.md |
| 🇧🇷 Portugis | README.pt.md | 🇷🇺 Rusia | README.ru.md |
| 🇹🇷 Turki | README.tr.md | 🇨🇳 Mandarin | README.zh.md |
💡 Ingin membantu menerjemahkan? Lihat bagian Kontribusi untuk membantu kami menambahkan lebih banyak bahasa!
🛠️ Troubleshooting
Klik untuk melihat masalah umum dan solusinya
- Tabel format tidak muncul: Perbarui yt-dlp ke versi terbaru dan coba beralih ke yt-dlp Nightly.
- Unduhan gagal: Periksa koneksi internet Anda dan pastikan video tersedia.
- Kesalahan Unduhan Spesifik:
- Video Pribadi: Gunakan autentikasi cookie untuk mengakses konten pribadi.
- Konten Dibatasi Usia: Masuk ke akun YouTube Anda untuk melihat video yang dibatasi usia.
- Video yang Diblokir Geo: Pertimbangkan menggunakan VPN untuk melewati batasan regional.
- Video Dihapus: Video tidak lagi tersedia di YouTube.
- Live Stream: Streaming langsung tidak dapat diunduh saat sedang disiarkan; tunggu hingga streaming selesai.
- Kesalahan Jaringan: Periksa koneksi internet Anda dan coba lagi.
- URL Tidak Valid: Pastikan URL benar dan berasal dari platform yang didukung.
- Konten Premium: Memerlukan langganan YouTube Premium.
- Blokir Hak Cipta: Konten diblokir karena pembatasan hak cipta.
- File video dan audio terpisah setelah diunduh: Ini terjadi ketika FFmpeg hilang atau tidak terdeteksi. YTSage memerlukan FFmpeg untuk menggabungkan aliran video dan audio berkualitas tinggi.
- Solusi: Pastikan FFmpeg terinstal dan dapat diakses di PATH sistem Anda. Untuk pengguna Windows, opsi termudah adalah mengunduh file
YTSage-v<version>-ffmpeg.exe, yang dilengkapi dengan FFmpeg.
- Solusi: Pastikan FFmpeg terinstal dan dapat diakses di PATH sistem Anda. Untuk pengguna Windows, opsi termudah adalah mengunduh file
🛡️ Peringatan Windows Defender / Antivirus
Beberapa perangkat lunak antivirus mungkin menandai file .exe sebagai positif palsu (false positive). Ini adalah batasan umum dari aplikasi yang dipaketkan.
Mengapa ini terjadi:
- Heuristik antivirus mungkin salah mengidentifikasi executable yang dipaketkan sebagai mencurigakan.
Opsi Aman:
- ✅ Gunakan instalasi pip:
pip install ytsage(direkomendasikan) - ✅ Build dari sumber: Mengikuti panduan ini
- ✅ Whitelist aplikasi di perangkat lunak antivirus Anda.
🍎 macOS: "App is damaged and can’t be opened"
Jika Anda melihat kesalahan ini di macOS Sonoma atau yang lebih baru, Anda perlu menghapus atribut karantina.
- Buka Terminal (Anda dapat menemukannya menggunakan Spotlight).
- Ketik perintah berikut tetapi JANGAN tekan Enter dulu. Pastikan untuk menyertakan spasi di akhir:
xattr -d com.apple.quarantine - Tarik file
YTSage.appdari jendela Finder Anda dan lepaskan langsung ke jendela Terminal. Ini akan secara otomatis menempelkan jalur file yang benar. - Tekan Enter untuk menjalankan perintah.
- Coba buka kembali YTSage.app. Sekarang seharusnya dapat diluncurkan dengan benar.
Lokasi Konfigurasi (Lanjutan)
- Windows:
%LOCALAPPDATA%\YTSage - macOS:
~/Library/Application Support/YTSage - Linux:
~/.local/share/YTSage
💖 Sponsor
Jika YTSage menghemat waktu Anda, pertimbangkan untuk mensponsori proyek ini. Sponsor membantu mencakup waktu pengembangan, pengujian di semua platform, dan peningkatan di masa mendatang.
- GitHub Sponsors: https://github.com/sponsors/oop7
- Tautan sponsor tersedia langsung melalui dialog About di dalam aplikasi.
👥 Kontribusi
Kami menerima kontribusi! Berikut cara Anda dapat membantu:
- 🍴 Fork repositori
- 🌿 Buat cabang fitur Anda:
git checkout -b feature/FiturLuarBiasa
- 💾 Komit perubahan Anda:
git commit -m 'Tambah FiturLuarBiasa'
- 📤 Push ke cabang:
git push origin feature/FiturLuarBiasa
- 🔄 Buka Pull Request
🌍 Berkontribusi pada Terjemahan
- Perbarui file README lokal yang relevan (misalnya
readme-translations/README.id.md) - Jaga agar string aplikasi tetap sinkron dengan mengedit
ytsage/languages/<code>.json - Jika bahasa Anda belum ada, mulailah dari
README.mddan buatREADME.<code>.md
📂 Struktur Proyek
YTSage - Struktur Proyek
Dokumen ini menjelaskan struktur folder yang terorganisir dari YTSage.
📁 Struktur Proyek
YTSage/
├── 📁 .github/ # Konfigurasi GitHub
│ ├── 📁 ISSUE_TEMPLATE/ # Templat Issue
│ │ └── 🐛-bug-report.md # Templat laporan bug
│ ├─── 📁 workflows/ # Alur kerja GitHub Actions
│ │ ├── build-linux.yml # Alur kerja build Linux
│ │ ├── build-macos.yml # Alur kerja build macOS
│ │ │── build-windows.yml # Alur kerja build Windows
| | └── release-all.yml # Alur kerja rilis master
│ └── 📄 CI_CD_README.md # Dokumentasi CI/CD
├── 📁 branding/ # Aset branding (screenshot, SVG)
│ ├── 📁 icons/ # Ikon aplikasi
│ ├── 📁 screenshots/ # Screenshot untuk dokumentasi
│ └── 📁 svg/ # Aset SVG
├── 📄 LICENSE # File lisensi
├── 📄 pyproject.toml # Metadata proyek dan dependensi
├── 📄 README.md # Dokumentasi proyek
├── 📄 requirements.txt # Dependensi Python (dev)
└── 📁 ytsage/ # Paket kode sumber
├── 📁 assets/ # Aset runtime
│ ├── 📁 Icon/ # Ikon aplikasi
│ └── 📁 sound/ # File audio
├── 📁 languages/ # File lokalisasi
│ ├── 📄 ar.json # Terjemahan Arab
│ ├── 📄 de.json # Terjemahan Jerman
│ ├── 📄 en.json # Terjemahan Inggris
│ └── ... # Bahasa lainnya
├── 📁 core/ # Logika bisnis inti
│ ├── 📄 __init__.py
│ ├── 📄 ytsage_deno.py # Integrasi Deno
│ ├── 📄 ytsage_downloader.py # Fungsionalitas pengunduhan
│ ├── 📄 ytsage_ffmpeg.py # Integrasi FFmpeg
│ ├── 📄 ytsage_utils.py # Fungsi utilitas
│ └── 📄 ytsage_yt_dlp.py # Integrasi yt-dlp
├── 📁 gui/ # Komponen antarmuka pengguna
│ ├── 📄 __init__.py
│ ├── 📄 ytsage_gui_main.py # Jendela utama aplikasi
│ └── 📁 ytsage_gui_dialogs/ # Kelas dialog
├── 📁 utils/ # Modul utilitas
│ ├── 📄 __init__.py
│ ├── 📄 ytsage_config_manager.py # Manajemen konfigurasi
│ └── 📄 ytsage_logger.py # Alat logging
├── 📄 __init__.py # Titik masuk paket
└── 📄 main.py # Skrip eksekusi utama
⭐️ Riwayat Bintang
📜 Lisensi
Proyek ini dilisensikan di bawah Lisensi MIT - lihat file LICENSE untuk detailnya.
🙏 Terima Kasih
Tampilkan Terima Kasih
Terima kasih banyak kepada semua orang yang telah berkontribusi pada proyek ini dengan membuka masalah untuk menyarankan perbaikan atau melaporkan bug.
| Komponen Utama | |
|---|---|
| yt-dlp | Mesin Pengunduhan |
| FFmpeg | Pemrosesan Media |
| Deno | Runtime untuk integrasi yt-dlp |
| Pustaka & Framework | |
| PySide6 | Framework GUI |
| Pillow | Pemrosesan Gambar |
| requests | Permintaan HTTP |
| packaging | Manajemen Versi & Pemaketan |
| markdown | Rendering Markdown |
| loguru | Logging |
| Aset & Kontributor | |
| New Notification 09 oleh Universfield | Suara Notifikasi |
| viru185 | Kontributor Kode |
⚠️ Penafian
Alat ini hanya untuk penggunaan pribadi. Harap hormati Ketentuan Layanan YouTube dan hak-hak produser konten.
Dibuat dengan ❤️ oleh oop7



