Update Polish README translation and formatting
Apply copy edits and formatting fixes to readme-translations/README.pl.md: adjust wording and capitalization, standardize section headings and anchors (e.g. instalacja, funkcje, użycie), harmonize terminology (Download Settings, Generic Mode), fix tables and list formatting, update platform/executable descriptions and installation steps, revise screenshots alt text, clarify usage and troubleshooting instructions, and refresh localization & contributing sections for consistency.
This commit is contained in:
+260
-254
@@ -12,81 +12,82 @@
|
|||||||
[](https://pypi.org/project/ytsage/)
|
[](https://pypi.org/project/ytsage/)
|
||||||
[](https://github.com/sponsors/oop7)
|
[](https://github.com/sponsors/oop7)
|
||||||
|
|
||||||
**Nowoczesny downloader YouTube z przejrzystym interfejsem PySide6.**
|
**Nowoczesny downloader YouTube z czystym interfejsem PySide6.**
|
||||||
Pobieraj filmy w dowolnej jakości, wyodrębniaj dźwięk, pobieraj napisy i nie tylko.
|
Pobieraj wideo w dowolnej jakości, wyodrębniaj audio, pobieraj napisy i wiele więcej.
|
||||||
|
|
||||||
### 🌍 PRZECZYTAJ Języki
|
### 🌍 Języki README
|
||||||
|
|
||||||
Angielski: [EN](../README.md)
|
Angielski: [EN](../README.md)
|
||||||
| Numer telefonu: [AR](README.ar.md)
|
| Arabski: [AR](README.ar.md)
|
||||||
| Niemiecki: [DE](README.de.md)
|
| Niemiecki: [DE](README.de.md)
|
||||||
| Hiszpański: [ES](README.es.md)
|
| Hiszpański: [ES](README.es.md)
|
||||||
| Français: [FR](README.fr.md)
|
| Francuski: [FR](README.fr.md)
|
||||||
| हिन्दी: [HI](README.hi.md)
|
| Hindi: [HI](README.hi.md)
|
||||||
| Bahasa Indonezja: [ID](README.id.md)
|
| Indonezyjski: [ID](README.id.md)
|
||||||
| włoski: [IT](README.it.md)
|
| Włoski: [IT](README.it.md)
|
||||||
| 日本語: [JA](README.ja.md)
|
| Japoński: [JA](README.ja.md)
|
||||||
| Polski: [PL](README.pl.md)
|
| Polski: [PL](README.pl.md)
|
||||||
| Portugalski: [PT](README.pt.md)
|
| Portugalski: [PT](README.pt.md)
|
||||||
| Rosyjski: [RU](README.ru.md)
|
| Rosyjski: [RU](README.ru.md)
|
||||||
| Turecki: [TR](README.tr.md)
|
| Turecki: [TR](README.tr.md)
|
||||||
| Nazwa: [ZH](README.zh.md)
|
| Chiński: [ZH](README.zh.md)
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<a href="#installation">Instalacja</a> •
|
<a href="#instalacja">Instalacja</a> •
|
||||||
<a href="#features">Funkcje</a> •
|
<a href="#funkcje">Funkcje</a> •
|
||||||
<a href="#usage">Użycie</a> •
|
<a href="#użycie">Użycie</a> •
|
||||||
<a href="#screenshots">Zrzuty ekranu</a> •
|
<a href="#zrzuty-ekranu">Zrzuty ekranu</a> •
|
||||||
<a href="#troubleshooting">Rozwiązywanie problemów</a> •
|
<a href="#rozwiązywanie-problemów">Rozwiązywanie problemów</a> •
|
||||||
<a href="#sponsor">Sponsor</a> •
|
<a href="#sponsor">Sponsor</a> •
|
||||||
<a href="#contributing">Wspieranie</a>
|
<a href="#współpraca">Współpraca</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<a id="why-ytsage"></a>
|
<a id="dlaczego-ytsage"></a>
|
||||||
## ❓ Dlaczego YTSage?
|
## ❓ Dlaczego YTSage?
|
||||||
|
|
||||||
YTSage jest przeznaczony dla użytkowników, którzy chcą **prostego, ale potężnego narzędzia do pobierania YouTube**. W odróżnieniu od innych narzędzi oferuje:
|
YTSage został zaprojektowany dla użytkowników, którzy chcą **prostego, ale potężnego downloadera YouTube**. W przeciwieństwie do innych narzędzi oferuje:
|
||||||
|
|
||||||
- Czysty, nowoczesny interfejs PySide6
|
- Nowoczesny i czysty interfejs PySide6
|
||||||
- Pobieranie wideo, audio i napisów jednym kliknięciem
|
- Pobieranie wideo, audio i napisów jednym kliknięciem
|
||||||
- Zaawansowane funkcje, takie jak SponsorBlock, łączenie napisów i wybór listy odtwarzania
|
- Zaawansowane funkcje, takie jak SponsorBlock, scalanie napisów i wybór playlisty
|
||||||
- Opcjonalny tryb ogólny dla witryn obsługujących yt-dlp poza YouTube
|
- Opcjonalny tryb ogólny (Generic Mode) dla stron spoza YouTube obsługiwanych przez yt-dlp
|
||||||
- Obsługa wielu platform i łatwa instalacja
|
- Obsługa wielu platform i łatwa instalacja
|
||||||
|
|
||||||
<a id="features"></a>
|
<a id="funkcje"></a>
|
||||||
## ✨ Funkcje
|
## ✨ Funkcje
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
| Podstawowe funkcje | Zaawansowane funkcje | Dodatkowe funkcje |
|
| Funkcje podstawowe | Funkcje zaawansowane | Funkcje dodatkowe |
|
||||||
|----------------------------------|------------------------------------------------------|-----------------------------------|
|
|-----------------------------------|-----------------------------------------|------------------------------------|
|
||||||
| 🎥 Formatuj tabelę | 🚫 Integracja z blokiem sponsorskim | 🎞️ Wyświetlacz FPS/HDR |
|
| 🎥 Tabela formatów | 🚫 Integracja SponsorBlock | 🎞️ Wyświetlanie FPS/HDR |
|
||||||
| 🎵 Ekstrakcja dźwięku | 📝 Wybierz i połącz wiele napisów | 🔄 Automatyczna aktualizacja yt-dlp |
|
| 🎵 Wyodrębnianie audio | 📝 Wybór i scalanie napisów | 🔄 Auto-aktualizacja yt-dlp |
|
||||||
| ✨ Prosty interfejs użytkownika | 💾 Zapisz opis i miniaturę | 🛠️ Wykrywanie FFmpeg/yt-dlp/Deno |
|
| ✨ Prosty interfejs użytkownika | 💾 Zapis opisu i miniatur | 🛠️ Wykrywanie FFmpeg/yt-dlp/Deno |
|
||||||
| 📋 Obsługa i wybór list odtwarzania | 🚀 Ogranicznik prędkości | ⚙️ Polecenia niestandardowe |
|
| 📋 Obsługa i wybór playlist | 🚀 Ogranicznik prędkości | ⚙️ Własne komendy |
|
||||||
| 📑 Umieść rozdziały | ✂️ Przytnij sekcje wideo | 🍪 Zaloguj się za pomocą plików cookie |
|
| 📑 Integracja rozdziałów | ✂️ Przycinanie sekcji wideo | 🍪 Logowanie przez ciasteczka |
|
||||||
| 📜 Pobierz historię | 🔄 Zwolnij wybór kanału | 🌐 Wsparcie proxy |
|
| 📜 Historia pobierania | 🔄 Wybór kanału wydań | 🌐 Obsługa proxy |
|
||||||
| 🎚️ Konwersja formatu audio | 🎬 Ustawienia formatu wideo | 🆙 Wbudowana zakładka Aktualizator |
|
| 🎚️ Konwersja formatów audio | 🎬 Ustawienia formatu wideo | 🆙 Zintegrowana karta aktualizacji |
|
||||||
| 🌍 Tryb ogólny | 🔊 Normalizacja dźwięku (EBU R128) | 🌍 Lokalizacja w 14 językach |
|
| 🌍 Tryb ogólny | 🔊 Normalizacja audio (EBU R128) | 🌍 Lokalizacja w 14 językach |
|
||||||
|
| 💾 Eksport playlisty | ⚙️ Domyślna jakość i napisy | |
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<a id="installation"></a>
|
<a id="instalacja"></a>
|
||||||
## 🚀 Instalacja
|
## 🚀 Instalacja
|
||||||
|
|
||||||
### ⚡ Szybka instalacja (zalecane)
|
### ⚡ Szybka instalacja (zalecana)
|
||||||
|
|
||||||
Zainstaluj YTSage z PyPI:
|
Zainstaluj YTSage przez PyPI:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip install ytsage
|
pip install ytsage
|
||||||
```
|
```
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🔄 Zaktualizuj istniejącą instalację</summary>
|
<summary>🔄 Aktualizacja istniejącej instalacji</summary>
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip install --upgrade ytsage
|
pip install --upgrade ytsage
|
||||||
@@ -100,33 +101,33 @@ Następnie uruchom aplikację:
|
|||||||
ytsage
|
ytsage
|
||||||
```
|
```
|
||||||
|
|
||||||
### 📦 Gotowe pliki wykonywalne
|
### 📦 Gotowe pliki wykonywalne (Executable)
|
||||||
|
|
||||||
> [👉 Download Latest Release](https://github.com/oop7/YTSage/releases/latest)
|
> [👉 Pobierz najnowsze wydanie](https://github.com/oop7/YTSage/releases/latest)
|
||||||
|
|
||||||
#### 🪟 Okna
|
#### 🪟 Windows
|
||||||
|
|
||||||
| Formatuj | Opis |
|
| Format | Opis |
|
||||||
|------------|------------|
|
|--------|-------------|
|
||||||
|  | Standardowy instalator |
|
|  | Standardowy instalator |
|
||||||
|  | Z pakietem FFmpeg |
|
|  | Z dołączonym FFmpeg |
|
||||||
|  | Wersja przenośna, nie wymaga instalacji |
|
|  | Wersja przenośna, nie wymaga instalacji |
|
||||||
|  | Przenośny z FFmpeg, spakowany |
|
|  | Przenośna z FFmpeg, skompresowana (ZIP) |
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🛠️ Kroki instalacji</summary>
|
<summary>🛠️ Kroki instalacji</summary>
|
||||||
|
|
||||||
1. **Instalator EXE (`.exe`)**: Kliknij dwukrotnie plik i postępuj zgodnie z instrukcjami kreatora instalacji.
|
1. **Instalator EXE (`.exe`)**: Kliknij dwukrotnie plik i postępuj zgodnie z instrukcjami kreatora.
|
||||||
2. **Wersja przenośna (`.zip`)**: Wypakuj archiwum do wybranej lokalizacji i uruchom `ytsage.exe`.
|
2. **Wersja przenośna (`.zip`)**: Rozpakuj archiwum w wybranym miejscu i uruchom `ytsage.exe`.
|
||||||
3. **FFmpeg w pakiecie**: Wybierz wersję w pakiecie FFmpeg, jeśli nie masz zainstalowanego FFmpeg w swoim systemie.
|
3. **Wbudowany FFmpeg**: Jeśli nie masz zainstalowanego FFmpeg w systemie, wybierz wersję z dołączonym FFmpeg.
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
#### 🐧 Linux
|
#### 🐧 Linux
|
||||||
|
|
||||||
| Formatuj | Opis |
|
| Format | Opis |
|
||||||
|------------|------------|
|
|--------|-------------|
|
||||||
|  | Pakiet Debiana |
|
|  | Pakiet Debian |
|
||||||
|  | Obraz aplikacji, przenośny |
|
|  | AppImage, przenośny |
|
||||||
|  | Pakiet RPM |
|
|  | Pakiet RPM |
|
||||||
|  | Pakiet Flatpak |
|
|  | Pakiet Flatpak |
|
||||||
|
|
||||||
@@ -136,18 +137,18 @@ ytsage
|
|||||||
- **DEB (`.deb`)**:
|
- **DEB (`.deb`)**:
|
||||||
```bash
|
```bash
|
||||||
sudo dpkg -i ytsage_*.deb
|
sudo dpkg -i ytsage_*.deb
|
||||||
sudo apt-get install -f # Fix missing dependencies if any
|
sudo apt-get install -f # Jeśli trzeba naprawić brakujące zależności
|
||||||
```
|
```
|
||||||
- **RPM (`.rpm`)**:
|
- **RPM (`.rpm`)**:
|
||||||
```bash
|
```bash
|
||||||
sudo rpm -i ytsage-*.rpm
|
sudo rpm -i ytsage-*.rpm
|
||||||
```
|
```
|
||||||
- **Obraz aplikacji (`.AppImage`)**:
|
- **AppImage (`.AppImage`)**:
|
||||||
```bash
|
```bash
|
||||||
chmod +x YTSage-*.AppImage
|
chmod +x YTSage-*.AppImage
|
||||||
./YTSage-*.AppImage
|
./YTSage-*.AppImage
|
||||||
```
|
```
|
||||||
- **Flatpak**: Postępuj zgodnie z instrukcjami na Flathubie lub uruchom:
|
- **Flatpak**: Postępuj zgodnie z instrukcjami na Flathub lub uruchom:
|
||||||
```bash
|
```bash
|
||||||
flatpak install flathub io.github.oop7.ytsage
|
flatpak install flathub io.github.oop7.ytsage
|
||||||
```
|
```
|
||||||
@@ -155,24 +156,24 @@ ytsage
|
|||||||
|
|
||||||
#### 🍎 macOS
|
#### 🍎 macOS
|
||||||
|
|
||||||
| Formatuj | Opis |
|
| Format | Opis |
|
||||||
|------------|------------|
|
|--------|-------------|
|
||||||
|  | Spakowana aplikacja dla Apple Silicon |
|
|  | Aplikacja ZIP dla Apple Silicon |
|
||||||
|  | Instalator obrazu dysku dla Apple Silicon |
|
|  | Instalator Disk Image dla Apple Silicon |
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🛠️ Kroki instalacji</summary>
|
<summary>🛠️ Kroki instalacji</summary>
|
||||||
|
|
||||||
- **Instalator DMG (`.dmg`)**: Kliknij dwukrotnie, aby zamontować, a następnie przeciągnij `YTSage.app` do folderu Aplikacje.
|
- **Instalator DMG (`.dmg`)**: Kliknij dwukrotnie, aby zamontować, a następnie przeciągnij `YTSage.app` do folderu Aplikacje.
|
||||||
- **Archiwum aplikacji (`.zip`)**: Wypakuj plik ZIP i przenieś `YTSage.app` do folderu Aplikacje.
|
- **Archiwum aplikacji (`.zip`)**: Rozpakuj ZIP i przenieś `YTSage.app` do folderu Aplikacje.
|
||||||
|
|
||||||
*Uwaga: jeśli napotkasz błąd „Aplikacja jest uszkodzona”, zobacz [macOS troubleshooting section](#troubleshooting) poniżej.*
|
*Uwaga: Jeśli otrzymasz błąd "Aplikacja jest uszkodzona", zapoznaj się z sekcją rozwiązywania problemów macOS poniżej.*
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>💻 Instalacja ręczna ze źródła</summary>
|
<summary>💻 Ręczna instalacja ze źródeł</summary>
|
||||||
|
|
||||||
### 1. Sklonuj repozytorium
|
### 1. Sklonuj repozytorium
|
||||||
|
|
||||||
@@ -183,13 +184,13 @@ cd YTSage
|
|||||||
|
|
||||||
### 2. Zainstaluj zależności
|
### 2. Zainstaluj zależności
|
||||||
|
|
||||||
#### ⚡ Z uv
|
#### ⚡ Z użyciem uv
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
uv pip install .
|
uv pip install .
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 📦 Lub ze standardową końcówką
|
#### 📦 Lub ze standardowym pip
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip install .
|
pip install .
|
||||||
@@ -203,226 +204,230 @@ python -m ytsage.main
|
|||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<a id="screenshots"></a>
|
<a id="zrzuty-ekranu"></a>
|
||||||
## 📸 Zrzuty ekranu
|
## 📸 Zrzuty ekranu
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td><img src="../branding/screenshots/Download-Settings.png" alt="Download Settings" width="400"/></td>
|
<td><img src="../branding/screenshots/Download-Settings.png" alt="Ustawienia pobierania" width="400"/></td>
|
||||||
<td><img src="../branding/screenshots/playlist.png" alt="Playlist Download" width="400"/></td>
|
<td><img src="../branding/screenshots/playlist.png" alt="Pobieranie playlisty" width="400"/></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center"><em>Pobierz ustawienia</em></td>
|
<td align="center"><em>Ustawienia pobierania</em></td>
|
||||||
<td align="center"><em>Pobieranie listy odtwarzania</em></td>
|
<td align="center"><em>Pobieranie playlisty</em></td>
|
||||||
</tr>
|
</tr>
|
||||||
<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/audio_format.png" alt="Wybór formatu audio" width="400"/></td>
|
||||||
<td><img src="../branding/screenshots/Custom-Option.png" alt="Custom Options" width="400"/></td>
|
<td><img src="../branding/screenshots/Custom-Option.png" alt="Opcje niestandardowe" width="400"/></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center"><em>Format audio</em></td>
|
<td align="center"><em>Format audio</em></td>
|
||||||
<td align="center"><em>Opcje niestandardowe</em></td>
|
<td align="center"><em>Opcje niestandardowe</em></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div><a id="usage"></a>
|
</div>
|
||||||
|
|
||||||
|
<a id="użycie"></a>
|
||||||
## 📖 Użycie
|
## 📖 Użycie
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🎯 Podstawowe użycie</summary>
|
<summary>🎯 Podstawowe użycie</summary>
|
||||||
|
|
||||||
1. **Uruchom YTSage**
|
1. **Uruchom YTSage**
|
||||||
2. **Wklej adres URL YouTube** (lub użyj przycisku „Wklej adres URL”)
|
2. **Wklej URL z YouTube** (lub użyj przycisku "Wklej URL")
|
||||||
3. **Kliknij „Analizuj”**
|
3. **Kliknij "Analizuj"**
|
||||||
4. **Wybierz format:**
|
4. **Wybierz format:**
|
||||||
- `Video` do pobierania plików wideo
|
- `Wideo` dla pobierania wideo
|
||||||
- `Audio Only` do ekstrakcji dźwięku
|
- `Tylko audio` dla wyodrębniania dźwięku
|
||||||
5. **Wybierz opcje:**
|
5. **Wybierz opcje:**
|
||||||
- Włącz napisy i wybierz język
|
- Włącz napisy i wybierz język
|
||||||
- Włącz scalanie napisów
|
- Włącz scalanie napisów
|
||||||
- Zapisz miniaturę
|
- Zapisz miniaturę
|
||||||
- Usuń segmenty sponsorów
|
- Usuń sekcje sponsorowane
|
||||||
- Zapisz opis
|
- Zapisz opis
|
||||||
- Osadzaj rozdziały
|
- Osadź rozdziały
|
||||||
6. **Wybierz katalog wyjściowy**
|
6. **Wybierz folder wyjściowy**
|
||||||
7. **Kliknij „Pobierz”**
|
7. **Kliknij "Pobierz"**
|
||||||
|
|
||||||
> 💡 Domyślnym katalogiem pobierania jest folder „Pobrane” użytkownika.
|
> 💡 Domyślny folder pobierania to folder "Pobrane" użytkownika.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>📋 Pobieranie listy odtwarzania</summary>
|
<summary>📋 Pobieranie playlisty</summary>
|
||||||
|
|
||||||
1. **Wklej adres URL listy odtwarzania**
|
1. **Wklej URL playlisty**
|
||||||
2. **Kliknij „Analizuj”**
|
2. **Kliknij "Analizuj"**
|
||||||
3. **Wybierz filmy z selektora playlist (opcjonalnie, domyślnie wszystkie)**
|
3. **Wybierz filmy z selektora (opcjonalnie, domyślnie wszystkie)**
|
||||||
4. **Wybierz żądany format/jakość**
|
4. **Wybierz żądany format/jakość**
|
||||||
5. **Kliknij „Pobierz”**
|
5. **Kliknij "Pobierz"**
|
||||||
|
|
||||||
> 💡 Aplikacja automatycznie obsługuje kolejkę pobierania
|
> 💡 Aplikacja automatycznie zarządza kolejką pobierania, a wpisy playlisty możesz eksportować do plików `.txt`, `.csv`, `.m3u` lub `.json`.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🌍 Tryb ogólny dla witryn innych niż YouTube</summary>
|
<summary>🌍 Tryb ogólny dla stron innych niż YouTube</summary>
|
||||||
|
|
||||||
Użyj trybu ogólnego, jeśli chcesz, aby YTSage akceptował adresy URL z witryn obsługiwanych przez yt-dlp, takich jak Dailymotion, CBC Gem, TikTok i inne.
|
Użyj trybu ogólnego (Generic Mode), gdy chcesz, aby YTSage akceptował adresy URL ze stron obsługiwanych przez yt-dlp, takich jak Dailymotion, CBC Gem, TikTok i inne.
|
||||||
|
|
||||||
Jak z niego korzystać:
|
Jak go użyć:
|
||||||
|
|
||||||
1. Otwórz `Download Settings`.
|
1. Otwórz `Download Settings`.
|
||||||
2. Włącz `Generic Mode`.
|
2. Włącz `Generic Mode`.
|
||||||
3. Wklej obsługiwany adres URL filmu lub listy odtwarzania spoza YouTube.
|
3. Wklej obsługiwany URL wideo lub playlisty spoza YouTube.
|
||||||
4. Kliknij `Analyze`.
|
4. Kliknij `Analyze`.
|
||||||
5. Wybierz format i pobierz jak zwykle.
|
5. Wybierz format i pobierz jak zwykle.
|
||||||
|
|
||||||
Uwagi:
|
Uwagi:
|
||||||
|
|
||||||
- Tryb ogólny zmienia tylko weryfikację adresu URL w YTSage. Witryna docelowa musi nadal być obsługiwana przez zainstalowaną wersję yt-dlp.
|
- Tryb ogólny zmienia tylko walidację adresu URL wewnątrz YTSage. Strona docelowa musi być nadal obsługiwana przez zainstalowaną wersję yt-dlp.
|
||||||
- Niektóre witryny wymagają plików cookie, sesji logowania, serwera proxy lub dodatkowych argumentów yt-dlp, w zależności od ekstraktora.
|
- Niektóre strony wymagają ciasteczek, logowania, proxy lub dodatkowych argumentów yt-dlp w zależności od ekstraktora.
|
||||||
- Jeśli witryna ulegnie awarii, przed zgłoszeniem problemu zaktualizuj najpierw yt-dlp z wbudowanej karty aktualizatora.
|
- Jeśli strona nie działa, zaktualizuj yt-dlp ze zintegrowanej karty aktualizacji przed zgłoszeniem problemu.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🧰 Opcje multimediów i pobierania</summary>
|
<summary>🧰 Opcje mediów i pobierania</summary>
|
||||||
|
|
||||||
- **Opcje napisów:** Filtruj języki i osadzaj napisy w pliku wideo
|
- **Opcje napisów:** Filtruj języki i osadzaj napisy w pliku wideo.
|
||||||
- **Scalanie napisów:** Łączenie napisów z plikiem wideo w celu uzyskania napisów zakodowanych na stałe
|
- **Scalanie napisów:** Scala napisy z plikiem wideo (hardcoded).
|
||||||
- **Zapisz opis:** Zapisz opis filmu jako plik tekstowy
|
- **Zapis opisu:** Zapisuje opis wideo jako plik tekstowy.
|
||||||
- **Zapisz miniaturę:** zapisz miniaturę wideo jako plik obrazu
|
- **Zapis miniatury:** Zapisuje miniaturę wideo jako plik graficzny.
|
||||||
- **Osadzanie rozdziałów:** Osadzanie znaczników rozdziałów jako metadanych dla zgodnych odtwarzaczy wideo
|
- **Osadź rozdziały:** Dołącza znaczniki rozdziałów jako metadane dla kompatybilnych odtwarzaczy.
|
||||||
- **Usuń segmenty sponsora:** Usuń segmenty sponsora z filmu za pomocą funkcji SponsorBlock
|
- **Usuń sekcje sponsorowane:** Używa SponsorBlock do usuwania segmentów sponsorowanych z filmu.
|
||||||
- **Przytnij wideo:** Pobierz tylko określone fragmenty filmu, określając zakresy czasu w formacie `HH:MM:SS`
|
- **Przycinanie wideo:** Pobieraj tylko określone części filmu, określając zakres czasu w formacie `GG:MM:SS`.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>⚙️ Ustawienia wyjściowe i plikowe</summary>
|
<summary>⚙️ Ustawienia wyjściowe i plików</summary>
|
||||||
|
|
||||||
|
- **Ogranicznik prędkości:** Ogranicz prędkość pobierania, np. `500K` dla 500 KB/s.
|
||||||
|
- **Zapisz ścieżkę pobierania:** Zapisuje domyślną ścieżkę dla przyszłych pobrań. Dostępne w **Download Settings → Download Path**.
|
||||||
|
- **Domyślna rozdzielczość wideo:** Ustaw preferowaną rozdzielczość dla automatycznego wyboru (np. 1080p, 720p). Dostępne w **Download Settings → Default Video Resolution**.
|
||||||
|
- **Domyślne języki napisów:** Ustaw domyślne języki dla automatycznego wyboru (rozdzielone przecinkami, np. `pl,en`). Dostępne w **Download Settings → Default Subtitle Languages**.
|
||||||
|
- **Format nazwy pliku:** Dostosuj format nazwy pliku wyjściowego, używając zmiennych takich jak `%(title)s`, `%(uploader)s`, `%(playlist_index)s` i `%(resolution)s`. Dostępne w **Download Settings → Filename Format**.
|
||||||
|
- **Wymuś format wyjściowy:** Wymuś pobieranie wideo do konkretnego formatu kontenera, jak `mp4`, `webm` lub `mkv`. Dostępne w **Download Settings → Output Format Settings**.
|
||||||
|
- **Konwersja formatów audio:** Konwertuj pobierany dźwięk do preferowanego formatu, takiego jak `AAC`, `MP3`, `FLAC`, `WAV`, `Opus`, `M4A`, `Vorbis` lub `Best`. Dostępne w **Download Settings → Audio Format Settings**.
|
||||||
|
- **Normalizacja audio:** Ujednolica głośność pobieranego dźwięku przy użyciu EBU R128.
|
||||||
|
- **Jednoczesne połączenia:** Znacznie zwiększa prędkość pobierania, pobierając pliki w kilku częściach naraz. Dostępne w **Download Settings → General → Concurrent Connections** (domyślnie 1, zalecane maks. 8-10, aby uniknąć blokad IP).
|
||||||
|
|
||||||
- **Ogranicznik prędkości:** Ogranicz prędkość pobierania, na przykład `500K` dla 500 KB/s
|
|
||||||
- **Zapisz ścieżkę pobierania:** zapisz domyślną ścieżkę pobierania dla przyszłych pobrań. Dostępne w **Ustawienia pobierania → Ścieżka pobierania**.
|
|
||||||
- **Format nazwy pliku wyjściowego:** Dostosuj format nazwy pliku wyjściowego za pomocą zmiennych takich jak `%(title)s`, `%(uploader)s` i `%(resolution)s`. Dostępne w **Ustawienia pobierania → Format nazwy pliku**.
|
|
||||||
- **Wymuś format wyjściowy:** Wymuś pobieranie plików wideo w określonym formacie kontenera, takim jak `mp4`, `webm` lub `mkv`. Dostępne w **Ustawienia pobierania → Ustawienia formatu wyjściowego**.
|
|
||||||
- **Konwersja formatu audio:** Konwertuj pliki do pobrania zawierające wyłącznie dźwięk do preferowanych formatów, takich jak `AAC`, `MP3`, `FLAC`, `WAV`, `Opus`, `M4A`, `Vorbis` lub `Best`. Dostępne w **Ustawienia pobierania → Ustawienia formatu audio**.
|
|
||||||
- **Normalizacja dźwięku:** Ujednolicenie głośności pobieranych plików zawierających wyłącznie dźwięk za pomocą EBU R128.
|
|
||||||
- **Jednoczesne połączenia:** Znacznie zwiększ prędkość pobierania, pobierając pliki w wielu fragmentach jednocześnie. Dostępne w **Ustawienia pobierania → Ogólne → Jednoczesne połączenia** (Domyślnie 1, zalecane maksimum to 8-10, aby zapobiec blokowaniu IP).\n
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🌐 Dostęp i sieć</summary>
|
<summary>🌐 Dostęp i sieć</summary>
|
||||||
|
|
||||||
- **Zaloguj się za pomocą plików cookie:** zaloguj się do YouTube za pomocą plików cookie, aby uzyskać dostęp do prywatnych treści.
|
- **Logowanie przez ciasteczka:** Zaloguj się do YouTube, używając ciasteczek, aby uzyskać dostęp do prywatnych treści.
|
||||||
Jak z niego korzystać:
|
Użycie:
|
||||||
1. **Zalecane:** Skorzystaj z wbudowanej opcji `Extract cookies from browser` w aplikacji, a następnie wybierz przeglądarkę i opcjonalnie profil.
|
1. **Zalecane:** Użyj wbudowanej opcji `Eksportuj ciasteczka z przeglądarki`, a następnie wybierz przeglądarkę i opcjonalnie profil.
|
||||||
2. Alternatywnie wyodrębnij pliki cookie ręcznie:
|
2. Alternatywnie, wyeksportuj ciasteczka ręcznie:
|
||||||
a. Eksportuj pliki cookie ze swojej przeglądarki za pomocą rozszerzenia takiego jak [cookie-editor](https://github.com/moustachauve/cookie-editor?tab=readme-ov-file)
|
a. Eksportuj ciasteczka z przeglądarki, używając rozszerzenia typu [cookie-editor](https://github.com/moustachauve/cookie-editor?tab=readme-ov-file)
|
||||||
b. Skopiuj pliki cookie w formacie Netscape
|
b. Skopiuj ciasteczka w formacie Netscape
|
||||||
c. Utwórz plik o nazwie `cookies.txt` i wklej do niego pliki cookie
|
c. Utwórz plik o nazwie `cookies.txt` i wklej ciasteczka
|
||||||
d. Wybierz plik `cookies.txt` w aplikacji
|
d. Wybierz plik `cookies.txt` w aplikacji
|
||||||
- **Obsługa proxy:** Do pobierania używaj serwera proxy, na przykład `http://<proxy-server>:<port>`
|
- **Obsługa proxy:** Użyj serwera proxy do pobierania, np. `http://<serwer-proxy>:<port>`
|
||||||
- **Tryb ogólny:** Zezwól YTSage na analizowanie i pobieranie z witryn innych niż YouTube obsługiwanych przez yt-dlp. Włącz tę opcję w **Ustawienia pobierania → Tryb ogólny**.
|
- **Tryb ogólny:** Pozwala YTSage na analizę i pobieranie z witryn innych niż YouTube obsługiwanych przez yt-dlp. Włącz w **Download Settings → Generic Mode**.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🛠️ Narzędzia i konserwacja</summary>
|
<summary>🛠️ Narzędzia i konserwacja</summary>
|
||||||
|
|
||||||
- **Niestandardowe polecenia:** Dostęp do zaawansowanych funkcji yt-dlp poprzez argumenty wiersza poleceń
|
- **Własne komendy:** Dostęp do zaawansowanych funkcji yt-dlp poprzez argumenty wiersza poleceń.
|
||||||
- **Karta Aktualizator:** Zarządzaj wbudowanymi narzędziami aktualizacji z jednego miejsca w Opcjach niestandardowych:
|
- **Karta aktualizacji:** Zarządzaj wbudowanymi narzędziami aktualizacji z jednego miejsca w opcjach niestandardowych:
|
||||||
- **Aktualizacje yt-dlp:** sprawdź dostępność aktualizacji i przełączaj się między kanałami wersji stabilnej i nocnej
|
- **Aktualizacja yt-dlp:** Sprawdzaj aktualizacje i przełączaj się między kanałami Stable i Nightly.
|
||||||
- **Kontrola wersji FFmpeg:** Sprawdź wersję FFmpeg i otwórz przewodniki instalacji
|
- **Sprawdzanie wersji FFmpeg:** Weryfikuj wersję FFmpeg i otwieraj przewodniki instalacji.
|
||||||
- **Aktualizacje Deno:** Sprawdź i zaktualizuj środowisko wykonawcze Deno
|
- **Aktualizacja Deno:** Sprawdzaj i aktualizuj środowisko uruchomieniowe Deno.
|
||||||
- **Wykrywanie FFmpeg/yt-dlp/Deno:** Automatycznie wykrywa ścieżki i wersje FFmpeg, yt-dlp i Deno w oknie dialogowym Informacje.
|
- **Wykrywanie FFmpeg/yt-dlp/Deno:** Automatycznie wykrywa ścieżki i wersje FFmpeg, yt-dlp i Deno w oknie "O programie".
|
||||||
- **Historia pobierania:** Przeglądaj wcześniejsze pobrania z miniaturami i statusami za pomocą przycisku **Historia**.
|
- **Historia pobierania:** Przeglądaj poprzednie pobrania z miniaturami i statusami za pomocą przycisku **History**.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🌍 Lokalizacja</summary>
|
<summary>🌍 Lokalizacja</summary>
|
||||||
|
|
||||||
YTSage obsługuje **14 języków**, zapewniając dostępność na całym świecie. Wybierz preferowany język z **Opcje niestandardowe → Język**.
|
YTSage obsługuje **14 języków**. Wybierz preferowany język w **Custom Options → Language**.
|
||||||
|
|
||||||
### Obsługiwane języki
|
### Obsługiwane języki
|
||||||
|
|
||||||
| Język | Kod | Język | Kod |
|
| Język | Kod | Język | Kod |
|
||||||
|---------|------|----------|------|
|
|----------|------|----------|------|
|
||||||
| 🇺🇸 Angielski | `en` | 🇪🇸 Hiszpański | `es` |
|
| 🇺🇸 Angielski | `en` | 🇪🇸 Hiszpański | `es` |
|
||||||
| 🇸🇦 arabski | `ar` | 🇫🇷 Francuski | `fr` |
|
| 🇸🇦 Arabski | `ar` | 🇫🇷 Francuski | `fr` |
|
||||||
| 🇩🇪 niemiecki | `de` | 🇮🇳 hindi | `hi` |
|
| 🇩🇪 Niemiecki | `de` | 🇮🇳 Hindi | `hi` |
|
||||||
| 🇮🇩 Indonezyjski | `id` | 🇮🇹 włoski | `it` |
|
| 🇮🇩 Indonezyjski | `id` | 🇮🇹 Włoski | `it` |
|
||||||
| 🇯🇵 Japoński | `ja` | 🇵🇱polski | `pl` |
|
| 🇯🇵 Japoński | `ja` | 🇵🇱 Polski | `pl` |
|
||||||
| 🇧🇷 portugalski | `pt` | 🇷🇺 Rosyjski | `ru` |
|
| 🇧🇷 Portugalski | `pt` | 🇷🇺 Rosyjski | `ru` |
|
||||||
| 🇹🇷 Turecki | `tr` | 🇨🇳 chiński | `zh` |
|
| 🇹🇷 Turecki | `tr` | 🇨🇳 Chiński | `zh` |
|
||||||
|
|
||||||
### Tłumaczenia README
|
### Tłumaczenia README
|
||||||
|
|
||||||
| Język | Plik | Język | Plik |
|
| Język | Plik | Język | Plik |
|
||||||
|---------|------|----------|------|
|
|----------|------|----------|------|
|
||||||
| 🇺🇸 Angielski | [README.md](../README.md) | 🇪🇸 Hiszpański | [README.es.md](README.es.md)
|
| 🇺🇸 Angielski | [README.md](README.md) | 🇪🇸 Hiszpański | [README.es.md](README.es.md) |
|
||||||
| 🇸🇦 arabski | [README.ar.md](README.ar.md) | 🇫🇷 Francuski | [README.fr.md](README.fr.md) |
|
| 🇸🇦 Arabski | [README.ar.md](README.ar.md) | 🇫🇷 Francuski | [README.fr.md](README.fr.md) |
|
||||||
| 🇩🇪 niemiecki | [README.de.md](README.de.md) | 🇮🇳 hindi | [README.hi.md](README.hi.md) |
|
| 🇩🇪 Niemiecki | [README.de.md](README.de.md) | 🇮🇳 Hindi | [README.hi.md](README.hi.md) |
|
||||||
| 🇮🇩 Indonezyjski | [README.id.md](README.id.md) | 🇮🇹 włoski | [README.it.md](README.it.md) |
|
| 🇮🇩 Indonezyjski | [README.id.md](README.id.md) | 🇮🇹 Włoski | [README.it.md](README.it.md) |
|
||||||
| 🇯🇵 Japoński | [README.ja.md](README.ja.md) | 🇵🇱polski | [README.pl.md](README.pl.md) |
|
| 🇯🇵 Japoński | [README.ja.md](README.ja.md) | 🇵🇱 Polski | [README.pl.md](README.pl.md) |
|
||||||
| 🇧🇷 portugalski | [README.pt.md](README.pt.md) | 🇷🇺 Rosyjski | [README.ru.md](README.ru.md) |
|
| 🇧🇷 Portugalski | [README.pt.md](README.pt.md) | 🇷🇺 Rosyjski | [README.ru.md](README.ru.md) |
|
||||||
| 🇹🇷 Turecki | [README.tr.md](README.tr.md) | 🇨🇳 chiński | [README.zh.md](README.zh.md) |
|
| 🇹🇷 Turecki | [README.tr.md](README.tr.md) | 🇨🇳 Chiński | [README.zh.md](README.zh.md) |
|
||||||
|
|
||||||
> 💡 **Chcesz dodać tłumaczenie?** Sprawdź sekcję [Contributing](#contributing), aby pomóc nam dodać więcej języków!
|
> 💡 **Chcesz pomóc w tłumaczeniu?** Sprawdź sekcję [Współpraca](#współpraca), aby pomóc nam dodać więcej języków!
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<a id="troubleshooting"></a>
|
<a id="rozwiązywanie-problemów"></a>
|
||||||
## 🛠️ Rozwiązywanie problemów
|
## 🛠️ Rozwiązywanie problemów
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Kliknij, aby wyświetlić typowe problemy i rozwiązania</summary>
|
<summary>Kliknij, aby zobaczyć typowe problemy i rozwiązania</summary>
|
||||||
|
|
||||||
- **Tabela formatów nie wyświetla się:** Aktualizuj yt-dlp do najnowszej wersji i co wieczór przełączaj się na yt-dlp.
|
- **Tabela formatów nie pojawia się:** Zaktualizuj yt-dlp do najnowszej wersji i spróbuj przełączyć się na kanał yt-dlp Nightly.
|
||||||
- **Pobieranie nie powiodło się:** Sprawdź swoje połączenie internetowe i upewnij się, że plik wideo jest dostępny.
|
- **Pobieranie nie powiodło się:** Sprawdź połączenie z internetem i upewnij się, że wideo jest dostępne.
|
||||||
- **Specyficzne błędy pobierania:**
|
- **Konkretne błędy pobierania:**
|
||||||
- **Prywatne filmy:** Użyj uwierzytelniania plików cookie, aby uzyskać dostęp do prywatnych treści.
|
- **Prywatne wideo:** Użyj uwierzytelniania przez ciasteczka, aby uzyskać dostęp do prywatnych treści.
|
||||||
- **Treści z ograniczeniami wiekowymi:** Zaloguj się do konta YouTube, aby oglądać filmy z ograniczeniami wiekowymi.
|
- **Treści z ograniczeniem wiekowym:** Zaloguj się na swoje konto YouTube, aby wyświetlić filmy z ograniczeniem wiekowym.
|
||||||
- **Filmy z blokadą geograficzną:** rozważ użycie VPN w celu ominięcia ograniczeń regionalnych.
|
- **Wideo z blokadą regionalną:** Rozważ użycie VPN, aby obejść ograniczenia regionalne.
|
||||||
- **Usunięte/usunięte filmy:** Film nie jest już dostępny w serwisie YouTube.
|
- **Usunięte wideo:** Film nie jest już dostępny na YouTube.
|
||||||
- **Transmisje na żywo:** Transmisji na żywo nie można pobrać; poczekaj, aż strumień się zakończy.
|
- **Transmisje na żywo:** Transmisji na żywo nie można pobierać w trakcie ich trwania; poczekaj, aż transmisja się zakończy.
|
||||||
- **Błędy sieciowe:** Sprawdź swoje połączenie internetowe i spróbuj ponownie.
|
- **Błędy sieciowe:** Sprawdź połączenie z internetem i spróbuj ponownie.
|
||||||
- **Nieprawidłowe adresy URL:** Upewnij się, że adres URL jest poprawny i pochodzi z obsługiwanej platformy.
|
- **Nieprawidłowy URL:** Upewnij się, że adres URL jest poprawny i pochodzi z obsługiwanej platformy.
|
||||||
– **Treści premium:** wymaga członkostwa YouTube Premium.
|
- **Treść Premium:** Wymaga subskrypcji YouTube Premium.
|
||||||
- **Bloki dotyczące praw autorskich:** Treść jest blokowana ze względu na ograniczenia praw autorskich.
|
- **Blokada praw autorskich:** Treść jest zablokowana z powodu ograniczeń praw autorskich.
|
||||||
- **Oddziel pliki wideo i audio po pobraniu:** Dzieje się tak, gdy brakuje FFmpeg lub nie został on wykryty. YTSage wymaga FFmpeg do łączenia wysokiej jakości strumieni wideo i audio.
|
- **Pliki wideo i audio są oddzielne po pobraniu:** Dzieje się tak, gdy brakuje FFmpeg lub nie został on wykryty. YTSage wymaga FFmpeg do scalania strumieni wideo i audio wysokiej jakości.
|
||||||
- **Rozwiązanie:** Upewnij się, że FFmpeg jest zainstalowany i dostępny w PATH twojego systemu. Dla użytkowników systemu Windows najłatwiejszą opcją jest pobranie pliku `YTSage-v<version>-ffmpeg.exe`, który jest dostarczany w pakiecie z FFmpeg.
|
- **Rozwiązanie:** Upewnij się, że FFmpeg jest zainstalowany i dostępny w zmiennej PATH systemu. Dla użytkowników Windows najprostszą opcją jest pobranie pliku `YTSage-v<wersja>-ffmpeg.exe`, który zawiera FFmpeg.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
#### 🛡️ Ostrzeżenie o programie Windows Defender/antywirusie
|
#### 🛡️ Ostrzeżenie Windows Defender / Antywirus
|
||||||
|
|
||||||
Niektóre programy antywirusowe mogą oznaczać pliki `.exe` jako fałszywe alarmy. Jest to **znane ograniczenie** aplikacji w pakietach.
|
Niektóre programy antywirusowe mogą oznaczać pliki `.exe` jako fałszywe alarmy (false positive). Jest to **znane ograniczenie** pakowanych aplikacji.
|
||||||
|
|
||||||
**Dlaczego tak się dzieje:**
|
**Dlaczego tak się dzieje:**
|
||||||
- Heurystyka antywirusowa może błędnie zidentyfikować spakowane pliki wykonywalne jako podejrzane
|
- Heurystyka antywirusa może błędnie zidentyfikować spakowane pliki wykonywalne jako podejrzane.
|
||||||
|
|
||||||
**Bezpieczne alternatywy:**
|
**Bezpieczne alternatywy:**
|
||||||
- ✅ **Użyj instalacji pip:** `pip install ytsage` (zalecane)
|
- ✅ **Użyj instalacji przez pip:** `pip install ytsage` (zalecane)
|
||||||
- ✅ **Kompiluj ze źródła**: postępując zgodnie z tym [guide](../.github/CI_CD_README.md)
|
- ✅ **Zbuduj ze źródeł**: Postępując zgodnie z tym [przewodnikiem](.github/CI_CD_README.md)
|
||||||
- ✅ **Dodaj aplikację do białej listy** w swoim oprogramowaniu antywirusowym
|
- ✅ **Dodaj aplikację do wyjątków** w swoim programie antywirusowym.
|
||||||
|
|
||||||
#### 🍎 macOS: „Aplikacja jest uszkodzona i nie można jej otworzyć”
|
#### 🍎 macOS: "Aplikacja jest uszkodzona i nie można jej otworzyć"
|
||||||
Jeśli widzisz ten błąd w systemie macOS Sonoma lub nowszym, musisz usunąć atrybut kwarantanny.
|
Jeśli widzisz ten błąd w systemie macOS Sonoma lub nowszym, musisz usunąć atrybut kwarantanny.
|
||||||
|
|
||||||
1. **Otwórz Terminal** (możesz go znaleźć za pomocą Spotlight).
|
1. **Otwórz Terminal** (możesz go znaleźć przez Spotlight).
|
||||||
2. **Wpisz następujące polecenie**, ale **nie** jeszcze naciskaj Enter. Pamiętaj o dodaniu spacji na końcu:
|
2. **Wpisz następującą komendę**, ale jeszcze **NIE** naciskaj Enter. Pamiętaj o spacjach na końcu:
|
||||||
```bash
|
```bash
|
||||||
xattr -d com.apple.quarantine
|
xattr -d com.apple.quarantine
|
||||||
```
|
```
|
||||||
3. **Przeciągnij plik `YTSage.app`** z okna Findera i upuść go bezpośrednio w oknie Terminala. Spowoduje to automatyczne wklejenie prawidłowej ścieżki pliku.
|
3. **Przeciągnij plik `YTSage.app` z okna Findera** i upuść go bezpośrednio w oknie Terminala. To automatycznie wklei poprawną ścieżkę do pliku.
|
||||||
4. **Naciśnij Enter**, aby uruchomić polecenie.
|
4. **Naciśnij Enter**, aby uruchomić komendę.
|
||||||
5. **Spróbuj ponownie otworzyć YTSage.app.** Powinna teraz uruchomić się poprawnie.
|
5. **Spróbuj ponownie otworzyć YTSage.app.** Powinien uruchomić się poprawnie.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
#### **Lokacje konfiguracji (zaawansowane)**
|
#### **Lokalizacja konfiguracji (zaawansowane)**
|
||||||
- **Windows:** `%LOCALAPPDATA%\YTSage`
|
- **Windows:** `%LOCALAPPDATA%\YTSage`
|
||||||
- **macOS:** `~/Library/Application Support/YTSage`
|
- **macOS:** `~/Library/Application Support/YTSage`
|
||||||
- **Linux:** `~/.local/share/YTSage`
|
- **Linux:** `~/.local/share/YTSage`
|
||||||
@@ -432,102 +437,102 @@ Jeśli widzisz ten błąd w systemie macOS Sonoma lub nowszym, musisz usunąć a
|
|||||||
<a id="sponsor"></a>
|
<a id="sponsor"></a>
|
||||||
## 💖 Sponsor
|
## 💖 Sponsor
|
||||||
|
|
||||||
Jeśli YTSage pozwoli Ci zaoszczędzić czas, rozważ sponsorowanie projektu. Sponsoring pomaga pokryć czas opracowywania, testowania na różnych platformach i przyszłych ulepszeń.
|
Jeśli YTSage oszczędza Twój czas, rozważ wsparcie projektu. Sponsoring pomaga pokryć czas programistyczny, testy na wszystkich platformach i przyszłe ulepszenia.
|
||||||
|
|
||||||
- Sponsorzy GitHuba: https://github.com/sponsors/oop7
|
- GitHub Sponsors: https://github.com/sponsors/oop7
|
||||||
- Link sponsora jest również dostępny bezpośrednio w aplikacji, w oknie dialogowym Informacje.
|
- Link do wsparcia jest dostępny bezpośrednio przez okno "O programie" w aplikacji.
|
||||||
|
|
||||||
[](https://github.com/sponsors/oop7)
|
[](https://github.com/sponsors/oop7)
|
||||||
|
|
||||||
<a id="contributing"></a>
|
<a id="współpraca"></a>
|
||||||
## 👥 Wkład
|
## 👥 Współpraca
|
||||||
|
|
||||||
Zapraszamy do wpłat! Oto jak możesz pomóc:
|
Zapraszamy do współpracy! Oto jak możesz pomóc:
|
||||||
|
|
||||||
1. 🍴Rozwidl repozytorium
|
1. 🍴 Skonfiguruj fork repozytorium
|
||||||
2. 🌿 Utwórz gałąź funkcji:
|
2. 🌿 Utwórz gałąź (branch) dla swojej funkcji:
|
||||||
```bash
|
```bash
|
||||||
git checkout -b feature/AmazingFeature
|
git checkout -b feature/NiesamowitaFunkcja
|
||||||
```
|
```
|
||||||
3. 💾 Zatwierdź zmiany:
|
3. 💾 Zatwierdź zmiany (commit):
|
||||||
```bash
|
```bash
|
||||||
git commit -m 'Add some AmazingFeature'
|
git commit -m 'Dodaj NiesamowitaFunkcja'
|
||||||
```
|
```
|
||||||
4. 📤 Pchnij do oddziału:
|
4. 📤 Wyślij zmiany do gałęzi (push):
|
||||||
```bash
|
```bash
|
||||||
git push origin feature/AmazingFeature
|
git push origin feature/NiesamowitaFunkcja
|
||||||
```
|
```
|
||||||
5. 🔄 Otwórz żądanie ściągnięcia
|
5. 🔄 Otwórz Pull Request
|
||||||
|
|
||||||
### 🌍 Tłumaczenia wspierające
|
### 🌍 Pomóż w tłumaczeniach
|
||||||
|
|
||||||
- Zaktualizuj pasujący zlokalizowany plik README (na przykład `README.es.md`)
|
- Zaktualizuj odpowiedni lokalny plik README (np. `readme-translations/README.pl.md`)
|
||||||
- Synchronizuj ciągi aplikacji, edytując `ytsage/languages/<code>.json`
|
- Dbaj o synchronizację komunikatów aplikacji, edytując `ytsage/languages/<code>.json`
|
||||||
- Jeśli brakuje Twojego języka, zacznij od `README.md` i utwórz `README.<code>.md`
|
- Jeśli brakuje Twojego języka, zacznij od `README.md` i stwórz `README.<code>.md`
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>📂 Struktura projektu</summary>
|
<summary>📂 Struktura projektu</summary>
|
||||||
|
|
||||||
## YTSage – Struktura projektu
|
## YTSage - Struktura projektu
|
||||||
|
|
||||||
Ten dokument opisuje zorganizowaną strukturę folderów YTSage.
|
Ten dokument opisuje zorganizowaną strukturę folderów projektu YTSage.
|
||||||
|
|
||||||
### 📁 Struktura projektu
|
### 📁 Struktura projektu
|
||||||
|
|
||||||
```
|
```
|
||||||
YTSage/
|
YTSage/
|
||||||
├── 📁 .github/ # GitHub configuration
|
├── 📁 .github/ # Konfiguracja GitHub
|
||||||
│ ├── 📁 ISSUE_TEMPLATE/ # Issue templates
|
│ ├── 📁 ISSUE_TEMPLATE/ # Szablony zgłoszeń
|
||||||
│ │ └── 🐛-bug-report.md # Bug report template
|
│ │ └── 🐛-bug-report.md # Szablon zgłoszenia błędu
|
||||||
│ ├─── 📁 workflows/ # GitHub Actions workflows
|
│ ├─── 📁 workflows/ # Procesy GitHub Actions
|
||||||
│ │ ├── build-linux.yml # Linux build workflow
|
│ │ ├── build-linux.yml # Proces budowania dla Linux
|
||||||
│ │ ├── build-macos.yml # macOS build workflow
|
│ │ ├── build-macos.yml # Proces budowania dla macOS
|
||||||
│ │ │── build-windows.yml # Windows build workflow
|
│ │ │── build-windows.yml # Proces budowania dla Windows
|
||||||
| | └── release-all.yml # Master release workflow
|
| | └── release-all.yml # Proces głównego wydania
|
||||||
│ └── 📄 CI_CD_README.md # CI/CD documentation
|
│ └── 📄 CI_CD_README.md # Dokumentacja CI/CD
|
||||||
├── 📁 branding/ # Branding assets (Screenshots, SVGs)
|
├── 📁 branding/ # Materiały graficzne (zrzuty ekranu, SVG)
|
||||||
│ ├── 📁 icons/ # Application icons
|
│ ├── 📁 icons/ # Ikony aplikacji
|
||||||
│ ├── 📁 screenshots/ # Screenshots for documentation
|
│ ├── 📁 screenshots/ # Zrzuty ekranu do dokumentacji
|
||||||
│ └── 📁 svg/ # SVG assets
|
│ └── 📁 svg/ # Zasoby SVG
|
||||||
├── 📄 LICENSE # License file
|
├── 📄 LICENSE # Plik licencji
|
||||||
├── 📄 pyproject.toml # Project metadata and dependencies
|
├── 📄 pyproject.toml # Metadane projektu i zależności
|
||||||
├── 📄 README.md # Project documentation
|
├── 📄 README.md # Dokumentacja projektu
|
||||||
├── 📄 requirements.txt # Python dependencies (dev)
|
├── 📄 requirements.txt # Zależności Python (dev)
|
||||||
└── 📁 ytsage/ # Source package
|
└── 📁 ytsage/ # Pakiet kodu źródłowego
|
||||||
├── 📁 assets/ # Runtime assets
|
├── 📁 assets/ # Zasoby czasu wykonywania
|
||||||
│ ├── 📁 Icon/ # Application icons
|
│ ├── 📁 Icon/ # Ikony aplikacji
|
||||||
│ └── 📁 sound/ # Audio files
|
│ └── 📁 sound/ # Pliki dźwiękowe
|
||||||
├── 📁 languages/ # Localization files
|
├── 📁 languages/ # Pliki lokalizacji
|
||||||
│ ├── 📄 ar.json # Arabic translation
|
│ ├── 📄 ar.json # Tłumaczenie arabskie
|
||||||
│ ├── 📄 de.json # German translation
|
│ ├── 📄 de.json # Tłumaczenie niemieckie
|
||||||
│ ├── 📄 en.json # English translation
|
│ ├── 📄 en.json # Tłumaczenie angielskie
|
||||||
│ └── ... # Other languages
|
│ └── ... # Inne języki
|
||||||
├── 📁 core/ # Core business logic
|
├── 📁 core/ # Główna logika biznesowa
|
||||||
│ ├── 📄 __init__.py # Core package init
|
│ ├── 📄 __init__.py
|
||||||
│ ├── 📄 ytsage_deno.py # Deno integration
|
│ ├── 📄 ytsage_deno.py # Integracja Deno
|
||||||
│ ├── 📄 ytsage_downloader.py # Download functionality
|
│ ├── 📄 ytsage_downloader.py # Funkcjonalność pobierania
|
||||||
│ ├── 📄 ytsage_ffmpeg.py # FFmpeg integration
|
│ ├── 📄 ytsage_ffmpeg.py # Integracja FFmpeg
|
||||||
│ ├── 📄 ytsage_utils.py # Utility functions
|
│ ├── 📄 ytsage_utils.py # Funkcje pomocnicze
|
||||||
│ └── 📄 ytsage_yt_dlp.py # yt-dlp integration
|
│ └── 📄 ytsage_yt_dlp.py # Integrasi yt-dlp
|
||||||
├── 📁 gui/ # User interface components
|
├── 📁 gui/ # Komponenty interfejsu użytkownika
|
||||||
│ ├── 📄 __init__.py # GUI package init
|
│ ├── 📄 __init__.py
|
||||||
│ ├── 📄 ytsage_gui_main.py # Main application window
|
│ ├── 📄 ytsage_gui_main.py # Główne okno aplikacji
|
||||||
│ └── 📁 ytsage_gui_dialogs/ # Dialog classes
|
│ └── 📁 ytsage_gui_dialogs/ # Klasy okien dialogowych
|
||||||
├── 📁 utils/ # Utility modules
|
├── 📁 utils/ # Moduły pomocnicze
|
||||||
│ ├── 📄 __init__.py # Utils package init
|
│ ├── 📄 __init__.py
|
||||||
│ ├── 📄 ytsage_config_manager.py # Configuration management
|
│ ├── 📄 ytsage_config_manager.py # Zarządzanie konfiguracją
|
||||||
│ └── 📄 ytsage_logger.py # Logging utilities
|
│ └── 📄 ytsage_logger.py # Narzędzia logowania
|
||||||
├── 📄 __init__.py # Package entry point
|
├── 📄 __init__.py # Punkt wejścia pakietu
|
||||||
└── 📄 main.py # Main execution script
|
└── 📄 main.py # Główny skrypt wykonawczy
|
||||||
```
|
```
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
## ⭐️ Historia gwiazd
|
## ⭐️ Historia gwiazdek
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
## Historia gwiazd
|
## Star History
|
||||||
|
|
||||||
<a href="https://www.star-history.com/#oop7/YTSage&Date">
|
<a href="https://www.star-history.com/#oop7/YTSage&Date">
|
||||||
<picture>
|
<picture>
|
||||||
@@ -539,9 +544,9 @@ YTSage/
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
## 📜Licencja
|
## 📜 Licencja
|
||||||
|
|
||||||
Ten projekt jest objęty licencją MIT — szczegółowe informacje można znaleźć w pliku [LICENSE](../LICENSE).
|
Ten projekt jest udostępniany na licencji MIT - zobacz plik [LICENSE](LICENSE), aby poznać szczegóły.
|
||||||
|
|
||||||
## 🙏 Podziękowania
|
## 🙏 Podziękowania
|
||||||
|
|
||||||
@@ -550,54 +555,55 @@ Ten projekt jest objęty licencją MIT — szczegółowe informacje można znale
|
|||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
<p>Serdecznie dziękujemy wszystkim, którzy przyczynili się do tego projektu, otwierając problem, aby zasugerować ulepszenie lub zgłosić błąd.</p>
|
<p>Wielkie podziękowania dla wszystkich, którzy przyczynili się do rozwoju projektu poprzez zgłaszanie sugestii i błędów.</p>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
<tr class="section"><th colspan="2">Główne komponenty</th></tr>
|
<tr class="section"><th colspan="2">Główne komponenty</th></tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width="35%"><a href="https://github.com/yt-dlp/yt-dlp">yt-dlp</a></td>
|
<td width="35%"><a href="https://github.com/yt-dlp/yt-dlp">yt-dlp</a></td>
|
||||||
<td>Pobierz silnik</td>
|
<td>Silnik pobierania</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://ffmpeg.org/">FFmpeg</a></td>
|
<td><a href="https://ffmpeg.org/">FFmpeg</a></td>
|
||||||
<td>Przetwarzanie multimediów</td>
|
<td>Przetwarzanie mediów</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://deno.com/">Deno</a></td>
|
<td><a href="https://deno.com/">Deno</a></td>
|
||||||
<td>Środowisko wykonawcze do integracji z yt-dlp</td>
|
<td>Środowisko dla integracji yt-dlp</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="section"><th colspan="2">Biblioteki i struktury</th></tr>
|
<tr class="section"><th colspan="2">Biblioteki i frameworki</th></tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://wiki.qt.io/Qt_for_Python">PySide6</a></td>
|
<td><a href="https://wiki.qt.io/Qt_for_Python">PySide6</a></td>
|
||||||
<td>Struktura GUI</td>
|
<td>Framework GUI</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://python-pillow.org/">Poduszka</a></td>
|
<td><a href="https://python-pillow.org/">Pillow</a></td>
|
||||||
<td>Przetwarzanie obrazu</td>
|
<td>Przetwarzanie obrazów</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr><td><a href="https://requests.readthedocs.io/">żądania</a></td>
|
<tr>
|
||||||
|
<td><a href="https://requests.readthedocs.io/">requests</a></td>
|
||||||
<td>Żądania HTTP</td>
|
<td>Żądania HTTP</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://packaging.python.org/">opakowanie</a></td>
|
<td><a href="https://packaging.python.org/">packaging</a></td>
|
||||||
<td>Obsługa wersji i pakietów</td>
|
<td>Zarządzanie wersjami i pakowanie</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://python-markdown.github.io/">przecena</a></td>
|
<td><a href="https://python-markdown.github.io/">markdown</a></td>
|
||||||
<td>Renderowanie Markdown</td>
|
<td>Renderowanie Markdown</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://github.com/Delgan/loguru">loguru</a></td>
|
<td><a href="https://github.com/Delgan/loguru">loguru</a></td>
|
||||||
<td>Logowanie</td>
|
<td>Logowanie</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="section"><th colspan="2">Zasoby i współtwórcy</th></tr>
|
<tr class="section"><th colspan="2">Zasoby i współpracownicy</th></tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://pixabay.com/sound-effects/new-notification-09-352705/">Nowe powiadomienie 09 od Universfield</a></td>
|
<td><a href="https://pixabay.com/sound-effects/new-notification-09-352705/">New Notification 09 by Universfield</a></td>
|
||||||
<td>Dźwięk powiadomienia</td>
|
<td>Dźwięk powiadomienia</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://github.com/viru185">viru185</a></td>
|
<td><a href="https://github.com/viru185">viru185</a></td>
|
||||||
<td>Współtwórca kodu</td>
|
<td>Współpracownik kodu</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
@@ -607,12 +613,12 @@ Ten projekt jest objęty licencją MIT — szczegółowe informacje można znale
|
|||||||
|
|
||||||
## ⚠️ Zastrzeżenie
|
## ⚠️ Zastrzeżenie
|
||||||
|
|
||||||
To narzędzie jest przeznaczone wyłącznie do użytku osobistego. Prosimy o przestrzeganie warunków korzystania z usługi YouTube i praw twórców treści.
|
To narzędzie służy wyłącznie do użytku osobistego. Prosimy o przestrzeganie Warunków świadczenia usług YouTube i praw twórców treści.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
Wykonane z ❤️ przez [oop7](https://github.com/oop7)
|
Stworzone z ❤️ przez [oop7](https://github.com/oop7)
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
+263
-257
@@ -12,81 +12,82 @@
|
|||||||
[](https://pypi.org/project/ytsage/)
|
[](https://pypi.org/project/ytsage/)
|
||||||
[](https://github.com/sponsors/oop7)
|
[](https://github.com/sponsors/oop7)
|
||||||
|
|
||||||
**Um downloader moderno do YouTube com uma interface PySide6 limpa.**
|
**Um downloader de YouTube moderno com uma interface PySide6 limpa.**
|
||||||
Baixe vídeos em qualquer qualidade, extraia áudio, busque legendas e muito mais.
|
Baixe vídeos em qualquer qualidade, extraia áudio, obtenha legendas e muito mais.
|
||||||
|
|
||||||
### 🌍 LEIA-ME Idiomas
|
### 🌍 Idiomas do README
|
||||||
|
|
||||||
Inglês: [EN](../README.md)
|
Inglês: [EN](../README.md)
|
||||||
| Nome: [AR](README.ar.md)
|
| Árabe: [AR](README.ar.md)
|
||||||
| Alemão: [DE](README.de.md)
|
| Alemão: [DE](README.de.md)
|
||||||
| Espanhol: [ES](README.es.md)
|
| Espanhol: [ES](README.es.md)
|
||||||
| Francês: [FR](README.fr.md)
|
| Francês: [FR](README.fr.md)
|
||||||
| Nome: [HI](README.hi.md)
|
| Hindi: [HI](README.hi.md)
|
||||||
| Bahasa Indonésia: [ID](README.id.md)
|
| Indonésio: [ID](README.id.md)
|
||||||
| Italiano: [IT](README.it.md)
|
| Italiano: [IT](README.it.md)
|
||||||
| Nome do usuário: [JA](README.ja.md)
|
| Japonês: [JA](README.ja.md)
|
||||||
| Polaco: [PL](README.pl.md)
|
| Polonês: [PL](README.pl.md)
|
||||||
| Português: [PT](README.pt.md)
|
| Português: [PT](README.pt.md)
|
||||||
| Russo: [RU](README.ru.md)
|
| Russo: [RU](README.ru.md)
|
||||||
| Turco: [TR](README.tr.md)
|
| Turco: [TR](README.tr.md)
|
||||||
| 中文: [ZH](README.zh.md)
|
| Chinês: [ZH](README.zh.md)
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<a href="#installation">Instalação</a> •
|
<a href="#instalação">Instalação</a> •
|
||||||
<a href="#features">Recursos</a> •
|
<a href="#funcionalidades">Funcionalidades</a> •
|
||||||
<a href="#usage">Uso</a> •
|
<a href="#uso">Uso</a> •
|
||||||
<a href="#screenshots">Capturas de tela</a> •
|
<a href="#capturas-de-tela">Capturas de Tela</a> •
|
||||||
<a href="#troubleshooting">Solução de problemas</a> •
|
<a href="#solução-de-problemas">Solução de Problemas</a> •
|
||||||
<a href="#sponsor">Patrocinador</a> •
|
<a href="#patrocinar">Patrocinar</a> •
|
||||||
<a href="#contributing">Contribuindo</a>
|
<a href="#contribuindo">Contribuindo</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<a id="why-ytsage"></a>
|
<a id="por-que-ytsage"></a>
|
||||||
## ❓ Por que YTSage?
|
## ❓ Por que YTSage?
|
||||||
|
|
||||||
YTSage foi projetado para usuários que desejam um **baixador de YouTube simples, mas poderoso**. Ao contrário de outras ferramentas, oferece:
|
O YTSage foi projetado para usuários que desejam um **downloader de YouTube simples, mas poderoso**. Ao contrário de outras ferramentas, ele oferece:
|
||||||
|
|
||||||
- Uma interface PySide6 limpa e moderna
|
- Uma interface PySide6 moderna e limpa
|
||||||
- Downloads com um clique para vídeo, áudio e legendas
|
- Download de vídeo, áudio e legendas com um clique
|
||||||
- Recursos avançados como SponsorBlock, mesclagem de legendas e seleção de playlist
|
- Recursos avançados como SponsorBlock, mesclagem de legendas e seleção de playlist
|
||||||
- Modo genérico opcional para sites compatíveis com yt-dlp além do YouTube
|
- Modo Genérico opcional para sites além do YouTube suportados pelo yt-dlp
|
||||||
- Suporte multiplataforma e fácil instalação
|
- Suporte multiplataforma e instalação fácil
|
||||||
|
|
||||||
<a id="features"></a>
|
<a id="funcionalidades"></a>
|
||||||
## ✨ Recursos
|
## ✨ Funcionalidades
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
| Recursos principais | Recursos Avançados | Recursos extras |
|
| Recursos Básicos | Recursos Avançados | Recursos Extras |
|
||||||
|-----------------------------------|---------------------------------------------------|-----------------------------------|
|
|-----------------------------------|-----------------------------------------|------------------------------------|
|
||||||
| 🎥 Tabela de Formatos | 🚫 Integração SponsorBlock | 🎞️ Tela FPS/HDR |
|
| 🎥 Tabela de Formatos | 🚫 Integração SponsorBlock | 🎞️ Exibição de FPS/HDR |
|
||||||
| 🎵 Extração de Áudio | 📝 Seleção e mesclagem de múltiplas legendas | 🔄 Atualização automática do yt-dlp |
|
| 🎵 Extração de Áudio | 📝 Seleção e Mesclagem de Legendas | 🔄 Atualização Automática do yt-dlp |
|
||||||
| ✨ UI simples | 💾 Salvar descrição e miniatura | 🛠️ Detecção de FFmpeg/yt-dlp/Deno |
|
| ✨ Interface de Usuário Simples | 💾 Salvar Descrição e Miniatura | 🛠️ Detecção de FFmpeg/yt-dlp/Deno |
|
||||||
| 📋 Suporte e seletor de lista de reprodução | 🚀 Limitador de velocidade | ⚙️ Comandos personalizados |
|
| 📋 Suporte e Seletor de Playlist | 🚀 Limitador de Velocidade | ⚙️ Comandos Personalizados |
|
||||||
| 📑 Incorporar capítulos | ✂️ Cortar seções de vídeo | 🍪 Login com Cookies |
|
| 📑 Integração de Capítulos | ✂️ Cortar Seções de Vídeo | 🍪 Login por Cookies |
|
||||||
| 📜 Histórico de downloads | 🔄 Seleção de canal de lançamento | 🌐 Suporte a proxy |
|
| 📜 Histórico de Downloads | 🔄 Escolha do Canal de Lançamento | 🌐 Suporte a Proxy |
|
||||||
| 🎚️ Conversão de formato de áudio | 🎬 Configurações de formato de vídeo | 🆙 Guia Atualizador integrado |
|
| 🎚️ Conversão de Formato de Áudio | 🎬 Configurações de Formato de Vídeo | 🆙 Aba de Atualização Integrada |
|
||||||
| 🌍 Modo Genérico | 🔊 Normalização de Áudio (EBU R128) | 🌍 Localização em 14 idiomas |
|
| 🌍 Modo Genérico | 🔊 Normalização de Áudio (EBU R128) | 🌍 Localização em 14 idiomas |
|
||||||
|
| 💾 Exportação de Playlist | ⚙️ Qualidade e Legendas Padrão | |
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<a id="installation"></a>
|
<a id="instalação"></a>
|
||||||
## 🚀 Instalação
|
## 🚀 Instalação
|
||||||
|
|
||||||
### ⚡ Instalação rápida (recomendado)
|
### ⚡ Instalação Rápida (Recomendada)
|
||||||
|
|
||||||
Instale YTSage do PyPI:
|
Instale o YTSage via PyPI:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip install ytsage
|
pip install ytsage
|
||||||
```
|
```
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🔄 Atualizar uma instalação existente</summary>
|
<summary>🔄 Atualizar Instalação Existente</summary>
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip install --upgrade ytsage
|
pip install --upgrade ytsage
|
||||||
@@ -94,49 +95,49 @@ pip install --upgrade ytsage
|
|||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
Em seguida, inicie o aplicativo:
|
Em seguida, execute o aplicativo:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
ytsage
|
ytsage
|
||||||
```
|
```
|
||||||
|
|
||||||
### 📦 Executáveis pré-construídos
|
### 📦 Executáveis Pré-compilados (Executable)
|
||||||
|
|
||||||
> [👉 Download Latest Release](https://github.com/oop7/YTSage/releases/latest)
|
> [👉 Baixar Lançamento Mais Recente](https://github.com/oop7/YTSage/releases/latest)
|
||||||
|
|
||||||
#### 🪟 Janelas
|
#### 🪟 Windows
|
||||||
|
|
||||||
| Formato | Descrição |
|
| Formato | Descrição |
|
||||||
|--------|------------|
|
|--------|-------------|
|
||||||
|  | Instalador padrão |
|
|  | Instalador Padrão |
|
||||||
|  | Com FFmpeg incluído |
|
|  | Com FFmpeg incluído |
|
||||||
|  | Versão portátil, sem necessidade de instalação |
|
|  | Versão Portátil, sem necessidade de instalação |
|
||||||
|  | Portátil com FFmpeg, compactado |
|
|  | Portátil com FFmpeg, compactado (ZIP) |
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🛠️ Etapas de instalação</summary>
|
<summary>🛠️ Passos para Instalação</summary>
|
||||||
|
|
||||||
1. **EXE Installer (`.exe`)**: Clique duas vezes no arquivo e siga o assistente de configuração.
|
1. **Instalador EXE (`.exe`)**: Clique duas vezes no arquivo e siga o assistente de configuração.
|
||||||
2. **Versão portátil (`.zip`)**: Extraia o arquivo para o local desejado e execute `ytsage.exe`.
|
2. **Versão Portátil (`.zip`)**: Extraia o arquivo para o local desejado e execute `ytsage.exe`.
|
||||||
3. **FFmpeg Bundled**: Escolha as versões empacotadas do FFmpeg se você não tiver o FFmpeg instalado em seu sistema.
|
3. **FFmpeg Integrado**: Se você não possui o FFmpeg instalado no sistema, escolha as versões com FFmpeg integrado.
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
#### 🐧Linux
|
#### 🐧 Linux
|
||||||
|
|
||||||
| Formato | Descrição |
|
| Formato | Descrição |
|
||||||
|--------|------------|
|
|--------|-------------|
|
||||||
|  | Pacote Debian |
|
|  | Pacote Debian |
|
||||||
|  | AppImage, portátil |
|
|  | AppImage, Portátil |
|
||||||
|  | Pacote RPM |
|
|  | Pacote RPM |
|
||||||
|  | Pacote Flatpak |
|
|  | Pacote Flatpak |
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🛠️ Etapas de instalação</summary>
|
<summary>🛠️ Passos para Instalação</summary>
|
||||||
|
|
||||||
- **DEB (`.deb`)**:
|
- **DEB (`.deb`)**:
|
||||||
```bash
|
```bash
|
||||||
sudo dpkg -i ytsage_*.deb
|
sudo dpkg -i ytsage_*.deb
|
||||||
sudo apt-get install -f # Fix missing dependencies if any
|
sudo apt-get install -f # Se necessário para corrigir dependências ausentes
|
||||||
```
|
```
|
||||||
- **RPM (`.rpm`)**:
|
- **RPM (`.rpm`)**:
|
||||||
```bash
|
```bash
|
||||||
@@ -156,34 +157,34 @@ ytsage
|
|||||||
#### 🍎 macOS
|
#### 🍎 macOS
|
||||||
|
|
||||||
| Formato | Descrição |
|
| Formato | Descrição |
|
||||||
|--------|------------|
|
|--------|-------------|
|
||||||
|  | Aplicativo compactado para Apple Silicon |
|
|  | Aplicativo ZIP para Apple Silicon |
|
||||||
|  | Instalador de imagem de disco para Apple Silicon |
|
|  | Instalador Disk Image para Apple Silicon |
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🛠️ Etapas de instalação</summary>
|
<summary>🛠️ Passos para Instalação</summary>
|
||||||
|
|
||||||
- **Instalador DMG (`.dmg`)**: Clique duas vezes para montar e arraste `YTSage.app` para a pasta Aplicativos.
|
- **Instalador DMG (`.dmg`)**: Clique duas vezes para montar e arraste `YTSage.app` para a sua pasta Aplicativos.
|
||||||
- **Arquivo de aplicativos (`.zip`)**: Extraia o zip e mova `YTSage.app` para a pasta Aplicativos.
|
- **Arquivo do Aplicativo (`.zip`)**: Extraia o ZIP e mova `YTSage.app` para a sua pasta Aplicativos.
|
||||||
|
|
||||||
*Observação: se você encontrar um erro "O aplicativo está danificado", consulte [macOS troubleshooting section](#troubleshooting) abaixo.*
|
*Nota: Se você receber o erro "App está danificado", veja a seção de Problemos no macOS abaixo.*
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>💻 Instalação manual da fonte</summary>
|
<summary>💻 Instalação Manual a partir do Código-Fonte</summary>
|
||||||
|
|
||||||
### 1. Clone o repositório
|
### 1. Clonar o Repositório
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/oop7/YTSage.git
|
git clone https://github.com/oop7/YTSage.git
|
||||||
cd YTSage
|
cd YTSage
|
||||||
```
|
```
|
||||||
|
|
||||||
### 2. Instalar dependências
|
### 2. Instalar Dependências
|
||||||
|
|
||||||
#### ⚡ Com UV
|
#### ⚡ Com uv
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
uv pip install .
|
uv pip install .
|
||||||
@@ -195,7 +196,7 @@ uv pip install .
|
|||||||
pip install .
|
pip install .
|
||||||
```
|
```
|
||||||
|
|
||||||
### 3. Execute o aplicativo
|
### 3. Executar o Aplicativo
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python -m ytsage.main
|
python -m ytsage.main
|
||||||
@@ -203,147 +204,151 @@ python -m ytsage.main
|
|||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<a id="screenshots"></a>
|
<a id="capturas-de-tela"></a>
|
||||||
## 📸 Capturas de tela
|
## 📸 Capturas de Tela
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td><img src="../branding/screenshots/Download-Settings.png" alt="Download Settings" width="400"/></td>
|
<td><img src="../branding/screenshots/Download-Settings.png" alt="Configurações de Download" width="400"/></td>
|
||||||
<td><img src="../branding/screenshots/playlist.png" alt="Playlist Download" width="400"/></td>
|
<td><img src="../branding/screenshots/playlist.png" alt="Download de Playlist" width="400"/></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center"><em>Configurações de download</em></td>
|
<td align="center"><em>Configurações de Download</em></td>
|
||||||
<td align="center"><em>Baixar lista de reprodução</em></td>
|
<td align="center"><em>Download de Playlist</em></td>
|
||||||
</tr>
|
</tr>
|
||||||
<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/audio_format.png" alt="Seleção de Formato de Áudio" width="400"/></td>
|
||||||
<td><img src="../branding/screenshots/Custom-Option.png" alt="Custom Options" width="400"/></td>
|
<td><img src="../branding/screenshots/Custom-Option.png" alt="Opções Personalizadas" width="400"/></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center"><em>Formato de áudio</em></td>
|
<td align="center"><em>Formato de Áudio</em></td>
|
||||||
<td align="center"><em>Opções personalizadas</em></td>
|
<td align="center"><em>Opções Personalizadas</em></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div><a id="usage"></a>
|
</div>
|
||||||
|
|
||||||
|
<a id="uso"></a>
|
||||||
## 📖 Uso
|
## 📖 Uso
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🎯 Uso Básico</summary>
|
<summary>🎯 Uso Básico</summary>
|
||||||
|
|
||||||
1. **Inicie o YTSage**
|
1. **Inicie o YTSage**
|
||||||
2. **Colar URL do YouTube** (ou usar o botão "Colar URL")
|
2. **Cole uma URL do YouTube** (ou use o botão "Paste URL")
|
||||||
3. **Clique em "Analisar"**
|
3. **Clique em "Analyze"**
|
||||||
4. **Selecione Formato:**
|
4. **Escolha o Formato:**
|
||||||
- `Video` para downloads de vídeos
|
- `Video` para download de vídeo
|
||||||
- `Audio Only` para extração de áudio
|
- `Audio Only` para extração de áudio
|
||||||
5. **Escolha Opções:**
|
5. **Selecione Opções:**
|
||||||
- Ative legendas e selecione o idioma
|
- Habilite legendas e escolha o idioma
|
||||||
- Ativar mesclagem de legendas
|
- Habilite a mesclagem de legendas
|
||||||
- Salvar miniatura
|
- Salvar miniatura
|
||||||
- Remover segmentos de patrocinadores
|
- Remover seções de patrocinadores
|
||||||
- Salvar descrição
|
- Salvar descrição
|
||||||
- Incorporar capítulos
|
- Incorporar capítulos
|
||||||
6. **Selecione Diretório de Saída**
|
6. **Escolha o Diretório de Saída**
|
||||||
7. **Clique em "Baixar"**
|
7. **Clique em "Download"**
|
||||||
|
|
||||||
> 💡 O diretório de download padrão é a pasta "Downloads" do usuário.
|
> 💡 O diretório de download padrão é a pasta "Downloads" do usuário.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>📋 Baixar lista de reprodução</summary>
|
<summary>📋 Download de Playlist</summary>
|
||||||
|
|
||||||
1. **Colar URL da lista de reprodução**
|
1. **Cole a URL da Playlist**
|
||||||
2. **Clique em "Analisar"**
|
2. **Clique em "Analyze"**
|
||||||
3. **Selecione vídeos no seletor de playlist (opcional, o padrão é todos)**
|
3. **Selecione vídeos do seletor (opcional, padrão todos)**
|
||||||
4. **Escolha o formato/qualidade desejado**
|
4. **Escolha o formato/qualidade desejado**
|
||||||
5. **Clique em "Baixar"**
|
5. **Clique em "Download"**
|
||||||
|
|
||||||
> 💡 O aplicativo gerencia automaticamente a fila de download
|
> 💡 O aplicativo gerencia automaticamente a fila de download, e você pode exportar as entradas da playlist como arquivos `.txt`, `.csv`, `.m3u` ou `.json`.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🌍 Modo genérico para sites que não são do YouTube</summary>
|
<summary>🌍 Modo Genérico para Sites além do YouTube</summary>
|
||||||
|
|
||||||
Use o modo genérico quando quiser que o YTSage aceite URLs de sites suportados pelo yt-dlp, como Dailymotion, CBC Gem, TikTok e outros.
|
Use o Modo Genérico quando quiser que o YTSage aceite URLs de sites suportados pelo yt-dlp, como Dailymotion, CBC Gem, TikTok e outros.
|
||||||
|
|
||||||
Como usar:
|
Como usar:
|
||||||
|
|
||||||
1. Abra `Download Settings`.
|
1. Abra `Download Settings`.
|
||||||
2. Ative `Generic Mode`.
|
2. Habilite `Generic Mode`.
|
||||||
3. Cole um URL de vídeo ou lista de reprodução compatível que não seja do YouTube.
|
3. Cole uma URL de vídeo ou playlist suportada que não seja do YouTube.
|
||||||
4. Clique em `Analyze`.
|
4. Clique em `Analyze`.
|
||||||
5. Escolha um formato e baixe normalmente.
|
5. Escolha um formato e baixe normalmente.
|
||||||
|
|
||||||
Notas:
|
Notas:
|
||||||
|
|
||||||
- O Modo Genérico altera apenas a validação de URL dentro do YTSage. O site de destino ainda deve ser compatível com a versão yt-dlp instalada.
|
- O Modo Genérico apenas altera a validação da URL dentro do YTSage. O site de destino ainda deve ser suportado pela sua versão instalada do yt-dlp.
|
||||||
- Alguns sites exigem cookies, uma sessão de login, um proxy ou argumentos yt-dlp extras, dependendo do extrator.
|
- Alguns sites exigem cookies, login, proxy ou argumentos adicionais do yt-dlp, dependendo do extrator.
|
||||||
- Se um site falhar, atualize o yt-dlp primeiro na guia do atualizador integrado antes de relatar o problema.
|
- Se um site falhar, atualize o yt-dlp na aba de atualização integrada antes de relatar o problema.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🧰 Opções de mídia e download</summary>
|
<summary>🧰 Opções de Mídia e Download</summary>
|
||||||
|
|
||||||
- **Opções de legenda:** Filtre idiomas e incorpore legendas no arquivo de vídeo
|
- **Opções de Legendas:** Filtre idiomas e incorpore legendas no arquivo de vídeo.
|
||||||
- **Mesclagem de legendas:** Mesclar legendas no arquivo de vídeo para legendas codificadas
|
- **Mesclagem de Legendas:** Mescla legendas no arquivo de vídeo para legendas fixas (hardcoded).
|
||||||
- **Salvar descrição:** Salve a descrição do vídeo como um arquivo de texto
|
- **Salvar Descrição:** Salva a descrição do vídeo como um arquivo de texto.
|
||||||
- **Salvar miniatura:** Salve a miniatura do vídeo como um arquivo de imagem
|
- **Salvar Miniatura:** Salva a miniatura do vídeo como um arquivo de imagem.
|
||||||
- **Incorporar capítulos:** Incorpore marcadores de capítulo como metadados para players de vídeo compatíveis
|
- **Incorporar Capítulos:** Inclui marcadores de capítulo como metadados para players de vídeo compatíveis.
|
||||||
- **Remover segmentos de patrocinadores:** Remova segmentos de patrocinadores do vídeo usando SponsorBlock
|
- **Remover Seções de Patrocinadores:** Usa o SponsorBlock para remover segmentos patrocinados do vídeo.
|
||||||
- **Cortar vídeo:** baixe apenas partes específicas de um vídeo especificando intervalos de tempo no formato `HH:MM:SS`
|
- **Cortar Vídeo:** Baixe apenas partes específicas do vídeo, especificando o intervalo de tempo no formato `HH:MM:SS`.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>⚙️ Configurações de saída e arquivo</summary>
|
<summary>⚙️ Configurações de Saída e Arquivos</summary>
|
||||||
|
|
||||||
|
- **Limitador de Velocidade:** Limite a velocidade de download, por exemplo, `500K` para 500 KB/s.
|
||||||
|
- **Salvar Caminho de Download:** Salva o caminho de download padrão para downloads futuros. Disponível em **Download Settings → Download Path**.
|
||||||
|
- **Resolução de Vídeo Padrão:** Defina sua resolução de vídeo preferida para seleção automática (ex: 1080p, 720p). Disponível em **Download Settings → Default Video Resolution**.
|
||||||
|
- **Idiomas de Legendas Padrão:** Defina idiomas de legendas padrão para seleção automática (separados por vírgula, ex: `pt,en`). Disponível em **Download Settings → Default Subtitle Languages**.
|
||||||
|
- **Formato de Nome de Arquivo:** Personalize o formato do nome do arquivo de saída usando variáveis como `%(title)s`, `%(uploader)s`, `%(playlist_index)s` e `%(resolution)s`. Disponível em **Download Settings → Filename Format**.
|
||||||
|
- **Forçar Formato de Saída:** Força o download do vídeo em um formato de contêiner específico, como `mp4`, `webm` ou `mkv`. Disponível em **Download Settings → Output Format Settings**.
|
||||||
|
- **Conversão de Formato de Áudio:** Converta downloads de apenas áudio para formatos preferidos como `AAC`, `MP3`, `FLAC`, `WAV`, `Opus`, `M4A`, `Vorbis`, ou `Best`. Disponível em **Download Settings → Audio Format Settings**.
|
||||||
|
- **Normalização de Áudio:** Padroniza o volume para downloads de apenas áudio usando EBU R128.
|
||||||
|
- **Conexões Simultâneas:** Aumente significativamente a velocidade de download baixando arquivos em várias partes ao mesmo tempo. Disponível em **Download Settings → General → Concurrent Connections** (padrão 1, máximo 8-10 recomendado para evitar bloqueios de IP).
|
||||||
|
|
||||||
- **Limitador de velocidade:** Limite a velocidade de download, por exemplo `500K` para 500 KB/s
|
|
||||||
- **Salvar caminho de download:** Salve o caminho de download padrão para downloads futuros. Disponível em **Configurações de download → Caminho de download**.
|
|
||||||
- **Formato do nome do arquivo de saída:** Personalize o formato do nome do arquivo de saída usando variáveis como `%(title)s`, `%(uploader)s` e `%(resolution)s`. Disponível em **Configurações de download → Formato do nome do arquivo**.
|
|
||||||
- **Forçar formato de saída:** Força downloads de vídeo em um formato de contêiner específico, como `mp4`, `webm` ou `mkv`. Disponível em **Configurações de download → Configurações de formato de saída**.
|
|
||||||
- **Conversão de formato de áudio:** Converta downloads somente de áudio para formatos preferidos, como `AAC`, `MP3`, `FLAC`, `WAV`, `Opus`, `M4A`, `Vorbis` ou `Best`. Disponível em **Configurações de download → Configurações de formato de áudio**.
|
|
||||||
- **Normalização de áudio:** Padronize o volume para downloads somente de áudio usando EBU R128.
|
|
||||||
- **Conexões Simultâneas:** Aumente a velocidade de download drasticamente baixando arquivos em vários fragmentos simultaneamente. Disponível em **Configurações de Download → Geral → Conexões Simultâneas** (O padrão é 1, o máximo recomendado é 8-10 para evitar bloqueios de IP).\n
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🌐 Acesso e Rede</summary>
|
<summary>🌐 Acesso e Rede</summary>
|
||||||
|
|
||||||
- **Login com Cookies:** Faça login no YouTube usando cookies para acessar conteúdo privado.
|
- **Login por Cookies:** Faça login no YouTube usando cookies para acessar conteúdo privado.
|
||||||
Como usar:
|
Uso:
|
||||||
1. **Recomendado:** Use a opção `Extract cookies from browser` integrada no aplicativo e selecione seu navegador e, opcionalmente, um perfil.
|
1. **Recomendado:** Use a opção integrada `Extract cookies from browser` no aplicativo, selecione o navegador e, opcionalmente, o perfil.
|
||||||
2. Como alternativa, extraia os cookies manualmente:
|
2. Opcionalmente, extraia cookies manualmente:
|
||||||
uma. Exporte cookies do seu navegador usando uma extensão como [cookie-editor](https://github.com/moustachauve/cookie-editor?tab=readme-ov-file)
|
a. Exporte cookies do seu navegador usando uma extensão como [cookie-editor](https://github.com/moustachauve/cookie-editor?tab=readme-ov-file)
|
||||||
b. Copie os cookies no formato Netscape
|
b. Copie os cookies no formato Netscape
|
||||||
c. Crie um arquivo chamado `cookies.txt` e cole os cookies nele
|
c. Crie um arquivo chamado `cookies.txt` e cole os cookies
|
||||||
d. Selecione o arquivo `cookies.txt` no aplicativo
|
d. Selecione o arquivo `cookies.txt` no aplicativo
|
||||||
- **Suporte a proxy:** Use um servidor proxy para downloads, por exemplo `http://<proxy-server>:<port>`
|
- **Suporte a Proxy:** Use um servidor proxy para downloads, ex: `http://<proxy-server>:<port>`
|
||||||
- **Modo genérico:** permite que o YTSage analise e faça download de sites que não sejam do YouTube suportados pelo yt-dlp. Habilite-o em **Configurações de download → Modo genérico**.
|
- **Modo Genérico:** Permite que o YTSage analise e baixe de sites além do YouTube suportados pelo yt-dlp. Habilite em **Download Settings → Generic Mode**.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🛠️ Ferramentas e Manutenção</summary>
|
<summary>🛠️ Ferramentas e Manutenção</summary>
|
||||||
|
|
||||||
- **Comandos personalizados:** Acesse recursos avançados do yt-dlp por meio de argumentos de linha de comando
|
- **Comandos Personalizados:** Acesse recursos avançados do yt-dlp via argumentos de linha de comando.
|
||||||
- **Guia Atualizador:** Gerencie ferramentas de atualização integradas em um só lugar nas Opções Personalizadas:
|
- **Aba de Atualização:** Gerencie as ferramentas de atualização integradas em um só lugar nas Opções Personalizadas:
|
||||||
- **Atualizações do yt-dlp:** verifique se há atualizações e alterne entre canais de lançamento estável e noturno
|
- **Atualização do yt-dlp:** Verifique atualizações e alterne entre os canais de lançamento Stable e Nightly.
|
||||||
- **Verificador de versão do FFmpeg:** Verifique sua versão do FFmpeg e abra os guias de instalação
|
- **Verificador de Versão do FFmpeg:** Verifique sua versão do FFmpeg e abra guias de instalação.
|
||||||
- **Atualizações do Deno:** Verifique e atualize o tempo de execução do Deno
|
- **Atualização do Deno:** Verifique e atualize o runtime do Deno.
|
||||||
- **Detecção de FFmpeg/yt-dlp/Deno:** Detecta automaticamente caminhos e versões de FFmpeg, yt-dlp e Deno na caixa de diálogo Sobre.
|
- **Detecção de FFmpeg/yt-dlp/Deno:** Detecta automaticamente caminhos e versões de FFmpeg, yt-dlp e Deno no diálogo Sobre.
|
||||||
- **Histórico de downloads:** Veja downloads anteriores com miniaturas e status no botão **Histórico**.
|
- **Histórico de Downloads:** Veja downloads anteriores com miniaturas e status no botão **History**.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>🌍 Localização</summary>
|
<summary>🌍 Localização</summary>
|
||||||
|
|
||||||
YTSage oferece suporte a **14 idiomas** para acessibilidade mundial. Selecione seu idioma preferido em **Opções personalizadas → Idioma**.
|
O YTSage suporta **14 idiomas** para alcance global. Escolha o seu idioma preferido em **Custom Options → Language**.
|
||||||
|
|
||||||
### Idiomas Suportados
|
### Idiomas Suportados
|
||||||
|
|
||||||
@@ -357,11 +362,11 @@ YTSage oferece suporte a **14 idiomas** para acessibilidade mundial. Selecione s
|
|||||||
| 🇧🇷 Português | `pt` | 🇷🇺 Russo | `ru` |
|
| 🇧🇷 Português | `pt` | 🇷🇺 Russo | `ru` |
|
||||||
| 🇹🇷 Turco | `tr` | 🇨🇳 Chinês | `zh` |
|
| 🇹🇷 Turco | `tr` | 🇨🇳 Chinês | `zh` |
|
||||||
|
|
||||||
### LEIA-ME Traduções
|
### Traduções do README
|
||||||
|
|
||||||
| Idioma | Arquivo | Idioma | Arquivo |
|
| Idioma | Arquivo | Idioma | Arquivo |
|
||||||
|----------|------|----------|------|
|
|----------|------|----------|------|
|
||||||
| 🇺🇸 Inglês | [README.md](../README.md) | 🇪🇸 Espanhol | [README.es.md](README.es.md)
|
| 🇺🇸 Inglês | [README.md](README.md) | 🇪🇸 Espanhol | [README.es.md](README.es.md) |
|
||||||
| 🇸🇦 Árabe | [README.ar.md](README.ar.md) | 🇫🇷 Francês | [README.fr.md](README.fr.md) |
|
| 🇸🇦 Árabe | [README.ar.md](README.ar.md) | 🇫🇷 Francês | [README.fr.md](README.fr.md) |
|
||||||
| 🇩🇪 Alemão | [README.de.md](README.de.md) | 🇮🇳 Hindi | [README.hi.md](README.hi.md) |
|
| 🇩🇪 Alemão | [README.de.md](README.de.md) | 🇮🇳 Hindi | [README.hi.md](README.hi.md) |
|
||||||
| 🇮🇩 Indonésio | [README.id.md](README.id.md) | 🇮🇹 Italiano | [README.it.md](README.it.md) |
|
| 🇮🇩 Indonésio | [README.id.md](README.id.md) | 🇮🇹 Italiano | [README.it.md](README.it.md) |
|
||||||
@@ -369,101 +374,101 @@ YTSage oferece suporte a **14 idiomas** para acessibilidade mundial. Selecione s
|
|||||||
| 🇧🇷 Português | [README.pt.md](README.pt.md) | 🇷🇺 Russo | [README.ru.md](README.ru.md) |
|
| 🇧🇷 Português | [README.pt.md](README.pt.md) | 🇷🇺 Russo | [README.ru.md](README.ru.md) |
|
||||||
| 🇹🇷 Turco | [README.tr.md](README.tr.md) | 🇨🇳 Chinês | [README.zh.md](README.zh.md) |
|
| 🇹🇷 Turco | [README.tr.md](README.tr.md) | 🇨🇳 Chinês | [README.zh.md](README.zh.md) |
|
||||||
|
|
||||||
> 💡 **Quer contribuir com uma tradução?** Confira a seção [Contributing](#contributing) para nos ajudar a adicionar mais idiomas!
|
> 💡 **Quer ajudar na tradução?** Veja a seção [Contribuindo](#contribuindo) para nos ajudar a adicionar mais idiomas!
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<a id="troubleshooting"></a>
|
<a id="solução-de-problemas"></a>
|
||||||
## 🛠️ Solução de problemas
|
## 🛠️ Solução de Problemas
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Clique para ver problemas e soluções comuns</summary>
|
<summary>Clique para ver problemas comuns e soluções</summary>
|
||||||
|
|
||||||
- **Tabela de formato não exibida:** Atualize yt-dlp para a versão mais recente e mude para yt-dlp todas as noites.
|
- **Tabela de formatos não aparece:** Atualize o yt-dlp para a versão mais recente e tente alternar para o yt-dlp Nightly.
|
||||||
- **Falha no download:** Verifique sua conexão com a Internet e certifique-se de que o vídeo esteja disponível.
|
- **Download falhou:** Verifique sua conexão com a internet e certifique-se de que o vídeo está disponível.
|
||||||
- **Erros específicos de download:**
|
- **Erros de Download Específicos:**
|
||||||
- **Vídeos privados:** Use autenticação de cookies para acessar conteúdo privado.
|
- **Vídeos Privados:** Use a autenticação por cookies para acessar conteúdo privado.
|
||||||
- **Conteúdo com restrição de idade:** Faça login na conta do YouTube para visualizar vídeos com restrição de idade.
|
- **Conteúdo com Restrição de Idade:** Faça login na sua conta do YouTube para visualizar vídeos com restrição de idade.
|
||||||
- **Vídeos bloqueados geograficamente:** considere usar uma VPN para contornar restrições regionais.
|
- **Vídeos com Bloqueio Geográfico:** Considere usar uma VPN para contornar restrições regionais.
|
||||||
- **Vídeos removidos/excluídos:** O vídeo não está mais disponível no YouTube.
|
- **Vídeo Removido:** O vídeo não está mais disponível no YouTube.
|
||||||
- **Transmissões ao vivo:** As transmissões ao vivo não podem ser baixadas; espere o fluxo terminar.
|
- **Live Streams:** Transmissões ao vivo não podem ser baixadas enquanto estão sendo transmitidas; aguarde até que a transmissão termine.
|
||||||
- **Erros de rede:** Verifique sua conexão com a Internet e tente novamente.
|
- **Erros de Rede:** Verifique sua conexão com a internet e tente novamente.
|
||||||
- **URLs inválidos:** certifique-se de que o URL esteja correto e seja de uma plataforma compatível.
|
- **URL Inválida:** Certifique-se de que a URL está correta e pertence a uma plataforma suportada.
|
||||||
- **Conteúdo Premium:** Requer assinatura do YouTube Premium.
|
- **Conteúdo Premium:** Requer uma assinatura do YouTube Premium.
|
||||||
- **Bloqueios de direitos autorais:** O conteúdo está bloqueado devido a restrições de direitos autorais.
|
- **Bloqueio por Direitos Autorais:** O conteúdo está bloqueado devido a restrições de direitos autorais.
|
||||||
- **Arquivos de vídeo e áudio separados após o download:** Isso acontece quando o FFmpeg está ausente ou não é detectado. YTSage requer FFmpeg para mesclar fluxos de vídeo e áudio de alta qualidade.
|
- **Arquivos de vídeo e áudio estão separados após o download:** Isso acontece quando o FFmpeg está ausente ou não foi detectado. O YTSage requer o FFmpeg para mesclar streams de vídeo e áudio de alta qualidade.
|
||||||
- **Solução:** Certifique-se de que o FFmpeg esteja instalado e acessível no PATH do seu sistema. Para usuários do Windows, a opção mais fácil é baixar o arquivo `YTSage-v<version>-ffmpeg.exe`, que vem junto com o FFmpeg.
|
- **Solução:** Certifique-se de que o FFmpeg está instalado e acessível no PATH do seu sistema. Para usuários do Windows, a opção mais fácil é baixar o arquivo `YTSage-v<versão>-ffmpeg.exe`, que já vem com o FFmpeg.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
#### 🛡️ Aviso do Windows Defender / Antivírus
|
#### 🛡️ Aviso do Windows Defender / Antivírus
|
||||||
|
|
||||||
Alguns softwares antivírus podem sinalizar os arquivos `.exe` como falsos positivos. Esta é uma **limitação conhecida** dos aplicativos empacotados.
|
Alguns softwares antivírus podem sinalizar arquivos `.exe` como falsos positivos. Esta é uma **limitação conhecida** de aplicativos empacotados.
|
||||||
|
|
||||||
**Por que isso acontece:**
|
**Por que isso acontece:**
|
||||||
- A heurística antivírus pode identificar erroneamente executáveis compactados como suspeitos
|
- As heurísticas do antivírus podem identificar incorretamente executáveis empacotados como suspeitos.
|
||||||
|
|
||||||
**Alternativas seguras:**
|
**Opções Seguras:**
|
||||||
- ✅ **Use instalação pip:** `pip install ytsage` (recomendado)
|
- ✅ **Use a instalação via pip:** `pip install ytsage` (recomendado)
|
||||||
- ✅ **Construir a partir da fonte**: seguindo isto [guide](../.github/CI_CD_README.md)
|
- ✅ **Compile a partir do código-fonte**: Seguindo este [guia](.github/CI_CD_README.md)
|
||||||
- ✅ **Coloque o aplicativo na lista de permissões** em seu software antivírus
|
- ✅ **Adicione o aplicativo à lista de permissões** do seu software antivírus.
|
||||||
|
|
||||||
#### 🍎 macOS: "O aplicativo está danificado e não pode ser aberto"
|
#### 🍎 macOS: "App está danificado e não pode ser aberto"
|
||||||
Se você vir esse erro no macOS Sonoma ou mais recente, será necessário remover o atributo de quarentena.
|
Se você vir este erro no macOS Sonoma ou mais recente, você precisa remover o atributo de quarentena.
|
||||||
|
|
||||||
1. **Abra o Terminal** (você pode encontrá-lo usando o Spotlight).
|
1. **Abra o Terminal** (você pode encontrá-lo usando o Spotlight).
|
||||||
2. **Digite o seguinte comando** mas **não** pressione Enter ainda. Certifique-se de incluir o espaço no final:
|
2. **Digite o seguinte comando**, mas ainda **NÃO** pressione Enter. Certifique-se de incluir o espaço no final:
|
||||||
```bash
|
```bash
|
||||||
xattr -d com.apple.quarantine
|
xattr -d com.apple.quarantine
|
||||||
```
|
```
|
||||||
3. **Arraste o arquivo `YTSage.app`** da janela do Finder e solte-o diretamente na janela do Terminal. Isso colará automaticamente o caminho correto do arquivo.
|
3. **Arraste o arquivo `YTSage.app` da janela do Finder** e solte-o diretamente na janela do Terminal. Isso colará automaticamente o caminho correto do arquivo.
|
||||||
4. **Pressione Enter** para executar o comando.
|
4. **Pressione Enter** para executar o comando.
|
||||||
5. **Tente abrir YTSage.app novamente.** Agora ele deve iniciar corretamente.
|
5. **Tente abrir o YTSage.app novamente.** Ele agora deve iniciar corretamente.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
#### **Locais de configuração (avançado)**
|
#### **Localização da Configuração (Avançado)**
|
||||||
- **Janelas:** `%LOCALAPPDATA%\YTSage`
|
- **Windows:** `%LOCALAPPDATA%\YTSage`
|
||||||
- **macOS:** `~/Library/Application Support/YTSage`
|
- **macOS:** `~/Library/Application Support/YTSage`
|
||||||
- **Linux:** `~/.local/share/YTSage`
|
- **Linux:** `~/.local/share/YTSage`
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<a id="sponsor"></a>
|
<a id="patrocinar"></a>
|
||||||
## 💖 Patrocinador
|
## 💖 Patrocinar
|
||||||
|
|
||||||
Se o YTSage economizar seu tempo, considere patrocinar o projeto. O patrocínio ajuda a cobrir o tempo de desenvolvimento, testes em plataformas e melhorias futuras.
|
Se o YTSage economiza seu tempo, considere patrocinar o projeto. Os patrocínios ajudam a cobrir o tempo de desenvolvimento, testes em todas as plataformas e melhorias futuras.
|
||||||
|
|
||||||
- Patrocinadores do GitHub: https://github.com/sponsors/oop7
|
- GitHub Sponsors: https://github.com/sponsors/oop7
|
||||||
- O link do patrocinador também está disponível diretamente no aplicativo, na caixa de diálogo Sobre.
|
- O link de patrocínio está disponível diretamente através do diálogo Sobre no aplicativo.
|
||||||
|
|
||||||
[](https://github.com/sponsors/oop7)
|
[](https://github.com/sponsors/oop7)
|
||||||
|
|
||||||
<a id="contributing"></a>
|
<a id="contribuindo"></a>
|
||||||
## 👥 Contribuindo
|
## 👥 Contribuindo
|
||||||
|
|
||||||
Aceitamos contribuições! Veja como você pode ajudar:
|
Contribuições são bem-vindas! Veja como você pode ajudar:
|
||||||
|
|
||||||
1. 🍴 Bifurque o repositório
|
1. 🍴 Faça um Fork do repositório
|
||||||
2. 🌿 Crie seu branch de recursos:
|
2. 🌿 Crie sua branch de recurso:
|
||||||
```bash
|
```bash
|
||||||
git checkout -b feature/AmazingFeature
|
git checkout -b feature/RecursoIncrivel
|
||||||
```
|
```
|
||||||
3. 💾 Confirme suas alterações:
|
3. 💾 Faça o commit de suas alterações:
|
||||||
```bash
|
```bash
|
||||||
git commit -m 'Add some AmazingFeature'
|
git commit -m 'Adicionar RecursoIncrivel'
|
||||||
```
|
```
|
||||||
4. 📤 Empurre para o galho:
|
4. 📤 Faça o push para a branch:
|
||||||
```bash
|
```bash
|
||||||
git push origin feature/AmazingFeature
|
git push origin feature/RecursoIncrivel
|
||||||
```
|
```
|
||||||
5. 🔄 Abra uma solicitação pull
|
5. 🔄 Abra um Pull Request
|
||||||
|
|
||||||
### 🌍 Contribuindo com traduções
|
### 🌍 Contribua com Traduções
|
||||||
|
|
||||||
- Atualize o arquivo README localizado correspondente (por exemplo `README.es.md`)
|
- Atualize o arquivo README localizado relevante (ex: `readme-translations/README.pt.md`)
|
||||||
- Mantenha as strings do aplicativo sincronizadas editando `ytsage/languages/<code>.json`
|
- Mantenha as strings do aplicativo em sincronia editando `ytsage/languages/<code>.json`
|
||||||
- Se o seu idioma estiver faltando, comece em `README.md` e crie `README.<code>.md`
|
- Se o seu idioma estiver ausente, comece pelo `README.md` e crie `README.<code>.md`
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>📂 Estrutura do Projeto</summary>
|
<summary>📂 Estrutura do Projeto</summary>
|
||||||
@@ -476,58 +481,58 @@ Este documento descreve a estrutura de pastas organizada do YTSage.
|
|||||||
|
|
||||||
```
|
```
|
||||||
YTSage/
|
YTSage/
|
||||||
├── 📁 .github/ # GitHub configuration
|
├── 📁 .github/ # Configurações do GitHub
|
||||||
│ ├── 📁 ISSUE_TEMPLATE/ # Issue templates
|
│ ├── 📁 ISSUE_TEMPLATE/ # Modelos de problemas
|
||||||
│ │ └── 🐛-bug-report.md # Bug report template
|
│ │ └── 🐛-bug-report.md # Modelo de relatório de erro
|
||||||
│ ├─── 📁 workflows/ # GitHub Actions workflows
|
│ ├─── 📁 workflows/ # Fluxos de trabalho do GitHub Actions
|
||||||
│ │ ├── build-linux.yml # Linux build workflow
|
│ │ ├── build-linux.yml # Fluxo de build para Linux
|
||||||
│ │ ├── build-macos.yml # macOS build workflow
|
│ │ ├── build-macos.yml # Fluxo de build para macOS
|
||||||
│ │ │── build-windows.yml # Windows build workflow
|
│ │ │── build-windows.yml # Fluxo de build para Windows
|
||||||
| | └── release-all.yml # Master release workflow
|
| | └── release-all.yml # Fluxo de lançamento principal
|
||||||
│ └── 📄 CI_CD_README.md # CI/CD documentation
|
│ └── 📄 CI_CD_README.md # Documentação CI/CD
|
||||||
├── 📁 branding/ # Branding assets (Screenshots, SVGs)
|
├── 📁 branding/ # Ativos de marca (capturas de tela, SVGs)
|
||||||
│ ├── 📁 icons/ # Application icons
|
│ ├── 📁 icons/ # Ícones do aplicativo
|
||||||
│ ├── 📁 screenshots/ # Screenshots for documentation
|
│ ├── 📁 screenshots/ # Capturas de tela para documentação
|
||||||
│ └── 📁 svg/ # SVG assets
|
│ └── 📁 svg/ # Ativos SVG
|
||||||
├── 📄 LICENSE # License file
|
├── 📄 LICENSE # Arquivo de licença
|
||||||
├── 📄 pyproject.toml # Project metadata and dependencies
|
├── 📄 pyproject.toml # Metadados do projeto e dependências
|
||||||
├── 📄 README.md # Project documentation
|
├── 📄 README.md # Documentação do projeto
|
||||||
├── 📄 requirements.txt # Python dependencies (dev)
|
├── 📄 requirements.txt # Dependências Python (dev)
|
||||||
└── 📁 ytsage/ # Source package
|
└── 📁 ytsage/ # Pacote de código-fonte
|
||||||
├── 📁 assets/ # Runtime assets
|
├── 📁 assets/ # Ativos de tempo de execução
|
||||||
│ ├── 📁 Icon/ # Application icons
|
│ ├── 📁 Icon/ # Ícones do aplicativo
|
||||||
│ └── 📁 sound/ # Audio files
|
│ └── 📁 sound/ # Arquivos de áudio
|
||||||
├── 📁 languages/ # Localization files
|
├── 📁 languages/ # Arquivos de localização
|
||||||
│ ├── 📄 ar.json # Arabic translation
|
│ ├── 📄 ar.json # Tradução em árabe
|
||||||
│ ├── 📄 de.json # German translation
|
│ ├── 📄 de.json # Tradução em alemão
|
||||||
│ ├── 📄 en.json # English translation
|
│ ├── 📄 en.json # Tradução em inglês
|
||||||
│ └── ... # Other languages
|
│ └── ... # Outros idiomas
|
||||||
├── 📁 core/ # Core business logic
|
├── 📁 core/ # Lógica de negócios principal
|
||||||
│ ├── 📄 __init__.py # Core package init
|
│ ├── 📄 __init__.py
|
||||||
│ ├── 📄 ytsage_deno.py # Deno integration
|
│ ├── 📄 ytsage_deno.py # Integração Deno
|
||||||
│ ├── 📄 ytsage_downloader.py # Download functionality
|
│ ├── 📄 ytsage_downloader.py # Funcionalidade de download
|
||||||
│ ├── 📄 ytsage_ffmpeg.py # FFmpeg integration
|
│ ├── 📄 ytsage_ffmpeg.py # Integração FFmpeg
|
||||||
│ ├── 📄 ytsage_utils.py # Utility functions
|
│ ├── 📄 ytsage_utils.py # Funções utilitárias
|
||||||
│ └── 📄 ytsage_yt_dlp.py # yt-dlp integration
|
│ └── 📄 ytsage_yt_dlp.py # Integração yt-dlp
|
||||||
├── 📁 gui/ # User interface components
|
├── 📁 gui/ # Componentes de interface do usuário
|
||||||
│ ├── 📄 __init__.py # GUI package init
|
│ ├── 📄 __init__.py
|
||||||
│ ├── 📄 ytsage_gui_main.py # Main application window
|
│ ├── 📄 ytsage_gui_main.py # Janela principal do aplicativo
|
||||||
│ └── 📁 ytsage_gui_dialogs/ # Dialog classes
|
│ └── 📁 ytsage_gui_dialogs/ # Classes de diálogo
|
||||||
├── 📁 utils/ # Utility modules
|
├── 📁 utils/ # Módulos utilitários
|
||||||
│ ├── 📄 __init__.py # Utils package init
|
│ ├── 📄 __init__.py
|
||||||
│ ├── 📄 ytsage_config_manager.py # Configuration management
|
│ ├── 📄 ytsage_config_manager.py # Gerenciamento de configuração
|
||||||
│ └── 📄 ytsage_logger.py # Logging utilities
|
│ └── 📄 ytsage_logger.py # Ferramentas de registro
|
||||||
├── 📄 __init__.py # Package entry point
|
├── 📄 __init__.py # Ponto de entrada do pacote
|
||||||
└── 📄 main.py # Main execution script
|
└── 📄 main.py # Script de execução principal
|
||||||
```
|
```
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
## ⭐️ História da estrela
|
## ⭐️ Histórico de Estrelas
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
## História da estrela
|
## Star History
|
||||||
|
|
||||||
<a href="https://www.star-history.com/#oop7/YTSage&Date">
|
<a href="https://www.star-history.com/#oop7/YTSage&Date">
|
||||||
<picture>
|
<picture>
|
||||||
@@ -541,63 +546,64 @@ YTSage/
|
|||||||
|
|
||||||
## 📜 Licença
|
## 📜 Licença
|
||||||
|
|
||||||
Este projeto está licenciado sob a licença MIT - consulte o arquivo [LICENSE](../LICENSE) para obter detalhes.
|
Este projeto é licenciado sob a Licença MIT - consulte o arquivo [LICENSE](LICENSE) para mais detalhes.
|
||||||
|
|
||||||
## 🙏 Agradecimentos
|
## 🙏 Agradecimentos
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Mostrar agradecimentos</summary>
|
<summary>Mostrar Agradecimentos</summary>
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
<p>Um sincero obrigado a todos que contribuíram para este projeto abrindo um problema para sugerir uma melhoria ou relatar um bug.</p>
|
<p>Muito obrigado a todos que contribuíram para este projeto abrindo problemas para sugerir melhorias ou relatar erros.</p>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
<tr class="section"><th colspan="2">Componentes principais</th></tr>
|
<tr class="section"><th colspan="2">Componentes Principais</th></tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width="35%"><a href="https://github.com/yt-dlp/yt-dlp">yt-dlp</a></td>
|
<td width="35%"><a href="https://github.com/yt-dlp/yt-dlp">yt-dlp</a></td>
|
||||||
<td>Mecanismo de download</td>
|
<td>Mecanismo de Download</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://ffmpeg.org/">FFmpeg</a></td>
|
<td><a href="https://ffmpeg.org/">FFmpeg</a></td>
|
||||||
<td>Processamento de mídia</td>
|
<td>Processamento de Mídia</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://deno.com/">Deno</a></td>
|
<td><a href="https://deno.com/">Deno</a></td>
|
||||||
<td>Tempo de execução para integração com yt-dlp</td>
|
<td>Runtime para integração do yt-dlp</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="section"><th colspan="2">Bibliotecas e Estruturas</th></tr>
|
<tr class="section"><th colspan="2">Bibliotecas e Frameworks</th></tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://wiki.qt.io/Qt_for_Python">PySide6</a></td>
|
<td><a href="https://wiki.qt.io/Qt_for_Python">PySide6</a></td>
|
||||||
<td>Estrutura GUI</td>
|
<td>Framework GUI</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://python-pillow.org/">Travesseiro</a></td>
|
<td><a href="https://python-pillow.org/">Pillow</a></td>
|
||||||
<td>Processamento de imagem</td>
|
<td>Processamento de Imagens</td>
|
||||||
</tr>
|
|
||||||
<tr><td><a href="https://requests.readthedocs.io/">solicitações</a></td>
|
|
||||||
<td>Solicitações HTTP</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://packaging.python.org/">embalagem</a></td>
|
<td><a href="https://requests.readthedocs.io/">requests</a></td>
|
||||||
<td>Manuseio de versões e pacotes</td>
|
<td>Requisições HTTP</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://python-markdown.github.io/">remarcação</a></td>
|
<td><a href="https://packaging.python.org/">packaging</a></td>
|
||||||
<td>Renderização de redução</td>
|
<td>Gerenciamento de Versão e Empacotamento</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="https://python-markdown.github.io/">markdown</a></td>
|
||||||
|
<td>Renderização de Markdown</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://github.com/Delgan/loguru">loguru</a></td>
|
<td><a href="https://github.com/Delgan/loguru">loguru</a></td>
|
||||||
<td>Registro</td>
|
<td>Registro de Logs</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="section"><th colspan="2">Ativos e Contribuintes</th></tr>
|
<tr class="section"><th colspan="2">Ativos e Contribuidores</th></tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://pixabay.com/sound-effects/new-notification-09-352705/">Nova Notificação 09 por Universfield</a></td>
|
<td><a href="https://pixabay.com/sound-effects/new-notification-09-352705/">New Notification 09 de Universfield</a></td>
|
||||||
<td>Som de notificação</td>
|
<td>Som de Notificação</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="https://github.com/viru185">viru185</a></td>
|
<td><a href="https://github.com/viru185">viru185</a></td>
|
||||||
<td>Colaborador de código</td>
|
<td>Contribuidor de Código</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
@@ -605,14 +611,14 @@ Este projeto está licenciado sob a licença MIT - consulte o arquivo [LICENSE](
|
|||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
## ⚠️ Isenção de responsabilidade
|
## ⚠️ Isenção de Responsabilidade
|
||||||
|
|
||||||
Esta ferramenta é apenas para uso pessoal. Respeite os termos de serviço do YouTube e os direitos dos criadores de conteúdo.
|
Esta ferramenta é apenas para uso pessoal. Respeite os Termos de Serviço do YouTube e os direitos dos produtores de conteúdo.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
Feito com ❤️ por [oop7](https://github.com/oop7)
|
Criado com ❤️ por [oop7](https://github.com/oop7)
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user