Polish README text, paths, and formatting
Editorial and structural updates to README.md and readme-translations/README.tr.md: fix image paths (use ../branding/ and forward slashes), standardize wording/capitalization (Application, Download, Install, etc.), reformat feature tables and installation sections for consistency, clarify install/update/run commands, improve macOS/Windows troubleshooting and antivirus guidance, adjust screenshot alt texts, and apply numerous minor localization and copy corrections in the Turkish translation.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<div align="center">
|
||||
|
||||
<img src="branding\svg\ytsage-wordmark.svg" width="400" alt="ytsage-wordmark">
|
||||
<img src="branding\screenshots\main.png" width="800" alt="YTSage Interface"/>
|
||||
<img src="../branding/svg/ytsage-wordmark.svg" width="400" alt="ytsage-wordmark">
|
||||
<img src="../branding/screenshots/main.png" width="800" alt="YTSage Interface"/>
|
||||
|
||||
[](https://www.python.org/downloads/)
|
||||
[](https://pepy.tech/project/ytsage)
|
||||
@@ -12,25 +12,25 @@
|
||||
[](https://pypi.org/project/ytsage/)
|
||||
[](https://github.com/sponsors/oop7)
|
||||
|
||||
**A modern YouTube downloader with a clean PySide6 interface.**
|
||||
**Modern YouTube downloader with a clean PySide6 interface.**
|
||||
Download videos in any quality, extract audio, fetch subtitles, and more.
|
||||
|
||||
### 🌍 README Languages
|
||||
|
||||
English: [EN](README.md)
|
||||
| العربية: [AR](readme-translations/README.ar.md)
|
||||
| Deutsch: [DE](readme-translations/README.de.md)
|
||||
| Español: [ES](readme-translations/README.es.md)
|
||||
| Français: [FR](readme-translations/README.fr.md)
|
||||
| हिन्दी: [HI](readme-translations/README.hi.md)
|
||||
| Bahasa Indonesia: [ID](readme-translations/README.id.md)
|
||||
| Italiano: [IT](readme-translations/README.it.md)
|
||||
| 日本語: [JA](readme-translations/README.ja.md)
|
||||
| Polski: [PL](readme-translations/README.pl.md)
|
||||
| Português: [PT](readme-translations/README.pt.md)
|
||||
| Русский: [RU](readme-translations/README.ru.md)
|
||||
| Türkçe: [TR](readme-translations/README.tr.md)
|
||||
| 中文: [ZH](readme-translations/README.zh.md)
|
||||
English: [EN](../README.md)
|
||||
| Arabic: [AR](README.ar.md)
|
||||
| German: [DE](README.de.md)
|
||||
| Spanish: [ES](README.es.md)
|
||||
| French: [FR](README.fr.md)
|
||||
| Hindi: [HI](README.hi.md)
|
||||
| Indonesian: [ID](README.id.md)
|
||||
| Italian: [IT](README.it.md)
|
||||
| Japanese: [JA](README.ja.md)
|
||||
| Polish: [PL](README.pl.md)
|
||||
| Portuguese: [PT](README.pt.md)
|
||||
| Russian: [RU](README.ru.md)
|
||||
| Turkish: [TR](README.tr.md)
|
||||
| Chinese: [ZH](README.zh.md)
|
||||
|
||||
<p align="center">
|
||||
<a href="#installation">Installation</a> •
|
||||
@@ -51,10 +51,10 @@ English: [EN](README.md)
|
||||
|
||||
YTSage is designed for users who want a **simple yet powerful YouTube downloader**. Unlike other tools, it offers:
|
||||
|
||||
- A clean, modern PySide6 interface
|
||||
- A modern and clean PySide6 interface
|
||||
- One-click downloads for video, audio, and subtitles
|
||||
- Advanced features like SponsorBlock, subtitle merging, and playlist selection
|
||||
- Optional Generic Mode for yt-dlp-supported sites beyond YouTube
|
||||
- Optional Generic Mode for sites supported by yt-dlp beyond YouTube
|
||||
- Cross-platform support and easy installation
|
||||
|
||||
<a id="features"></a>
|
||||
@@ -62,17 +62,17 @@ YTSage is designed for users who want a **simple yet powerful YouTube downloader
|
||||
|
||||
<div align="center">
|
||||
|
||||
| Core Features | Advanced Features | Extra Features |
|
||||
| Core Features | Advanced Features | Extra Features |
|
||||
|-----------------------------------|-----------------------------------------|------------------------------------|
|
||||
| 🎥 Format Table | 🚫 SponsorBlock Integration | 🎞️ FPS/HDR Display |
|
||||
| 🎵 Audio Extraction | 📝 Multi-Subtitle Select & Merge | 🔄 Auto-Update yt-dlp |
|
||||
| ✨ Simple UI | 💾 Save Description & Thumbnail | 🛠️ FFmpeg/yt-dlp/Deno Detection |
|
||||
| 📋 Playlist Support & Selector | 🚀 Speed Limiter | ⚙️ Custom Commands |
|
||||
| 📑 Embed Chapters | ✂️ Trim Video Sections | 🍪 Login with Cookies |
|
||||
| 📜 Download History | 🔄 Release Channel Selection | 🌐 Proxy Support |
|
||||
| 🎚️ Audio Format Conversion | 🎬 Video Format Settings | 🆙 Built-in Updater Tab |
|
||||
| 🌍 Generic Mode | 🔊 Audio Normalization (EBU R128) | 🌍 Localization in 14 Languages |
|
||||
| 💾 Export Playlists | ⚙️ Default Quality & Subtitles | |
|
||||
| 🎥 Format Table | 🚫 SponsorBlock Integration | 🎞️ FPS/HDR Display |
|
||||
| 🎵 Audio Extraction | 📝 Subtitle Selection & Merging | 🔄 Auto Update yt-dlp |
|
||||
| ✨ Simple UI | 💾 Save Description & Thumbnail | 🛠️ FFmpeg/yt-dlp/Deno Detection |
|
||||
| 📋 Playlist Support & Selector | 🚀 Speed Limiter | ⚙️ Custom Commands |
|
||||
| 📑 Chapter Integration | ✂️ Video Section Trimming | 🍪 Login with Cookies |
|
||||
| 📜 Download History | 🔄 Version Channel Selection | 🌐 Proxy Support |
|
||||
| 🎚️ Audio Format Conversion | 🎬 Video Format Settings | 🆙 Built-in Updater Tab |
|
||||
| 🌍 Generic Mode | 🔊 Audio Normalization (EBU R128) | 🌍 Localized in 14 Languages |
|
||||
| 💾 Playlist Export | ⚙️ Default Quality & Subtitles | |
|
||||
</div>
|
||||
|
||||
<a id="installation"></a>
|
||||
@@ -80,14 +80,14 @@ YTSage is designed for users who want a **simple yet powerful YouTube downloader
|
||||
|
||||
### ⚡ Quick Install (Recommended)
|
||||
|
||||
Install YTSage from PyPI:
|
||||
Install YTSage via PyPI:
|
||||
|
||||
```bash
|
||||
pip install ytsage
|
||||
```
|
||||
|
||||
<details>
|
||||
<summary>🔄 Update an existing installation</summary>
|
||||
<summary>🔄 Update existing installation</summary>
|
||||
|
||||
```bash
|
||||
pip install --upgrade ytsage
|
||||
@@ -95,7 +95,7 @@ pip install --upgrade ytsage
|
||||
|
||||
</details>
|
||||
|
||||
Then launch the app:
|
||||
Then launch the application:
|
||||
|
||||
```bash
|
||||
ytsage
|
||||
@@ -109,26 +109,26 @@ ytsage
|
||||
|
||||
| Format | Description |
|
||||
|--------|-------------|
|
||||
|  | Standard installer |
|
||||
|  | With FFmpeg bundled |
|
||||
|  | Portable version, no installation required |
|
||||
|  | Standard Installer |
|
||||
|  | With FFmpeg Included |
|
||||
|  | Portable version, no installation needed |
|
||||
|  | Portable with FFmpeg, zipped |
|
||||
|
||||
<details>
|
||||
<summary>🛠️ Installation Steps</summary>
|
||||
|
||||
1. **EXE Installer (`.exe`)**: Double-click the file and follow the setup wizard.
|
||||
2. **Portable Version (`.zip`)**: Extract the archive to your desired location and run `ytsage.exe`.
|
||||
3. **FFmpeg Bundled**: Choose the FFmpeg bundled versions if you don't have FFmpeg installed on your system.
|
||||
2. **Portable Version (`.zip`)**: Extract the archive to your desired location and launch `ytsage.exe`.
|
||||
3. **FFmpeg Included**: Choose versions with FFmpeg included if you don't have FFmpeg installed on your system.
|
||||
</details>
|
||||
|
||||
#### 🐧 Linux
|
||||
|
||||
| Format | Description |
|
||||
|--------|-------------|
|
||||
|  | Debian package |
|
||||
|  | AppImage, portable |
|
||||
|  | RPM package |
|
||||
|  | Debian Package |
|
||||
|  | AppImage, Portable |
|
||||
|  | RPM Package |
|
||||
|  | Flatpak Bundle |
|
||||
|
||||
<details>
|
||||
@@ -137,7 +137,7 @@ ytsage
|
||||
- **DEB (`.deb`)**:
|
||||
```bash
|
||||
sudo dpkg -i ytsage_*.deb
|
||||
sudo apt-get install -f # Fix missing dependencies if any
|
||||
sudo apt-get install -f # Fix missing dependencies if needed
|
||||
```
|
||||
- **RPM (`.rpm`)**:
|
||||
```bash
|
||||
@@ -158,45 +158,45 @@ ytsage
|
||||
|
||||
| Format | Description |
|
||||
|--------|-------------|
|
||||
|  | Zipped application for Apple Silicon |
|
||||
|  | Disk image installer for Apple Silicon |
|
||||
|  | Zipped Application for Apple Silicon |
|
||||
|  | Disk Image Installer for Apple Silicon |
|
||||
|
||||
<details>
|
||||
<summary>🛠️ Installation Steps</summary>
|
||||
|
||||
- **DMG Installer (`.dmg`)**: Double-click to mount, then drag `YTSage.app` into your Applications folder.
|
||||
- **App Archive (`.zip`)**: Extract the zip and move `YTSage.app` to your Applications folder.
|
||||
- **DMG Installer (`.dmg`)**: Double-click to mount, then drag `YTSage.app` to your Applications folder.
|
||||
- **Application Archive (`.zip`)**: Extract the zip and move `YTSage.app` to your Applications folder.
|
||||
|
||||
*Note: If you encounter an "App is damaged" error, see the [macOS troubleshooting section](#troubleshooting) below.*
|
||||
*Note: If you encounter an "Application is damaged" error, see the macOS troubleshooting section below.*
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
<details>
|
||||
<summary>💻 Manual Installation from Source</summary>
|
||||
<summary>💻 Manual Source Installation</summary>
|
||||
|
||||
### 1. Clone the Repository
|
||||
### 1. Clone the repository
|
||||
|
||||
```bash
|
||||
git clone https://github.com/oop7/YTSage.git
|
||||
cd YTSage
|
||||
```
|
||||
|
||||
### 2. Install Dependencies
|
||||
### 2. Install dependencies
|
||||
|
||||
#### ⚡ With uv
|
||||
#### ⚡ Using uv
|
||||
|
||||
```bash
|
||||
uv pip install .
|
||||
```
|
||||
|
||||
#### 📦 Or with standard pip
|
||||
#### 📦 Or using standard pip
|
||||
|
||||
```bash
|
||||
pip install .
|
||||
```
|
||||
|
||||
### 3. Run the Application
|
||||
### 3. Run the application
|
||||
|
||||
```bash
|
||||
python -m ytsage.main
|
||||
@@ -210,16 +210,16 @@ python -m ytsage.main
|
||||
<div align="center">
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="branding\screenshots\Download-Settings.png" alt="Download Settings" width="400"/></td>
|
||||
<td><img src="branding\screenshots\playlist.png" alt="Playlist Download" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/Download-Settings.png" alt="Download Settings" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/playlist.png" alt="Playlist Download" width="400"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><em>Download Settings</em></td>
|
||||
<td align="center"><em>Playlist Download</em></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="branding\screenshots\audio_format.png" alt="Audio Format Selection with Save Thumbnail" width="400"/></td>
|
||||
<td><img src="branding\screenshots\Custom-Option.png" alt="Custom Options" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/audio_format.png" alt="Audio Format Selection" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/Custom-Option.png" alt="Custom Options" width="400"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><em>Audio Format</em></td>
|
||||
@@ -241,16 +241,16 @@ python -m ytsage.main
|
||||
- `Video` for video downloads
|
||||
- `Audio Only` for audio extraction
|
||||
5. **Choose Options:**
|
||||
- Enable subtitles & select language
|
||||
- Enable subtitle merge
|
||||
- Save thumbnail
|
||||
- Remove sponsor segments
|
||||
- Save description
|
||||
- Embed chapters
|
||||
- Enable Subtitles and select language
|
||||
- Enable Subtitle Merging
|
||||
- Save Thumbnail
|
||||
- Remove Sponsored Segments
|
||||
- Save Description
|
||||
- Embed Chapters
|
||||
6. **Select Output Directory**
|
||||
7. **Click "Download"**
|
||||
|
||||
> 💡 The default download directory is the user's "Downloads" folder.
|
||||
> 💡 Default download directory is the user's "Downloads" folder.
|
||||
|
||||
</details>
|
||||
|
||||
@@ -263,84 +263,84 @@ python -m ytsage.main
|
||||
4. **Choose desired format/quality**
|
||||
5. **Click "Download"**
|
||||
|
||||
> 💡 The application automatically handles the download queue, and you can export the playlist entries to `.txt`, `.csv`, `.m3u`, or `.json` using the **Save Playlist As** button.
|
||||
> 💡 The application automatically handles the download queue, and you can export playlist entries as `.txt`, `.csv`, `.m3u`, or `.json`.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🌍 Generic Mode for non-YouTube sites</summary>
|
||||
<summary>🌍 Generic Mode for Non-YouTube Sites</summary>
|
||||
|
||||
Use Generic Mode when you want YTSage to accept URLs from sites supported by yt-dlp, such as Dailymotion, CBC Gem, TikTok, and others.
|
||||
|
||||
How to use it:
|
||||
|
||||
1. Open `Download Settings`.
|
||||
2. Enable `Generic Mode`.
|
||||
3. Paste a supported non-YouTube video or playlist URL.
|
||||
2. Toggle on `Generic Mode`.
|
||||
3. Paste a supported video or playlist URL that is not from YouTube.
|
||||
4. Click `Analyze`.
|
||||
5. Choose a format and download as usual.
|
||||
|
||||
Notes:
|
||||
|
||||
- Generic Mode only changes URL validation inside YTSage. The target site must still be supported by your installed yt-dlp version.
|
||||
- Some sites require cookies, a login session, a proxy, or extra yt-dlp arguments depending on the extractor.
|
||||
- If a site fails, update yt-dlp first from the built-in updater tab before reporting the issue.
|
||||
- Generic mode only changes the URL validation inside YTSage. The target site must still be supported by your installed version of yt-dlp.
|
||||
- Some sites require cookies, login sessions, proxy, or extra yt-dlp arguments depending on the extractor.
|
||||
- If a site fails, update yt-dlp from the built-in updater tab first before reporting an issue.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🧰 Media and Download Options</summary>
|
||||
<summary>🧰 Media & Download Options</summary>
|
||||
|
||||
- **Subtitle Options:** Filter languages and embed subtitles into the video file
|
||||
- **Subtitle Merge:** Merge subtitles into the video file for hardcoded subtitles
|
||||
- **Save Description:** Save the video description as a text file
|
||||
- **Save Thumbnail:** Save the video thumbnail as an image file
|
||||
- **Embed Chapters:** Embed chapter markers as metadata for compatible video players
|
||||
- **Remove Sponsor Segments:** Remove sponsor segments from the video using SponsorBlock
|
||||
- **Trim Video:** Download only specific parts of a video by specifying time ranges in `HH:MM:SS` format
|
||||
- **Subtitle Options:** Filter languages and embed subtitles into the video file.
|
||||
- **Subtitle Merging:** Merge subtitles into the video file for hardcoded/burned-in subtitles.
|
||||
- **Save Description:** Save the video description as a text file.
|
||||
- **Save Thumbnail:** Save the video thumbnail as an image file.
|
||||
- **Embed Chapters:** Embed chapter markers as metadata for compatible video players.
|
||||
- **Remove Sponsored Segments:** Remove sponsored segments from the video using SponsorBlock.
|
||||
- **Trim Video:** Download only specific parts of a video by specifying time ranges in `HH:MM:SS` format.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>⚙️ Output and File Settings</summary>
|
||||
<summary>⚙️ Output & File Settings</summary>
|
||||
|
||||
- **Speed Limiter:** Limit the download speed, for example `500K` for 500 KB/s
|
||||
- **Save Download Path:** Save the default download path for future downloads. Available in **Download Settings → Download Path**.
|
||||
- **Default Video Resolution:** Set your preferred default video resolution for automatic selection (e.g., 1080p, 720p). Available in **Download Settings → Default Video Resolution**.
|
||||
- **Default Subtitle Languages:** Set default subtitle languages to auto-select automatically (comma-separated, e.g., `en,es`). Available in **Download Settings → Default Subtitle Languages**.
|
||||
- **Speed Limiter:** Limit download speed, e.g., `500K` for 500 KB/s.
|
||||
- **Save Download Path:** Saves the default download path for future downloads. Available in **Download Settings → Download Path**.
|
||||
- **Default Video Resolution:** Set your preferred default video resolution for auto-selection (e.g., 1080p, 720p). Available in **Download Settings → Default Video Resolution**.
|
||||
- **Default Subtitle Languages:** Set default subtitle languages for auto-selection (comma-separated, e.g., `en,es`). Available in **Download Settings → Default Subtitle Languages**.
|
||||
- **Output Filename Format:** Customize the output filename format using variables like `%(title)s`, `%(uploader)s`, `%(playlist_index)s`, and `%(resolution)s`. Available in **Download Settings → Filename Format**.
|
||||
- **Force Output Format:** Force video downloads into a specific container format such as `mp4`, `webm`, or `mkv`. Available in **Download Settings → Output Format Settings**.
|
||||
- **Audio Format Conversion:** Convert audio-only downloads to preferred formats such as `AAC`, `MP3`, `FLAC`, `WAV`, `Opus`, `M4A`, `Vorbis`, or `Best`. Available in **Download Settings → Audio Format Settings**.
|
||||
- **Force Output Format:** Force video downloads into a specific container format like `mp4`, `webm`, or `mkv`. Available in **Download Settings → Output Format Settings**.
|
||||
- **Audio Format Conversion:** Convert audio-only downloads into preferred formats such as `AAC`, `MP3`, `FLAC`, `WAV`, `Opus`, `M4A`, `Vorbis`, or `Best`. Available in **Download Settings → Audio Format Settings**.
|
||||
- **Audio Normalization:** Standardize volume for audio-only downloads using EBU R128.
|
||||
- **Concurrent Connections:** Increase download speed dramatically by downloading files in multiple fragments concurrently. Available in **Download Settings → General → Concurrent Connections** (Defaults to 1, recommended maximum is 8-10 to prevent IP limiting).
|
||||
- **Concurrent Connections:** Dramatically increase download speed by downloading files in multiple fragments simultaneously. Available in **Download Settings → General → Concurrent Connections** (Default is 1, maximum recommended is 8-10 to avoid IP throttling).
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🌐 Access and Network</summary>
|
||||
<summary>🌐 Access & Network</summary>
|
||||
|
||||
- **Login with Cookies:** Login to YouTube using cookies to access private content.
|
||||
- **Login with Cookies:** Log in to YouTube using cookies to access private content.
|
||||
How to use it:
|
||||
1. **Recommended:** Use the built-in `Extract cookies from browser` option in the app, then select your browser and optionally a profile.
|
||||
2. Alternatively, extract cookies manually:
|
||||
a. Export cookies from your browser using an extension like [cookie-editor](https://github.com/moustachauve/cookie-editor?tab=readme-ov-file)
|
||||
b. Copy the cookies in Netscape format
|
||||
c. Create a file named `cookies.txt` and paste the cookies into it
|
||||
a. Export browser cookies using an extension like [cookie-editor](https://github.com/moustachauve/cookie-editor?tab=readme-ov-file)
|
||||
b. Copy cookies in Netscape format
|
||||
c. Create a file named `cookies.txt` and paste cookies
|
||||
d. Select the `cookies.txt` file in the app
|
||||
- **Proxy Support:** Use a proxy server for downloads, for example `http://<proxy-server>:<port>`
|
||||
- **Generic Mode:** Allow YTSage to analyze and download from non-YouTube sites supported by yt-dlp. Enable it from **Download Settings → Generic Mode**.
|
||||
- **Proxy Support:** Use a proxy server for downloads, e.g., `http://<proxy-server>:<port>`
|
||||
- **Generic Mode:** Allows YTSage to analyze and download from non-YouTube sites supported by yt-dlp. Enable from **Download Settings → Generic Mode**.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🛠️ Tools and Maintenance</summary>
|
||||
<summary>🛠️ Tools & Maintenance</summary>
|
||||
|
||||
- **Custom Commands:** Access advanced yt-dlp features via command line arguments
|
||||
- **Custom Commands:** Access advanced yt-dlp features via command-line arguments.
|
||||
- **Updater Tab:** Manage built-in update tools from one place in Custom Options:
|
||||
- **yt-dlp Updates:** Check for updates and switch between Stable and Nightly release channels
|
||||
- **FFmpeg Version Checker:** Check your FFmpeg version and open installation guides
|
||||
- **Deno Updates:** Check and update the Deno runtime
|
||||
- **FFmpeg/yt-dlp/Deno Detection:** Automatically detect FFmpeg, yt-dlp, and Deno paths and versions from the About dialog.
|
||||
- **yt-dlp Updates:** Check for updates and toggle between Stable and Nightly release channels.
|
||||
- **FFmpeg Version Checker:** Check your FFmpeg version and open installation guides.
|
||||
- **Deno Updates:** Check and update the Deno runtime.
|
||||
- **FFmpeg/yt-dlp/Deno Detection:** Automatically detects paths and versions for FFmpeg, yt-dlp, and Deno from the About dialog.
|
||||
- **Download History:** View past downloads with thumbnails and statuses from the **History** button.
|
||||
|
||||
</details>
|
||||
@@ -348,7 +348,7 @@ Notes:
|
||||
<details>
|
||||
<summary>🌍 Localization</summary>
|
||||
|
||||
YTSage supports **14 languages** for worldwide accessibility. Select your preferred language from **Custom Options → Language**.
|
||||
YTSage supports **14 languages** for global accessibility. Select your preferred language in **Custom Options → Language**.
|
||||
|
||||
### Supported Languages
|
||||
|
||||
@@ -366,13 +366,13 @@ YTSage supports **14 languages** for worldwide accessibility. Select your prefer
|
||||
|
||||
| Language | File | Language | File |
|
||||
|----------|------|----------|------|
|
||||
| 🇺🇸 English | [README.md](README.md) | 🇪🇸 Spanish | [README.es.md](readme-translations/README.es.md) |
|
||||
| 🇸🇦 Arabic | [README.ar.md](readme-translations/README.ar.md) | 🇫🇷 French | [README.fr.md](readme-translations/README.fr.md) |
|
||||
| 🇩🇪 German | [README.de.md](readme-translations/README.de.md) | 🇮🇳 Hindi | [README.hi.md](readme-translations/README.hi.md) |
|
||||
| 🇮🇩 Indonesian | [README.id.md](readme-translations/README.id.md) | 🇮🇹 Italian | [README.it.md](readme-translations/README.it.md) |
|
||||
| 🇯🇵 Japanese | [README.ja.md](readme-translations/README.ja.md) | 🇵🇱 Polish | [README.pl.md](readme-translations/README.pl.md) |
|
||||
| 🇧🇷 Portuguese | [README.pt.md](readme-translations/README.pt.md) | 🇷🇺 Russian | [README.ru.md](readme-translations/README.ru.md) |
|
||||
| 🇹🇷 Turkish | [README.tr.md](readme-translations/README.tr.md) | 🇨🇳 Chinese | [README.zh.md](readme-translations/README.zh.md) |
|
||||
| 🇺🇸 English | [README.md](README.md) | 🇪🇸 Spanish | [README.es.md](README.es.md) |
|
||||
| 🇸🇦 Arabic | [README.ar.md](README.ar.md) | 🇫🇷 French | [README.fr.md](README.fr.md) |
|
||||
| 🇩🇪 German | [README.de.md](README.de.md) | 🇮🇳 Hindi | [README.hi.md](README.hi.md) |
|
||||
| 🇮🇩 Indonesian | [README.id.md](README.id.md) | 🇮🇹 Italian | [README.it.md](README.it.md) |
|
||||
| 🇯🇵 Japanese | [README.ja.md](README.ja.md) | 🇵🇱 Polish | [README.pl.md](README.pl.md) |
|
||||
| 🇧🇷 Portuguese | [README.pt.md](README.pt.md) | 🇷🇺 Russian | [README.ru.md](README.ru.md) |
|
||||
| 🇹🇷 Turkish | [README.tr.md](README.tr.md) | 🇨🇳 Chinese | [README.zh.md](README.zh.md) |
|
||||
|
||||
> 💡 **Want to contribute a translation?** Check out the [Contributing](#contributing) section to help us add more languages!
|
||||
|
||||
@@ -384,39 +384,39 @@ YTSage supports **14 languages** for worldwide accessibility. Select your prefer
|
||||
<details>
|
||||
<summary>Click to view common issues and solutions</summary>
|
||||
|
||||
- **Format table not displaying:** Update yt-dlp to the latest version, and switch to yt-dlp nightly.
|
||||
- **Download fails:** Check your internet connection and ensure the video is available.
|
||||
- **Specific download errors:**
|
||||
- **Private videos:** Use cookie authentication to access private content.
|
||||
- **Age-restricted content:** Login to YouTube account to view age-restricted videos.
|
||||
- **Geo-blocked videos:** Consider using a VPN to bypass regional restrictions.
|
||||
- **Removed/deleted videos:** Video is no longer available on YouTube.
|
||||
- **Live streams:** Live streams cannot be downloaded; wait for the stream to end.
|
||||
- **Network errors:** Check your internet connection and try again.
|
||||
- **Format table not appearing:** Update yt-dlp to latest version and switch to nightly yt-dlp.
|
||||
- **Download failed:** Check your internet connection and ensure the video is available.
|
||||
- **Specific Download Errors:**
|
||||
- **Private Videos:** Use cookie authentication to access private content.
|
||||
- **Age-Restricted Content:** Log in to your YouTube account to view age-restricted videos.
|
||||
- **Geo-Blocked Videos:** Consider using a VPN to bypass regional restrictions.
|
||||
- **Deleted Videos:** Video is no longer available on YouTube.
|
||||
- **Live Streams:** Live streams cannot be downloaded; wait for the broadcast to end.
|
||||
- **Network Errors:** Check your internet connection and try again.
|
||||
- **Invalid URLs:** Ensure the URL is correct and from a supported platform.
|
||||
- **Premium content:** Requires YouTube Premium membership.
|
||||
- **Copyright blocks:** Content is blocked due to copyright restrictions.
|
||||
- **Separate video and audio files after download:** This happens when FFmpeg is missing or not detected. YTSage requires FFmpeg to merge high-quality video and audio streams.
|
||||
- **Premium Content:** Requires a YouTube Premium subscription.
|
||||
- **Copyright Blocks:** Content is blocked due to copyright restrictions.
|
||||
- **Video and Audio Files separate after download:** This happens when FFmpeg is missing or not detected. YTSage requires FFmpeg to merge high-quality video and audio streams.
|
||||
- **Solution:** Ensure FFmpeg is installed and accessible in your system's PATH. For Windows users, the easiest option is to download the `YTSage-v<version>-ffmpeg.exe` file, which comes bundled with FFmpeg.
|
||||
|
||||
---
|
||||
|
||||
#### 🛡️ Windows Defender / Antivirus Warning
|
||||
|
||||
Some antivirus software may flag the `.exe` files as false positives. This is a **known limitation** of packaged applications.
|
||||
Some antivirus software may flag `.exe` files as false positives. This is a **known limitation** of packaged applications.
|
||||
|
||||
**Why this happens:**
|
||||
- Antivirus heuristics can misidentify packed executables as suspicious
|
||||
- Antivirus heuristics can mistakenly identify packaged executables as suspicious.
|
||||
|
||||
**Safe alternatives:**
|
||||
- ✅ **Use pip installation:** `pip install ytsage` (recommended)
|
||||
- ✅ **Build from source**: by following this [guide](.github/CI_CD_README.md)
|
||||
- ✅ **Whitelist the application** in your antivirus software
|
||||
**Safe Alternatives:**
|
||||
- ✅ **Use pip install:** `pip install ytsage` (Recommended)
|
||||
- ✅ **Build from Source**: by following this [guide](.github/CI_CD_README.md)
|
||||
- ✅ **Whitelist the app** in your antivirus software.
|
||||
|
||||
#### 🍎 macOS: "App is damaged and can’t be opened"
|
||||
#### 🍎 macOS: "Application is damaged and cannot be opened"
|
||||
If you see this error on macOS Sonoma or newer, you need to remove the quarantine attribute.
|
||||
|
||||
1. **Open Terminal** (you can find it using Spotlight).
|
||||
1. **Open Terminal** (you can find this using Spotlight).
|
||||
2. **Type the following command** but **do not** press Enter yet. Make sure to include the space at the end:
|
||||
```bash
|
||||
xattr -d com.apple.quarantine
|
||||
@@ -427,7 +427,7 @@ If you see this error on macOS Sonoma or newer, you need to remove the quarantin
|
||||
|
||||
---
|
||||
|
||||
#### **Configuration Locations (Advanced)**
|
||||
#### **Config Locations (Advanced)**
|
||||
- **Windows:** `%LOCALAPPDATA%\YTSage`
|
||||
- **macOS:** `~/Library/Application Support/YTSage`
|
||||
- **Linux:** `~/.local/share/YTSage`
|
||||
@@ -437,17 +437,17 @@ If you see this error on macOS Sonoma or newer, you need to remove the quarantin
|
||||
<a id="sponsor"></a>
|
||||
## 💖 Sponsor
|
||||
|
||||
If YTSage saves you time, consider sponsoring the project. Sponsorship helps cover development time, testing across platforms, and future improvements.
|
||||
If YTSage saves you time, please consider sponsoring the project. Sponsoring helps cover development time, testing across all platforms, and future improvements.
|
||||
|
||||
- GitHub Sponsors: https://github.com/sponsors/oop7
|
||||
- The sponsor link is also available directly inside the app from the About dialog.
|
||||
- Sponsorship link is also available directly in the app via the About dialog.
|
||||
|
||||
[](https://github.com/sponsors/oop7)
|
||||
|
||||
<a id="contributing"></a>
|
||||
## 👥 Contributing
|
||||
|
||||
We welcome contributions! Here's how you can help:
|
||||
We welcome contributions! Here’s how you can help:
|
||||
|
||||
1. 🍴 Fork the repository
|
||||
2. 🌿 Create your feature branch:
|
||||
@@ -466,8 +466,8 @@ We welcome contributions! Here's how you can help:
|
||||
|
||||
### 🌍 Contributing Translations
|
||||
|
||||
- Update the matching localized README file (for example `readme-translations/README.es.md`)
|
||||
- Keep app strings in sync by editing `ytsage/languages/<code>.json`
|
||||
- Update the relevant localized README file (e.g., `readme-translations/README.fr.md`)
|
||||
- Keep app strings synced by editing `ytsage/languages/<code>.json`
|
||||
- If your language is missing, start from `README.md` and create `README.<code>.md`
|
||||
|
||||
<details>
|
||||
@@ -488,11 +488,11 @@ YTSage/
|
||||
│ │ ├── build-linux.yml # Linux build workflow
|
||||
│ │ ├── build-macos.yml # macOS build workflow
|
||||
│ │ │── build-windows.yml # Windows build workflow
|
||||
| | └── release-all.yml # Master release workflow
|
||||
| | └── release-all.yml # Release master workflow
|
||||
│ └── 📄 CI_CD_README.md # CI/CD documentation
|
||||
├── 📁 branding/ # Branding assets (Screenshots, SVGs)
|
||||
│ ├── 📁 icons/ # Application icons
|
||||
│ ├── 📁 screenshots/ # Screenshots for documentation
|
||||
│ ├── 📁 icons/ # App icons
|
||||
│ ├── 📁 screenshots/ # Documentation screenshots
|
||||
│ └── 📁 svg/ # SVG assets
|
||||
├── 📄 LICENSE # License file
|
||||
├── 📄 pyproject.toml # Project metadata and dependencies
|
||||
@@ -500,8 +500,8 @@ YTSage/
|
||||
├── 📄 requirements.txt # Python dependencies (dev)
|
||||
└── 📁 ytsage/ # Source package
|
||||
├── 📁 assets/ # Runtime assets
|
||||
│ ├── 📁 Icon/ # Application icons
|
||||
│ └── 📁 sound/ # Audio files
|
||||
│ ├── 📁 Icon/ # App icons
|
||||
│ └── 📁 sound/ # Sound files
|
||||
├── 📁 languages/ # Localization files
|
||||
│ ├── 📄 ar.json # Arabic translation
|
||||
│ ├── 📄 de.json # German translation
|
||||
@@ -514,13 +514,13 @@ YTSage/
|
||||
│ ├── 📄 ytsage_ffmpeg.py # FFmpeg integration
|
||||
│ ├── 📄 ytsage_utils.py # Utility functions
|
||||
│ └── 📄 ytsage_yt_dlp.py # yt-dlp integration
|
||||
├── 📁 gui/ # User interface components
|
||||
├── 📁 gui/ # UI components
|
||||
│ ├── 📄 __init__.py # GUI package init
|
||||
│ ├── 📄 ytsage_gui_main.py # Main application window
|
||||
│ ├── 📄 ytsage_gui_main.py # Main app window
|
||||
│ └── 📁 ytsage_gui_dialogs/ # Dialog classes
|
||||
├── 📁 utils/ # Utility modules
|
||||
│ ├── 📄 __init__.py # Utils package init
|
||||
│ ├── 📄 ytsage_config_manager.py # Configuration management
|
||||
│ ├── 📄 ytsage_config_manager.py # Config management
|
||||
│ └── 📄 ytsage_logger.py # Logging utilities
|
||||
├── 📄 __init__.py # Package entry point
|
||||
└── 📄 main.py # Main execution script
|
||||
@@ -555,7 +555,7 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
|
||||
|
||||
<div align="center">
|
||||
|
||||
<p>A heartfelt thank you to everyone who has contributed to this project by opening an issue to suggest an improvement or report a bug.</p>
|
||||
<p>A big thanks to everyone who contributed to this project by opening an issue to suggest an improvement or report a bug.</p>
|
||||
|
||||
<table>
|
||||
<tr class="section"><th colspan="2">Core Components</th></tr>
|
||||
@@ -569,7 +569,7 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://deno.com/">Deno</a></td>
|
||||
<td>Runtime for integration with yt-dlp</td>
|
||||
<td>Runtime for yt-dlp plugins</td>
|
||||
</tr>
|
||||
<tr class="section"><th colspan="2">Libraries & Frameworks</th></tr>
|
||||
<tr>
|
||||
@@ -586,7 +586,7 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://packaging.python.org/">packaging</a></td>
|
||||
<td>Version & Package Handling</td>
|
||||
<td>Version/Package Management</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://python-markdown.github.io/">markdown</a></td>
|
||||
@@ -613,7 +613,7 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
|
||||
|
||||
## ⚠️ Disclaimer
|
||||
|
||||
This tool is for personal use only. Please respect YouTube's terms of service and content creators' rights.
|
||||
This tool is for personal use only. Please respect YouTube's Terms of Service and content creator rights.
|
||||
|
||||
---
|
||||
|
||||
|
||||
+256
-249
@@ -1,7 +1,7 @@
|
||||
<div align="center">
|
||||
|
||||
<img src="../branding/svg/ytsage-wordmark.svg" width="400" alt="ytsage-wordmark">
|
||||
<img src="../branding/screenshots/main.png" width="800" alt="YTSage Interface"/>
|
||||
<img src="../branding/screenshots/main.png" width="800" alt="YTSage Arayüzü"/>
|
||||
|
||||
[](https://www.python.org/downloads/)
|
||||
[](https://pepy.tech/project/ytsage)
|
||||
@@ -13,80 +13,81 @@
|
||||
[](https://github.com/sponsors/oop7)
|
||||
|
||||
**Temiz bir PySide6 arayüzüne sahip modern bir YouTube indiricisi.**
|
||||
Videoları istediğiniz kalitede indirin, ses çıkarın, altyazıları getirin ve daha fazlasını yapın.
|
||||
Videoları herhangi bir kalitede indirin, sesleri çıkarın, altyazıları alın ve daha fazlasını yapın.
|
||||
|
||||
### 🌍 BENİOKU Diller
|
||||
### 🌍 README Dilleri
|
||||
|
||||
İngilizce: [EN](../README.md)
|
||||
| Cevap: [AR](README.ar.md)
|
||||
| Arapça: [AR](README.ar.md)
|
||||
| Almanca: [DE](README.de.md)
|
||||
| İspanyolca: [ES](README.es.md)
|
||||
| Fransızca: [FR](README.fr.md)
|
||||
| Adres: [HI](README.hi.md)
|
||||
| Bahasa Endonezya: [ID](README.id.md)
|
||||
| Hintçe: [HI](README.hi.md)
|
||||
| Endonezce: [ID](README.id.md)
|
||||
| İtalyanca: [IT](README.it.md)
|
||||
| Şarkı sözü: [JA](README.ja.md)
|
||||
| Polski: [PL](README.pl.md)
|
||||
| Japonca: [JA](README.ja.md)
|
||||
| Lehçe: [PL](README.pl.md)
|
||||
| Portekizce: [PT](README.pt.md)
|
||||
| Rusça: [RU](README.ru.md)
|
||||
| Türkçe: [TR](README.tr.md)
|
||||
| Adres: [ZH](README.zh.md)
|
||||
| Çince: [ZH](README.zh.md)
|
||||
|
||||
<p align="center">
|
||||
<a href="#installation">Kurulum</a> •
|
||||
<a href="#features">Özellikler</a> •
|
||||
<a href="#usage">Kullanım</a> •
|
||||
<a href="#screenshots">Ekran görüntüleri</a> •
|
||||
<a href="#troubleshooting">Sorun giderme</a> •
|
||||
<a href="#sponsor">Sponsor</a> •
|
||||
<a href="#contributing">Katkıda Bulunuyorum</a>
|
||||
<a href="#kurulum">Kurulum</a> •
|
||||
<a href="#özellikler">Özellikler</a> •
|
||||
<a href="#kullanım">Kullanım</a> •
|
||||
<a href="#ekran-görüntüleri">Ekran Görüntüleri</a> •
|
||||
<a href="#sorun-giderme">Sorun Giderme</a> •
|
||||
<a href="#sponsor-olun">Sponsor Olun</a> •
|
||||
<a href="#katkıda-bulunma">Katkıda Bulunma</a>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
<a id="why-ytsage"></a>
|
||||
<a id="neden-ytsage"></a>
|
||||
## ❓ Neden YTSage?
|
||||
|
||||
YTSage, **basit ama güçlü bir YouTube indiricisi** isteyen kullanıcılar için tasarlanmıştır. Diğer araçların aksine şunları sunar:
|
||||
|
||||
- Temiz, modern bir PySide6 arayüzü
|
||||
- Video, ses ve altyazılar için tek tıklamayla indirmeler
|
||||
- Modern ve temiz bir PySide6 arayüzü
|
||||
- Tek tıkla video, ses ve altyazı indirme
|
||||
- SponsorBlock, altyazı birleştirme ve oynatma listesi seçimi gibi gelişmiş özellikler
|
||||
- YouTube'un ötesinde yt-dlp destekli siteler için İsteğe Bağlı Genel Mod
|
||||
- Platformlar arası destek ve kolay kurulum
|
||||
- yt-dlp tarafından desteklenen YouTube dışındaki siteler için isteğe bağlı "Genel Mod"
|
||||
- Çoklu platform desteği ve kolay kurulum
|
||||
|
||||
<a id="features"></a>
|
||||
<a id="özellikler"></a>
|
||||
## ✨ Özellikler
|
||||
|
||||
<div align="center">
|
||||
|
||||
| Temel Özellikler | Gelişmiş Özellikler | Ekstra Özellikler |
|
||||
|-------------------------------------|--------------------------------------------------|
|
||||
| 🎥 Format Tablosu | 🚫 SponsorBlock Entegrasyonu | 🎞️ FPS/HDR Ekran |
|
||||
| 🎵 Ses Çıkarma | 📝 Çoklu Altyazı Seç ve Birleştir | 🔄 yt-dlp'yi Otomatik Güncelle |
|
||||
| ✨ Basit kullanıcı arayüzü | 💾 Açıklamayı ve Küçük Resmi Kaydet | 🛠️ FFmpeg/yt-dlp/Deno Algılama |
|
||||
| 📋 Çalma Listesi Desteği ve Seçici | 🚀 Hız Sınırlayıcı | ⚙️ Özel Komutlar |
|
||||
| 📑 Bölümleri Yerleştir | ✂️ Video Bölümlerini Kırp | 🍪 Çerezlerle Giriş Yapın |
|
||||
| 📜 Geçmişi İndir | 🔄 Kanal Seçimini Serbest Bırak | 🌐 Proxy Desteği |
|
||||
| 🎚️ Ses Formatı Dönüştürme | 🎬 Video Formatı Ayarları | 🆙 Yerleşik Güncelleyici Sekmesi |
|
||||
|-----------------------------------|-----------------------------------------|------------------------------------|
|
||||
| 🎥 Format Tablosu | 🚫 SponsorBlock Entegrasyonu | 🎞️ FPS/HDR Gösterimi |
|
||||
| 🎵 Ses Çıkarma | 📝 Altyazı Seçimi ve Birleştirme | 🔄 Otomatik yt-dlp Güncellemesi |
|
||||
| ✨ Basit Kullanıcı Arayüzü | 💾 Açıklama ve Küçük Resim Kaydetme | 🛠️ FFmpeg/yt-dlp/Deno Algılama |
|
||||
| 📋 Oynatma Listesi Desteği | 🚀 Hız Sınırlayıcı | ⚙️ Özel Komutlar |
|
||||
| 📑 Bölüm Entegrasyonu | ✂️ Video Kırpma | 🍪 Çerez ile Giriş |
|
||||
| 📜 İndirme Geçmişi | 🔄 Yayın Kanalı Seçimi | 🌐 Proxy Desteği |
|
||||
| 🎚️ Ses Formatı Dönüştürme | 🎬 Video Format Ayarları | 🆙 Entegre Güncelleme Sekmesi |
|
||||
| 🌍 Genel Mod | 🔊 Ses Normalizasyonu (EBU R128) | 🌍 14 Dilde Yerelleştirme |
|
||||
| 💾 Oynatma Listesi Dışa Aktarma | ⚙️ Varsayılan Kalite ve Altyazı | |
|
||||
</div>
|
||||
|
||||
<a id="installation"></a>
|
||||
<a id="kurulum"></a>
|
||||
## 🚀 Kurulum
|
||||
|
||||
### ⚡ Hızlı Kurulum (Önerilir)
|
||||
### ⚡ Hızlı Kurulum (Önerilen)
|
||||
|
||||
YTSage'i PyPI'den yükleyin:
|
||||
YTSage'i PyPI üzerinden yükleyin:
|
||||
|
||||
```bash
|
||||
pip install ytsage
|
||||
```
|
||||
|
||||
<details>
|
||||
<summary>🔄 Mevcut bir kurulumu güncelleyin</summary>
|
||||
<summary>🔄 Mevcut Kurulumu Güncelle</summary>
|
||||
|
||||
```bash
|
||||
pip install --upgrade ytsage
|
||||
@@ -94,41 +95,41 @@ pip install --upgrade ytsage
|
||||
|
||||
</details>
|
||||
|
||||
Ardından uygulamayı başlatın:
|
||||
Ardından uygulamayı çalıştırın:
|
||||
|
||||
```bash
|
||||
ytsage
|
||||
```
|
||||
|
||||
### 📦 Önceden Oluşturulmuş Yürütülebilir Dosyalar
|
||||
### 📦 Hazır Çalıştırılabilir Dosyalar (Executable)
|
||||
|
||||
> [👉 Download Latest Release](https://github.com/oop7/YTSage/releases/latest)
|
||||
> [👉 En Son Sürümü İndir](https://github.com/oop7/YTSage/releases/latest)
|
||||
|
||||
#### 🪟 Windows
|
||||
|
||||
| Biçim | Açıklama |
|
||||
|----------|----------------|
|
||||
|  | Standart yükleyici |
|
||||
|  | FFmpeg paketiyle birlikte |
|
||||
|  | Taşınabilir versiyon, kurulum gerektirmez |
|
||||
|  | FFmpeg ile taşınabilir, sıkıştırılmış |
|
||||
| Format | Açıklama |
|
||||
|--------|-------------|
|
||||
|  | Standart Kurulum Dosyası |
|
||||
|  | FFmpeg Dahil |
|
||||
|  | Taşınabilir Sürüm, kuruluma gerek yok |
|
||||
|  | FFmpeg Dahil Taşınabilir, sıkıştırılmış (ZIP) |
|
||||
|
||||
<details>
|
||||
<summary>🛠️ Kurulum Adımları</summary>
|
||||
|
||||
1. **EXE Yükleyici (`.exe`)**: Dosyaya çift tıklayın ve kurulum sihirbazını izleyin.
|
||||
2. **Taşınabilir Sürüm (`.zip`)**: Arşivi istediğiniz konuma çıkarın ve `ytsage.exe`'i çalıştırın.
|
||||
3. **FFmpeg Paketli**: Sisteminizde FFmpeg yüklü değilse FFmpeg paketli versiyonlarını seçin.
|
||||
1. **EXE Yükleyici (`.exe`)**: Dosyaya çift tıklayın ve kurulum sihirbazını takip edin.
|
||||
2. **Taşınabilir Sürüm (`.zip`)**: Dosyayı istediğiniz yere çıkarın ve `ytsage.exe` dosyasını çalıştırın.
|
||||
3. **Dahili FFmpeg**: Sisteminizde FFmpeg kurulu değilse, FFmpeg dahil olan sürümleri seçin.
|
||||
</details>
|
||||
|
||||
#### 🐧 Linux
|
||||
|
||||
| Biçim | Açıklama |
|
||||
|----------|----------------|
|
||||
|  | Debian paketi |
|
||||
|  | AppImage, taşınabilir |
|
||||
|  | RPM paketi |
|
||||
|  | Düz Paket Paketi |
|
||||
| Format | Açıklama |
|
||||
|--------|-------------|
|
||||
|  | Debian Paketi |
|
||||
|  | AppImage, Taşınabilir |
|
||||
|  | RPM Paketi |
|
||||
|  | Flatpak Paketi |
|
||||
|
||||
<details>
|
||||
<summary>🛠️ Kurulum Adımları</summary>
|
||||
@@ -136,7 +137,7 @@ ytsage
|
||||
- **DEB (`.deb`)**:
|
||||
```bash
|
||||
sudo dpkg -i ytsage_*.deb
|
||||
sudo apt-get install -f # Fix missing dependencies if any
|
||||
sudo apt-get install -f # Gerekirse eksik bağımlılıkları gidermek için
|
||||
```
|
||||
- **RPM (`.rpm`)**:
|
||||
```bash
|
||||
@@ -147,32 +148,32 @@ ytsage
|
||||
chmod +x YTSage-*.AppImage
|
||||
./YTSage-*.AppImage
|
||||
```
|
||||
- **Flatpak**: Flathub'daki talimatları izleyin veya şunu çalıştırın:
|
||||
- **Flatpak**: Flathub üzerindeki talimatları izleyin veya şunu çalıştırın:
|
||||
```bash
|
||||
flatpak install flathub io.github.oop7.ytsage
|
||||
```
|
||||
</details>
|
||||
|
||||
#### 🍎macOS
|
||||
#### 🍎 macOS
|
||||
|
||||
| Biçim | Açıklama |
|
||||
|----------|----------------|
|
||||
|  | Apple Silicon için sıkıştırılmış uygulama |
|
||||
|  | Apple Silicon için disk görüntüsü yükleyici |
|
||||
| Format | Açıklama |
|
||||
|--------|-------------|
|
||||
|  | Apple Silicon için ZIP Uygulaması |
|
||||
|  | Apple Silicon için Disk Image Kurulum Dosyası |
|
||||
|
||||
<details>
|
||||
<summary>🛠️ Kurulum Adımları</summary>
|
||||
|
||||
- **DMG Installer (`.dmg`)**: Bağlamak için çift tıklayın, ardından `YTSage.app`'i Uygulamalar klasörünüze sürükleyin.
|
||||
- **Uygulama Arşivi (`.zip`)**: Zip dosyasını çıkartın ve `YTSage.app`'i Uygulamalar klasörünüze taşıyın.
|
||||
- **DMG Yükleyici (`.dmg`)**: Bağlamak için çift tıklayın ve `YTSage.app` dosyasını Uygulamalar klasörünüze sürükleyin.
|
||||
- **Uygulama Arşivi (`.zip`)**: ZIP dosyasını çıkarın ve `YTSage.app` dosyasını Uygulamalar klasörünüze taşıyın.
|
||||
|
||||
*Not: "Uygulama hasar gördü" hatasıyla karşılaşırsanız aşağıdaki [macOS troubleshooting section](#troubleshooting)'e bakın.*
|
||||
*Not: "Uygulama hasarlı" hatası alırsanız, aşağıdaki macOS Sorun Giderme bölümüne bakın.*
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
<details>
|
||||
<summary>💻 Kaynaktan Manuel Kurulum</summary>
|
||||
<summary>💻 Kaynak Kodundan Manuel Kurulum</summary>
|
||||
|
||||
### 1. Depoyu Klonlayın
|
||||
|
||||
@@ -181,9 +182,9 @@ git clone https://github.com/oop7/YTSage.git
|
||||
cd YTSage
|
||||
```
|
||||
|
||||
### 2. Bağımlılıkları Kurun
|
||||
### 2. Bağımlılıkları Yükleyin
|
||||
|
||||
#### ⚡UV ile
|
||||
#### ⚡ uv ile
|
||||
|
||||
```bash
|
||||
uv pip install .
|
||||
@@ -195,7 +196,7 @@ uv pip install .
|
||||
pip install .
|
||||
```
|
||||
|
||||
### 3. Uygulamayı çalıştırın
|
||||
### 3. Uygulamayı Çalıştırın
|
||||
|
||||
```bash
|
||||
python -m ytsage.main
|
||||
@@ -203,146 +204,151 @@ python -m ytsage.main
|
||||
|
||||
</details>
|
||||
|
||||
<a id="screenshots"></a>
|
||||
## 📸 Ekran görüntüleri
|
||||
<a id="ekran-görüntüleri"></a>
|
||||
## 📸 Ekran Görüntüleri
|
||||
|
||||
<div align="center">
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="../branding/screenshots/Download-Settings.png" alt="Download Settings" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/playlist.png" alt="Playlist Download" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/Download-Settings.png" alt="İndirme Ayarları" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/playlist.png" alt="Oynatma Listesi İndirme" width="400"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><em>İndirme Ayarları</em></td>
|
||||
<td align="center"><em>Çalma Listesi İndir</em></td>
|
||||
<td align="center"><em>Oynatma Listesi İndirme</em></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="../branding/screenshots/audio_format.png" alt="Audio Format Selection with Save Thumbnail" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/Custom-Option.png" alt="Custom Options" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/audio_format.png" alt="Ses Formatı Seçimi" width="400"/></td>
|
||||
<td><img src="../branding/screenshots/Custom-Option.png" alt="Özel Seçenekler" width="400"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><em>Ses Formatı</em></td>
|
||||
<td align="center"><em>Özel Seçenekler</em></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><a id="usage"></a>
|
||||
</div>
|
||||
|
||||
<a id="kullanım"></a>
|
||||
## 📖 Kullanım
|
||||
|
||||
<details>
|
||||
<summary>🎯 Temel Kullanım</summary>
|
||||
|
||||
1. **YTSage'i başlatın**
|
||||
2. **YouTube URL'sini yapıştırın** (veya "URL'yi yapıştır" düğmesini kullanın)
|
||||
3. **"Analiz Et"i tıklayın**
|
||||
4. **Biçim Seçin:**
|
||||
- `Video` video indirmeleri için
|
||||
- `Audio Only` ses çıkarma için
|
||||
5. **Seçenekleri seçin:**
|
||||
2. **Bir YouTube URL'si yapıştırın** (veya "Paste URL" düğmesini kullanın)
|
||||
3. **"Analyze" düğmesine tıklayın**
|
||||
4. **Formatı Seçin:**
|
||||
- Video indirmek için `Video`
|
||||
- Sadece ses çıkarmak için `Audio Only`
|
||||
5. **Seçenekleri Belirleyin:**
|
||||
- Altyazıları etkinleştirin ve dili seçin
|
||||
- Altyazı birleştirmeyi etkinleştir
|
||||
- Küçük resmi kaydet
|
||||
- Sponsor segmentlerini kaldırın
|
||||
- Açıklamayı kaydet
|
||||
- Bölümleri yerleştir
|
||||
6. **Çıktı Dizinini Seçin**
|
||||
7. **"İndir"e tıklayın**
|
||||
- Altyazı birleştirmeyi (Merge subs) etkinleştirin
|
||||
- Küçük resmi kaydet (Save thumbnail)
|
||||
- Sponsor bölümlerini kaldır (SponsorBlock)
|
||||
- Açıklamayı kaydet (Save description)
|
||||
- Bölümleri göm (Embed chapters)
|
||||
6. **Çıkış Dizinini Seçin**
|
||||
7. **"Download" düğmesine tıklayın**
|
||||
|
||||
> 💡 Varsayılan indirme dizini kullanıcının "İndirilenler" klasörüdür.
|
||||
> 💡 Varsayılan indirme dizini kullanıcının "İndirmeler" klasörüdür.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>📋 Çalma Listesi İndir</summary>
|
||||
<summary>📋 Oynatma Listesi İndirme</summary>
|
||||
|
||||
1. **Oynatma Listesi URL'sini yapıştırın**
|
||||
2. **"Analiz Et"i tıklayın**
|
||||
3. **Oynatma seçiciden videoları seçin (isteğe bağlı, varsayılan olarak tümü)**
|
||||
2. **"Analyze" düğmesine tıklayın**
|
||||
3. **Seçiciden videoları seçin (varsayılan olarak tümü seçilidir)**
|
||||
4. **İstediğiniz formatı/kaliteyi seçin**
|
||||
5. **"İndir"e tıklayın**
|
||||
5. **"Download" düğmesine tıklayın**
|
||||
|
||||
> 💡 Uygulama indirme sırasını otomatik olarak yönetir
|
||||
> 💡 Uygulama indirme kuyruğunu otomatik olarak yönetir ve oynatma listesi girişlerini `.txt`, `.csv`, `.m3u` veya `.json` dosyaları olarak dışa aktarabilirsiniz.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🌍 YouTube dışı siteler için Genel Mod</summary>
|
||||
<summary>🌍 YouTube Dışındaki Siteler İçin Genel Mod</summary>
|
||||
|
||||
YTSage'in Dailymotion, CBC Gem, TikTok ve diğerleri gibi yt-dlp tarafından desteklenen sitelerdeki URL'leri kabul etmesini istiyorsanız Genel Modu kullanın.
|
||||
YTSage'in Dailymotion, TikTok ve diğerleri gibi yt-dlp tarafından desteklenen sitelerden gelen URL'leri kabul etmesini istediğinizde Genel Modu kullanın.
|
||||
|
||||
Nasıl kullanılır:
|
||||
|
||||
1. `Download Settings`'i açın.
|
||||
2. `Generic Mode`'ı etkinleştirin.
|
||||
3. Desteklenen YouTube dışı bir video veya oynatma listesi URL'sini yapıştırın.
|
||||
4. `Analyze`'a tıklayın.
|
||||
5. Bir format seçin ve her zamanki gibi indirin.
|
||||
1. `Download Settings` bölümünü açın.
|
||||
2. `Generic Mode` seçeneğini etkinleştirin.
|
||||
3. YouTube dışındaki desteklenen bir video veya oynatma listesi URL'sini yapıştırın.
|
||||
4. `Analyze` düğmesine tıklayın.
|
||||
5. Bir format seçin ve normal şekilde indirin.
|
||||
|
||||
Notlar:
|
||||
|
||||
- Genel Mod yalnızca YTSage içindeki URL doğrulamasını değiştirir. Hedef sitenin yüklü yt-dlp sürümünüz tarafından hala desteklenmesi gerekiyor.
|
||||
- Bazı siteler, çıkarıcıya bağlı olarak çerezlere, oturum açma oturumuna, proxy'ye veya ekstra yt-dlp argümanlarına ihtiyaç duyar.
|
||||
- Bir site başarısız olursa, sorunu bildirmeden önce yerleşik güncelleyici sekmesinden yt-dlp'yi güncelleyin.
|
||||
- Genel Mod sadece YTSage içindeki URL doğrulamasını değiştirir. Hedef site hala yüklü yt-dlp sürümünüz tarafından desteklenmelidir.
|
||||
- Bazı siteler, çıkarıcıya bağlı olarak çerezler, giriş, proxy veya ek yt-dlp argümanları gerektirebilir.
|
||||
- Bir site hata verirse, sorun bildirmeden önce entegre güncelleme sekmesinden yt-dlp'yi güncelleyin.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🧰 Medya ve İndirme Seçenekleri</summary>
|
||||
|
||||
- **Altyazı Seçenekleri:** Dilleri filtreleyin ve altyazıları video dosyasına ekleyin
|
||||
- **Altyazı Birleştirme:** Sabit kodlanmış altyazılar için altyazıları video dosyasıyla birleştirin
|
||||
- **Açıklamayı Kaydet:** Video açıklamasını bir metin dosyası olarak kaydedin
|
||||
- **Küçük Resmi Kaydet:** Video küçük resmini bir resim dosyası olarak kaydedin
|
||||
- **Bölümleri Göm:** Uyumlu video oynatıcılar için bölüm işaretlerini meta veri olarak gömün
|
||||
- **Sponsor Segmentlerini Kaldır:** SponsorBlock'u kullanarak sponsor segmentlerini videodan kaldırın
|
||||
- **Videoyu Kırp:** `HH:MM:SS` biçiminde zaman aralıklarını belirterek videonun yalnızca belirli bölümlerini indirin
|
||||
- **Altyazı Seçenekleri:** Dilleri filtreleyin ve altyazıları video dosyasına gömün.
|
||||
- **Altyazı Birleştirme:** Altyazıları video dosyasına kalıcı olarak (hardcode) birleştirir.
|
||||
- **Açıklamayı Kaydet:** Video açıklamasını bir metin dosyası olarak kaydeder.
|
||||
- **Küçük Resmi Kaydet:** Video küçük resmini bir resim dosyası olarak kaydeder.
|
||||
- **Bölümleri Göm:** Uyumlu video oynatıcılar için meta veri olarak bölüm işaretlerini ekler.
|
||||
- **Sponsor Bölümlerini Kaldır:** Videodaki sponsorlu bölümleri kaldırmak için SponsorBlock kullanır.
|
||||
- **Videoyu Kırp:** Zaman aralığını `SA:DA:SA` formatında belirterek videonun sadece belirli bölümlerini indirin.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>⚙️ Çıktı ve Dosya Ayarları</summary>
|
||||
<summary>⚙️ Çıkış ve Dosya Ayarları</summary>
|
||||
|
||||
- **Hız Sınırlayıcı:** İndirme hızını sınırlandırın, örneğin 500 KB/s için `500K`.
|
||||
- **İndirme Yolunu Kaydet:** Gelecekteki indirmeler için varsayılan indirme yolunu kaydeder. **Download Settings → Download Path** bölümünde mevcuttur.
|
||||
- **Varsayılan Video Çözünürlüğü:** Otomatik seçim için tercih ettiğiniz video çözünürlüğünü ayarlayın (örn: 1080p, 720p). **Download Settings → Default Video Resolution** bölümünde mevcuttur.
|
||||
- **Varsayılan Altyazı Dilleri:** Otomatik seçim için varsayılan altyazı dillerini ayarlayın (virgülle ayrılmış, örn: `tr,en`). **Download Settings → Default Subtitle Languages** bölümünde mevcuttur.
|
||||
- **Dosya Adı Formatı:** Çıkış dosyası adı formatını `%(title)s`, `%(uploader)s` gibi değişkenler kullanarak özelleştirin. **Download Settings → Filename Format** bölümünde mevcuttur.
|
||||
- **Çıkış Formatını Zorla:** Videoyu `mp4`, `webm` veya `mkv` gibi belirli bir konteyner formatında indirmeye zorlar. **Download Settings → Output Format Settings** bölümünde mevcuttur.
|
||||
- **Ses Formatı Dönüştürme:** Sadece ses indirmelerini `AAC`, `MP3`, `FLAC`, `WAV`, `Opus`, `M4A`, `Vorbis` veya `Best` gibi tercih edilen formatlara dönüştürün. **Download Settings → Audio Format Settings** bölümünde mevcuttur.
|
||||
- **Ses Normalizasyonu:** EBU R128 kullanarak sadece ses indirmeleri için ses seviyesini standartlaştırır.
|
||||
- **Eşzamanlı Bağlantılar:** Dosyaları aynı anda birden fazla parça halinde indirerek indirme hızını önemli ölçüde artırın. **Download Settings → General → Concurrent Connections** bölümünde mevcuttur (Varsayılan 1, IP engellemelerini önlemek için maksimum 8-10 önerilir).
|
||||
|
||||
- **Hız Sınırlayıcı:** İndirme hızını sınırlayın, örneğin 500 KB/s için `500K`
|
||||
- **İndirme Yolunu Kaydet:** Gelecekteki indirmeler için varsayılan indirme yolunu kaydedin. **İndirme Ayarları → İndirme Yolu**'nda mevcuttur.
|
||||
- **Çıktı Dosya Adı Formatı:** `%(title)s`, `%(uploader)s` ve `%(resolution)s` gibi değişkenleri kullanarak çıktı dosya adı formatını özelleştirin. **İndirme Ayarları → Dosya Adı Formatı**'nda mevcuttur.- **Çıktı Formatını Zorla:** Video indirme işlemlerini `mp4`, `webm` veya `mkv` gibi belirli bir kapsayıcı formatına zorlayın. **İndirme Ayarları → Çıktı Formatı Ayarları** bölümünde mevcuttur.
|
||||
- **Ses Formatı Dönüştürme:** Yalnızca ses indirmelerini `AAC`, `MP3`, `FLAC`, `WAV`, `Opus`, `M4A` gibi tercih edilen formatlara dönüştürün `Vorbis` veya `Best`. **İndirme Ayarları → Ses Formatı Ayarları**'nda mevcuttur.
|
||||
- **Ses Normalizasyonu:** EBU R128 kullanarak yalnızca ses indirmeleri için ses düzeyini standartlaştırın.
|
||||
- **Eşzamanlı Bağlantılar:** Dosyaları aynı anda birden fazla parça halinde indirerek indirme hızını önemli ölçüde artırın. **İndirme Ayarları → Genel → Eşzamanlı Bağlantılar** altında mevcuttur (Varsayılan 1, IP kısıtlamasını önlemek için önerilen maksimum 8-10).\n
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🌐 Erişim ve Ağ</summary>
|
||||
|
||||
- **Çerezler ile Giriş Yapın:** Özel içeriğe erişmek için çerezleri kullanarak YouTube'a giriş yapın.
|
||||
Nasıl kullanılır:
|
||||
1. **Önerilen:** Uygulamadaki yerleşik `Extract cookies from browser` seçeneğini kullanın, ardından tarayıcınızı ve isteğe bağlı olarak bir profili seçin.
|
||||
2. Alternatif olarak çerezleri manuel olarak çıkarın:
|
||||
a. [cookie-editor](https://github.com/moustachauve/cookie-editor?tab=readme-ov-file) gibi bir uzantı kullanarak çerezleri tarayıcınızdan dışa aktarın
|
||||
b. Çerezleri Netscape formatında kopyalayın
|
||||
c. `cookies.txt` adında bir dosya oluşturun ve çerezleri bu dosyaya yapıştırın
|
||||
D. Uygulamada `cookies.txt` dosyasını seçin
|
||||
- **Proxy Desteği:** İndirmeler için bir proxy sunucusu kullanın, örneğin `http://<proxy-server>:<port>`
|
||||
- **Genel Mod:** YTSage'in, yt-dlp tarafından desteklenen YouTube dışı sitelerden analiz yapmasına ve indirme yapmasına izin verin. **İndirme Ayarları → Genel Mod**'dan etkinleştirin.
|
||||
- **Çerez ile Giriş:** Özel içeriğe erişmek için çerezleri kullanarak YouTube'da oturum açın.
|
||||
Kullanım:
|
||||
1. **Önerilen:** Uygulamadaki entegre `Extract cookies from browser` seçeneğini kullanın, tarayıcıyı ve isteğe bağlı olarak profili seçin.
|
||||
2. İsteğe bağlı olarak çerezleri manuel olarak çıkarın:
|
||||
a. [cookie-editor](https://github.com/moustachauve/cookie-editor) gibi bir uzantı kullanarak tarayıcınızdan çerezleri dışa aktarın.
|
||||
b. Çerezleri Netscape formatında kopyalayın.
|
||||
c. `cookies.txt` adlı bir dosya oluşturun ve çerezleri yapıştırın.
|
||||
d. Uygulamada `cookies.txt` dosyasını seçin.
|
||||
- **Proxy Desteği:** İndirmeler için bir proxy sunucusu kullanın, örn: `http://<proxy-server>:<port>`
|
||||
- **Genel Mod:** YTSage'in yt-dlp tarafından desteklenen YouTube dışındaki siteleri analiz etmesine ve indirmesine olanak tanır. **Download Settings → Generic Mode** bölümünden etkinleştirin.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🛠️ Araçlar ve Bakım</summary>
|
||||
|
||||
- **Özel Komutlar:** Komut satırı bağımsız değişkenleri aracılığıyla gelişmiş yt-dlp özelliklerine erişin
|
||||
- **Güncelleyici Sekmesi:** Özel Seçenekler'de yerleşik güncelleme araçlarını tek yerden yönetin:
|
||||
- **yt-dlp Güncellemeleri:** Güncellemeleri kontrol edin ve Mevcut ve Gecelik sürüm kanalları arasında geçiş yapın
|
||||
- **FFmpeg Sürüm Denetleyicisi:** FFmpeg sürümünüzü kontrol edin ve kurulum kılavuzlarını açın
|
||||
- **Deno Güncellemeleri:** Deno çalışma zamanını kontrol edin ve güncelleyin
|
||||
- **FFmpeg/yt-dlp/Deno Algılama:** Hakkında iletişim kutusundan FFmpeg, yt-dlp ve Deno yollarını ve sürümlerini otomatik olarak algılar.
|
||||
- **İndirme Geçmişi:** **Geçmiş** düğmesinden geçmiş indirmeleri küçük resimler ve durumlarla birlikte görüntüleyin.
|
||||
- **Özel Komutlar:** Komut satırı argümanları aracılığıyla gelişmiş yt-dlp özelliklerine erişin.
|
||||
- **Güncelleme Sekmesi:** Entegre güncelleme araçlarını Özel Seçenekler altındaki tek bir yerden yönetin:
|
||||
- **yt-dlp Güncelleme:** Güncellemeleri kontrol edin ve Stable ile Nightly yayın kanalları arasında geçiş yapın.
|
||||
- **FFmpeg Sürüm Kontrolü:** FFmpeg sürümünüzü kontrol edin ve kurulum kılavuzlarını açın.
|
||||
- **Deno Güncelleme:** Deno çalışma zamanını kontrol edin ve güncelleyin.
|
||||
- **FFmpeg/yt-dlp/Deno Algılama:** Hakkında diyaloğunda FFmpeg, yt-dlp ve Deno yollarını ve sürümlerini otomatik olarak algılar.
|
||||
- **İndirme Geçmişi:** **History** düğmesi aracılığıyla küçük resimler ve durumlarla birlikte geçmiş indirmeleri görün.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>🌍 Yerelleştirme</summary>
|
||||
|
||||
YTSage, dünya çapında erişilebilirlik için **14 dili** destekler. **Özel Seçenekler → Dil**'den tercih ettiğiniz dili seçin.
|
||||
YTSage, küresel erişim için **14 dili** destekler. Tercih ettiğiniz dili **Custom Options → Language** bölümünden seçin.
|
||||
|
||||
### Desteklenen Diller
|
||||
|
||||
@@ -360,7 +366,7 @@ YTSage, dünya çapında erişilebilirlik için **14 dili** destekler. **Özel S
|
||||
|
||||
| Dil | Dosya | Dil | Dosya |
|
||||
|----------|------|----------|------|
|
||||
| 🇺🇸 İngilizce | [README.md](../README.md) | 🇪🇸 İspanyolca | [README.es.md](README.es.md)
|
||||
| 🇺🇸 İngilizce | [README.md](README.md) | 🇪🇸 İspanyolca | [README.es.md](README.es.md) |
|
||||
| 🇸🇦 Arapça | [README.ar.md](README.ar.md) | 🇫🇷 Fransızca | [README.fr.md](README.fr.md) |
|
||||
| 🇩🇪 Almanca | [README.de.md](README.de.md) | 🇮🇳 Hintçe | [README.hi.md](README.hi.md) |
|
||||
| 🇮🇩 Endonezce | [README.id.md](README.id.md) | 🇮🇹 İtalyanca | [README.it.md](README.it.md) |
|
||||
@@ -368,165 +374,165 @@ YTSage, dünya çapında erişilebilirlik için **14 dili** destekler. **Özel S
|
||||
| 🇧🇷 Portekizce | [README.pt.md](README.pt.md) | 🇷🇺 Rusça | [README.ru.md](README.ru.md) |
|
||||
| 🇹🇷 Türkçe | [README.tr.md](README.tr.md) | 🇨🇳 Çince | [README.zh.md](README.zh.md) |
|
||||
|
||||
> 💡 **Çeviriye katkıda bulunmak mı istiyorsunuz?** Daha fazla dil eklememize yardımcı olmak için [Contributing](#contributing) bölümüne göz atın!
|
||||
> 💡 **Çeviriye yardımcı olmak ister misiniz?** Daha fazla dil eklememize yardımcı olmak için [Katkıda Bulunma](#katkıda-bulunma) bölümüne bakın!
|
||||
|
||||
</details>
|
||||
|
||||
<a id="troubleshooting"></a>
|
||||
## 🛠️ Sorun giderme
|
||||
<a id="sorun-giderme"></a>
|
||||
## 🛠️ Sorun Giderme
|
||||
|
||||
<details>
|
||||
<summary>Genel sorunları ve çözümleri görüntülemek için tıklayın</summary>
|
||||
<summary>Yaygın sorunlar ve çözümler için tıklayın</summary>
|
||||
|
||||
- **Biçim tablosu görüntülenmiyor:** yt-dlp'yi en son sürüme güncelleyin ve her gece yt-dlp'ye geçin.
|
||||
- **İndirme başarısız oluyor:** İnternet bağlantınızı kontrol edin ve videonun mevcut olduğundan emin olun.
|
||||
- **Belirli indirme hataları:**
|
||||
- **Özel videolar:** Özel içeriğe erişmek için çerez kimlik doğrulamasını kullanın.
|
||||
- **Yaş kısıtlamalı içerik:** Yaş kısıtlamalı videoları görüntülemek için YouTube hesabına giriş yapın.
|
||||
- **Coğrafi olarak engellenen videolar:** Bölgesel kısıtlamaları aşmak için bir VPN kullanmayı düşünün.
|
||||
- **Kaldırılan/silinen videolar:** Video artık YouTube'da mevcut değil.
|
||||
- **Canlı yayınlar:** Canlı yayınlar indirilemez; akışın bitmesini bekleyin.
|
||||
- **Ağ hataları:** İnternet bağlantınızı kontrol edip tekrar deneyin.
|
||||
- **Geçersiz URL'ler:** URL'nin doğru olduğundan ve desteklenen bir platforma ait olduğundan emin olun.
|
||||
- **Premium içerik:** YouTube Premium üyeliği gerektirir.
|
||||
- **Telif hakkı engellemeleri:** İçerik, telif hakkı kısıtlamaları nedeniyle engellenmiştir.
|
||||
- **İndirmeden sonra video ve ses dosyalarını ayırın:** Bu, FFmpeg eksik olduğunda veya algılanmadığında meydana gelir. YTSage, yüksek kaliteli video ve ses akışlarını birleştirmek için FFmpeg'e ihtiyaç duyar.
|
||||
- **Çözüm:** FFmpeg'in sisteminizin PATH'inde kurulu ve erişilebilir olduğundan emin olun. Windows kullanıcıları için en kolay seçenek, FFmpeg ile birlikte gelen `YTSage-v<version>-ffmpeg.exe` dosyasını indirmektir.
|
||||
- **Format tablosu görünmüyor:** yt-dlp'yi en son sürüme güncelleyin ve yt-dlp Nightly kanalına geçmeyi deneyin.
|
||||
- **İndirme başarısız oldu:** İnternet bağlantınızı kontrol edin ve videonun erişilebilir olduğundan emin olun.
|
||||
- **Belirli İndirme Hataları:**
|
||||
- **Özel Videolar:** Özel içeriğe erişmek için çerez kimlik doğrulamasını kullanın.
|
||||
- **Yaş Sınırlı İçerik:** Yaş sınırlı videoları görüntülemek için YouTube hesabınızda oturum açın.
|
||||
- **Coğrafi Engelli Videolar:** Bölgesel kısıtlamaları aşmak için bir VPN kullanmayı düşünün.
|
||||
- **Video Kaldırıldı:** Video artık YouTube'da mevcut değildir.
|
||||
- **Canlı Yayınlar:** Canlı yayınlar yayınlanırken indirilemez; yayın bitene kadar bekleyin.
|
||||
- **Ağ Hataları:** İnternet bağlantınızı kontrol edin ve tekrar deneyin.
|
||||
- **Geçersiz URL:** URL'nin doğru olduğundan ve desteklenen bir platforma ait olduğundan emin olun.
|
||||
- **Premium İçerik:** YouTube Premium aboneliği gerektirir.
|
||||
- **Telif Hakkı Engeli:** İçerik telif hakkı kısıtlamaları nedeniyle engellenmiştir.
|
||||
- **İndirme sonrası video ve ses dosyaları ayrı:** Bu durum FFmpeg eksik olduğunda veya algılanmadığında olur. YTSage, yüksek kaliteli video ve ses akışlarını birleştirmek için FFmpeg gerektirir.
|
||||
- **Çözüm:** FFmpeg'in kurulu olduğundan ve sistem PATH'inizde erişilebilir olduğundan emin olun. Windows kullanıcıları için en kolay seçenek, FFmpeg ile birlikte gelen `YTSage-v<sürüm>-ffmpeg.exe` dosyasını indirmektir.
|
||||
|
||||
---
|
||||
|
||||
#### 🛡️ Windows Defender / Antivirüs Uyarısı
|
||||
|
||||
Bazı antivirüs yazılımları `.exe` dosyalarını yanlış pozitif olarak işaretleyebilir. Bu, paket uygulamaların **bilinen bir sınırlamasıdır**.
|
||||
Bazı antivirüs yazılımları `.exe` dosyalarını yanlış pozitif olarak işaretleyebilir. Bu, paketlenmiş uygulamaların **bilinen bir sınırlamasıdır**.
|
||||
|
||||
**Bu neden oluyor:**
|
||||
- Antivirüs buluşsal yöntemleri, paketlenmiş yürütülebilir dosyaları şüpheli olarak yanlış tanımlayabilir
|
||||
**Neden olur:**
|
||||
- Antivirüs sezgiselleri paketlenmiş yürütülebilir dosyaları hatalı bir şekilde şüpheli olarak tanımlayabilir.
|
||||
|
||||
**Güvenli alternatifler:**
|
||||
- ✅ **Pip kurulumunu kullanın:** `pip install ytsage` (önerilir)
|
||||
- ✅ **Kaynaktan oluşturun**: bunu takip ederek [guide](../.github/CI_CD_README.md)
|
||||
- ✅ **Uygulamayı antivirüs yazılımınızda beyaz listeye alın**
|
||||
**Güvenli Seçenekler:**
|
||||
- ✅ **pip kurulumunu kullanın:** `pip install ytsage` (önerilir)
|
||||
- ✅ **Kaynaktan derleyin**: Bu [kılavuzu](.github/CI_CD_README.md) takip ederek
|
||||
- ✅ **Uygulamayı antivirüs yazılımınızın beyaz listesine ekleyin**.
|
||||
|
||||
#### 🍎 macOS: "Uygulama hasarlı ve açılamıyor"
|
||||
Bu hatayı macOS Sonoma veya daha yeni bir sürümde görüyorsanız karantina özelliğini kaldırmanız gerekir.
|
||||
macOS Sonoma veya daha yeni sürümlerde bu hatayı görüyorsanız, karantina özniteliğini kaldırmanız gerekir.
|
||||
|
||||
1. **Terminal'i açın** (Spotlight'ı kullanarak bulabilirsiniz).
|
||||
2. **Aşağıdaki komutu yazın** ancak **henüz Enter'a basmayın**. Sondaki boşluğu eklediğinizden emin olun:
|
||||
1. **Terminal'i açın** (Spotlight kullanarak bulabilirsiniz).
|
||||
2. **Aşağıdaki komutu yazın**, ancak henüz Enter tuşuna **BASMAYIN**. Sonundaki boşluğu eklediğinizden emin olun:
|
||||
```bash
|
||||
xattr -d com.apple.quarantine
|
||||
```
|
||||
3. **`YTSage.app` dosyasını Finder pencerenizden sürükleyip doğrudan Terminal penceresine bırakın. Bu, doğru dosya yolunu otomatik olarak yapıştıracaktır.
|
||||
4. **Komutu çalıştırmak için **Enter** tuşuna basın.
|
||||
5. **YTSage.app'i tekrar açmayı deneyin.** Artık doğru şekilde başlatılması gerekir.
|
||||
3. **`YTSage.app` dosyasını Finder penceresinden sürükleyin** ve doğrudan Terminal penceresine bırakın. Bu, doğru dosya yolunu otomatik olarak yapıştıracaktır.
|
||||
4. Komutu çalıştırmak için **Enter tuşuna basın**.
|
||||
5. **YTSage.app'i tekrar açmayı deneyin.** Artık düzgün bir şekilde çalışmalıdır.
|
||||
|
||||
---
|
||||
|
||||
#### **Yapılandırma Konumları (Gelişmiş)**
|
||||
#### **Yapılandırma Konumu (Gelişmiş)**
|
||||
- **Windows:** `%LOCALAPPDATA%\YTSage`
|
||||
- **macOS:** `~/Library/Application Support/YTSage`
|
||||
- **Linux:** `~/.local/share/YTSage`
|
||||
|
||||
</details>
|
||||
|
||||
<a id="sponsor"></a>
|
||||
## 💖 Sponsor
|
||||
<a id="sponsor-olun"></a>
|
||||
## 💖 Sponsor Olun
|
||||
|
||||
YTSage size zaman kazandırıyorsa projeye sponsor olmayı düşünün. Sponsorluk, geliştirme süresinin, platformlar arası testlerin ve gelecekteki iyileştirmelerin karşılanmasına yardımcı olur.
|
||||
YTSage size zaman kazandırıyorsa, projeye sponsor olmayı düşünün. Sponsorluklar geliştirme süresini, tüm platformlarda test yapmayı ve gelecekteki iyileştirmeleri karşılamaya yardımcı olur.
|
||||
|
||||
- GitHub Sponsorları: https://github.com/sponsors/oop7
|
||||
- Sponsor bağlantısına doğrudan uygulamanın içindeki Hakkında iletişim kutusundan da ulaşılabilir.
|
||||
- GitHub Sponsors: https://github.com/sponsors/oop7
|
||||
- Sponsorluk bağlantısı uygulamadaki Hakkında diyaloğu üzerinden doğrudan mevcuttur.
|
||||
|
||||
[](https://github.com/sponsors/oop7)
|
||||
|
||||
<a id="contributing"></a>
|
||||
## 👥 Katkıda Bulunmak
|
||||
<a id="katkıda-bulunma"></a>
|
||||
## 👥 Katkıda Bulunma
|
||||
|
||||
Katkılarınızı bekliyoruz! İşte nasıl yardımcı olabileceğiniz:
|
||||
Katkılarınız bekliyoruz! İşte nasıl yardımcı olabileceğiniz:
|
||||
|
||||
1. 🍴 Depoyu çatallayın
|
||||
1. 🍴 Depoyu Fork'layın
|
||||
2. 🌿 Özellik dalınızı oluşturun:
|
||||
```bash
|
||||
git checkout -b feature/AmazingFeature
|
||||
```
|
||||
3. 💾 Değişikliklerinizi gerçekleştirin:
|
||||
3. 💾 Değişikliklerinizi commit'leyin:
|
||||
```bash
|
||||
git commit -m 'Add some AmazingFeature'
|
||||
git commit -m ' AmazingFeature Ekle'
|
||||
```
|
||||
4. 📤 Şubeye itin:
|
||||
4. 📤 Dalı push'layın:
|
||||
```bash
|
||||
git push origin feature/AmazingFeature
|
||||
```
|
||||
5. 🔄 Bir Çekme İsteği Açın
|
||||
5. 🔄 Bir Pull Request açın
|
||||
|
||||
### 🌍 Çevirilere Katkıda Bulunmak
|
||||
### 🌍 Çevirilerle Katkıda Bulunun
|
||||
|
||||
- Eşleşen yerelleştirilmiş README dosyasını güncelleyin (örneğin `README.es.md`)
|
||||
- `ytsage/languages/<code>.json` düzenleyerek uygulama dizelerini senkronize tutun
|
||||
- Diliniz eksikse `README.md`'den başlayın ve `README.<code>.md`'i oluşturun
|
||||
- İlgili yerelleştirilmiş README dosyasını güncelleyin (örn: `readme-translations/README.tr.md`)
|
||||
- Uygulama dizelerini `ytsage/languages/<code>.json` dosyasını düzenleyerek senkronize tutun
|
||||
- Diliniz eksikse, `README.md` dosyasından başlayın ve `README.<code>.md` dosyasını oluşturun
|
||||
|
||||
<details>
|
||||
<summary>📂 Proje Yapısı</summary>
|
||||
|
||||
## YTSage - Proje Yapısı
|
||||
|
||||
Bu belge YTSage'in organize klasör yapısını açıklamaktadır.
|
||||
Bu belge YTSage'in düzenli klasör yapısını detaylandırır.
|
||||
|
||||
### 📁 Proje Yapısı
|
||||
### 📁 Proje Düzeni
|
||||
|
||||
```
|
||||
YTSage/
|
||||
├── 📁 .github/ # GitHub configuration
|
||||
│ ├── 📁 ISSUE_TEMPLATE/ # Issue templates
|
||||
│ │ └── 🐛-bug-report.md # Bug report template
|
||||
│ ├─── 📁 workflows/ # GitHub Actions workflows
|
||||
│ │ ├── build-linux.yml # Linux build workflow
|
||||
│ │ ├── build-macos.yml # macOS build workflow
|
||||
│ │ │── build-windows.yml # Windows build workflow
|
||||
| | └── release-all.yml # Master release workflow
|
||||
│ └── 📄 CI_CD_README.md # CI/CD documentation
|
||||
├── 📁 branding/ # Branding assets (Screenshots, SVGs)
|
||||
│ ├── 📁 icons/ # Application icons
|
||||
│ ├── 📁 screenshots/ # Screenshots for documentation
|
||||
│ └── 📁 svg/ # SVG assets
|
||||
├── 📄 LICENSE # License file
|
||||
├── 📄 pyproject.toml # Project metadata and dependencies
|
||||
├── 📄 README.md # Project documentation
|
||||
├── 📄 requirements.txt # Python dependencies (dev)
|
||||
└── 📁 ytsage/ # Source package
|
||||
├── 📁 assets/ # Runtime assets
|
||||
│ ├── 📁 Icon/ # Application icons
|
||||
│ └── 📁 sound/ # Audio files
|
||||
├── 📁 languages/ # Localization files
|
||||
│ ├── 📄 ar.json # Arabic translation
|
||||
│ ├── 📄 de.json # German translation
|
||||
│ ├── 📄 en.json # English translation
|
||||
│ └── ... # Other languages
|
||||
├── 📁 core/ # Core business logic
|
||||
│ ├── 📄 __init__.py # Core package init
|
||||
│ ├── 📄 ytsage_deno.py # Deno integration
|
||||
│ ├── 📄 ytsage_downloader.py # Download functionality
|
||||
│ ├── 📄 ytsage_ffmpeg.py # FFmpeg integration
|
||||
│ ├── 📄 ytsage_utils.py # Utility functions
|
||||
│ └── 📄 ytsage_yt_dlp.py # yt-dlp integration
|
||||
├── 📁 gui/ # User interface components
|
||||
│ ├── 📄 __init__.py # GUI package init
|
||||
│ ├── 📄 ytsage_gui_main.py # Main application window
|
||||
│ └── 📁 ytsage_gui_dialogs/ # Dialog classes
|
||||
├── 📁 utils/ # Utility modules
|
||||
│ ├── 📄 __init__.py # Utils package init
|
||||
│ ├── 📄 ytsage_config_manager.py # Configuration management
|
||||
│ └── 📄 ytsage_logger.py # Logging utilities
|
||||
├── 📄 __init__.py # Package entry point
|
||||
└── 📄 main.py # Main execution script
|
||||
├── 📁 .github/ # GitHub konfigürasyonları
|
||||
│ ├── 📁 ISSUE_TEMPLATE/ # Sorun şablonları
|
||||
│ │ └── 🐛-bug-report.md # Hata raporu şablonu
|
||||
│ ├─── 📁 workflows/ # GitHub Actions iş akışları
|
||||
│ │ ├── build-linux.yml # Linux derleme akışı
|
||||
│ │ ├── build-macos.yml # macOS derleme akışı
|
||||
│ │ │── build-windows.yml # Windows derleme akışı
|
||||
| | └── release-all.yml # Ana yayın akışı
|
||||
│ └── 📄 CI_CD_README.md # CI/CD dökümantasyonu
|
||||
├── 📁 branding/ # Marka varlıkları (ekran görüntüleri, SVG'ler)
|
||||
│ ├── 📁 icons/ # Uygulama ikonları
|
||||
│ ├── 📁 screenshots/ # Dökümantasyon için ekran görüntüleri
|
||||
│ └── 📁 svg/ # SVG varlıkları
|
||||
├── 📄 LICENSE # Lisans dosyası
|
||||
├── 📄 pyproject.toml # Proje metadatası ve bağımlılıklar
|
||||
├── 📄 README.md # Proje dökümantasyonu
|
||||
├── 📄 requirements.txt # Python bağımlılıkları (dev)
|
||||
└── 📁 ytsage/ # Kaynak kod paketi
|
||||
├── 📁 assets/ # Çalışma zamanı varlıkları
|
||||
│ ├── 📁 Icon/ # Uygulama ikonları
|
||||
│ └── 📁 sound/ # Ses dosyaları
|
||||
├── 📁 languages/ # Yerelleştirme dosyaları
|
||||
│ ├── 📄 ar.json # Arapça çeviri
|
||||
│ ├── 📄 de.json # Almanca çeviri
|
||||
│ ├── 📄 en.json # İngilizce çeviri
|
||||
│ └── ... # Diğer diller
|
||||
├── 📁 core/ # Temel iş mantığı
|
||||
│ ├── 📄 __init__.py
|
||||
│ ├── 📄 ytsage_deno.py # Deno entegrasyonu
|
||||
│ ├── 📄 ytsage_downloader.py # İndirme işlevselliği
|
||||
│ ├── 📄 ytsage_ffmpeg.py # FFmpeg entegrasyonu
|
||||
│ ├── 📄 ytsage_utils.py # Yardımcı fonksiyonlar
|
||||
│ └── 📄 ytsage_yt_dlp.py # yt-dlp entegrasyonu
|
||||
├── 📁 gui/ # Kullanıcı arayüzü bileşenleri
|
||||
│ ├── 📄 __init__.py
|
||||
│ ├── 📄 ytsage_gui_main.py # Ana uygulama penceresi
|
||||
│ └── 📁 ytsage_gui_dialogs/ # Diyalog sınıfları
|
||||
├── 📁 utils/ # Yardımcı modüller
|
||||
│ ├── 📄 __init__.py
|
||||
│ ├── 📄 ytsage_config_manager.py # Yapılandırma yönetimi
|
||||
│ └── 📄 ytsage_logger.py # Günlük tutma araçları
|
||||
├── 📄 __init__.py # Paket giriş noktası
|
||||
└── 📄 main.py # Ana yürütme scripti
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
## ⭐️ Yıldız Tarihi
|
||||
## ⭐️ Yıldız Geçmişi
|
||||
|
||||
<div align="center">
|
||||
|
||||
## Yıldız Geçmişi
|
||||
## Star History
|
||||
|
||||
<a href="https://www.star-history.com/#oop7/YTSage&Date">
|
||||
<picture>
|
||||
@@ -540,7 +546,7 @@ YTSage/
|
||||
|
||||
## 📜 Lisans
|
||||
|
||||
Bu proje MIT Lisansı kapsamında lisanslıdır; ayrıntılar için [LICENSE](../LICENSE) dosyasına bakın.
|
||||
Bu proje MIT Lisansı altında lisanslanmıştır - detaylar için [LICENSE](LICENSE) dosyasına bakın.
|
||||
|
||||
## 🙏 Teşekkürler
|
||||
|
||||
@@ -549,7 +555,7 @@ Bu proje MIT Lisansı kapsamında lisanslıdır; ayrıntılar için [LICENSE](..
|
||||
|
||||
<div align="center">
|
||||
|
||||
<p>Bir iyileştirme önermek veya hata bildirmek için konu açarak bu projeye katkıda bulunan herkese yürekten teşekkür ederiz.</p>
|
||||
<p>İyileştirmeler önermek veya hataları bildirmek için sorunlar açarak bu projeye katkıda bulunan herkese çok teşekkürler.</p>
|
||||
|
||||
<table>
|
||||
<tr class="section"><th colspan="2">Temel Bileşenler</th></tr>
|
||||
@@ -563,40 +569,41 @@ Bu proje MIT Lisansı kapsamında lisanslıdır; ayrıntılar için [LICENSE](..
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://deno.com/">Deno</a></td>
|
||||
<td>Yt-dlp</td> ile entegrasyon için çalışma zamanı
|
||||
<td>yt-dlp entegrasyonu için runtime</td>
|
||||
</tr>
|
||||
<tr class="section"><th colspan="2">Kütüphaneler ve Çerçeveler</th></tr>
|
||||
<tr class="section"><th colspan="2">Kütüphaneler ve Frameworkler</th></tr>
|
||||
<tr>
|
||||
<td><a href="https://wiki.qt.io/Qt_for_Python">PySide6</a></td>
|
||||
<td>GUI Çerçevesi</td>
|
||||
<td>GUI Framework</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://python-pillow.org/">Yastık</a></td>
|
||||
<td>Görüntü İşleme</td>
|
||||
<td><a href="https://python-pillow.org/">Pillow</a></td>
|
||||
<td>Resim İşleme</td>
|
||||
</tr>
|
||||
<tr><td><a href="https://requests.readthedocs.io/">istekler</a></td>
|
||||
<tr>
|
||||
<td><a href="https://requests.readthedocs.io/">requests</a></td>
|
||||
<td>HTTP İstekleri</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://packaging.python.org/">paketleme</a></td>
|
||||
<td>Versiyon ve Paket İşleme</td>
|
||||
<td><a href="https://packaging.python.org/">packaging</a></td>
|
||||
<td>Sürüm ve Paket Yönetimi</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://python-markdown.github.io/">markdown</a></td>
|
||||
<td>Markdown Oluşturma</td>
|
||||
<td>Markdown İşleme</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/Delgan/loguru">loguru</a></td>
|
||||
<td>Günlüğe kaydetme</td>
|
||||
<td>Günlük Kaydı</td>
|
||||
</tr>
|
||||
<tr class="section"><th colspan="2">Varlıklar ve Katkıda Bulunanlar</th></tr>
|
||||
<tr>
|
||||
<td><a href="https://pixabay.com/sound-effects/new-notification-09-352705/">Universfield'dan Yeni Bildirim 09</a></td>
|
||||
<td><a href="https://pixabay.com/sound-effects/new-notification-09-352705/">Universfield'dan New Notification 09</a></td>
|
||||
<td>Bildirim Sesi</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/viru185">viru185</a></td>
|
||||
<td>Kod Katılımcısı</td>
|
||||
<td>Kod Katkıda Bulunan</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -604,14 +611,14 @@ Bu proje MIT Lisansı kapsamında lisanslıdır; ayrıntılar için [LICENSE](..
|
||||
|
||||
</details>
|
||||
|
||||
## ⚠️ Yasal Uyarı
|
||||
## ⚠️ Feragatname
|
||||
|
||||
Bu araç yalnızca kişisel kullanım içindir. Lütfen YouTube'un hizmet şartlarına ve içerik oluşturucuların haklarına saygı gösterin.
|
||||
Bu araç sadece kişisel kullanım içindir. Lütfen YouTube'un Hizmet Şartlarına ve içerik oluşturucuların haklarına saygı gösterin.
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
[oop7](https://github.com/oop7) tarafından ❤️ ile yapılmıştır
|
||||
[oop7](https://github.com/oop7) tarafından ❤️ ile yapıldı
|
||||
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user