Menu

Tree [5e2aa6] master /
 History

HTTPS access


File Date Author Commit
 release_YTDownloader_v1.1.3.2 2025-09-25 dmitry dmitry [04a2ca] LICENSE_RU.txt
 .gitignore 2025-09-29 dmitry dmitry [5e2aa6] chore: stop tracking release/spec/helper files;...
 CHANGELOG.md 2025-09-29 dmitry dmitry [bed2f9] feat(repo): add v1.1.4.0 source, specs, and doc...
 FAQ.md 2025-09-29 dmitry dmitry [bed2f9] feat(repo): add v1.1.4.0 source, specs, and doc...
 LICENSE.txt 2025-09-29 dmitry dmitry [bed2f9] feat(repo): add v1.1.4.0 source, specs, and doc...
 LICENSE_RU.txt 2025-09-29 dmitry dmitry [bed2f9] feat(repo): add v1.1.4.0 source, specs, and doc...
 QUICKSTART.md 2025-09-29 dmitry dmitry [bed2f9] feat(repo): add v1.1.4.0 source, specs, and doc...
 README.md 2025-09-29 dmitry dmitry [bed2f9] feat(repo): add v1.1.4.0 source, specs, and doc...
 red-download-icon.ico 2025-09-29 dmitry dmitry [bed2f9] feat(repo): add v1.1.4.0 source, specs, and doc...
 ytdl_1_0_2_0.py 2025-09-04 dmitry dmitry [c84611] Initial commit
 ytdl_v_1_1_4_0.py 2025-09-29 dmitry dmitry [bed2f9] feat(repo): add v1.1.4.0 source, specs, and doc...

Read Me

# 🎥 YTDownloader v1.1.4.0

Python
Platform
FFmpeg
Version

YTDownloader — это удобная программа с графическим интерфейсом для загрузки видео и аудио с YouTube с встроенной поддержкой FFmpeg.

Официальный сайт: https://sourceforge.net/projects/ytdowloader/

🆕 Что нового в версии 1.1.4.0

🔧 Архитектурные улучшения:

  • Встроенная поддержка FFmpeg 8.0 - автоматическая инициализация путей
  • Функция bootstrap_paths() - автоматическая настройка путей к FFmpeg при запуске
  • Улучшенная функция resource_path() - корректная работа в упакованных исполняемых файлах
  • Расширенные импорты - добавлены importlib.util, winreg, platform, winsound

📱 Обновления yt-dlp:

  • yt-dlp 2025.09.26 - последняя стабильная версия на момент релиза
  • Улучшенная поддержка платформ - расширенный список поддерживаемых сайтов
  • Повышенная стабильность - исправлены критические ошибки загрузки
  • Новые экстракторы - добавлена поддержка дополнительных видеоплатформ
  • Оптимизированная производительность - ускорена обработка метаданных
  • Улучшенная обработка ошибок - более информативные сообщения об ошибках

🎵 Улучшения загрузки аудио:

  • Встроенный FFmpeg - не требует внешней установки
  • Метод check_ffmpeg() - автоматическая проверка доступности FFmpeg
  • Улучшенная конвертация - использование встроенного FFmpegExtractAudio постпроцессора
  • Поддержка множественных форматов - MP3, M4A, OGG и другие

💻 Интеграция с системой:

  • Работа с реестром Windows - через модуль winreg
  • Определение платформы - автоматическая настройка под Windows
  • Звуковые уведомления - через winsound
  • Улучшенная обработка путей - корректная работа с PyInstaller

🔧 Технические изменения в коде:

Новые функции:

def bootstrap_paths():
    """Автоматическая инициализация путей к FFmpeg при запуске"""
    # Настройка PATH для встроенного FFmpeg

def check_ffmpeg(self):
    """Проверка доступности FFmpeg и отображение статуса в интерфейсе"""
    # Проверка и валидация FFmpeg

Расширенные импорты:

import importlib.util  # Динамическая загрузка модулей
import winreg          # Работа с реестром Windows  
import platform        # Информация о системе
import winsound        # Звуковые уведомления
import yt_dlp          # Обновлено до версии 2025.09.26

Улучшенная функция resource_path():

def resource_path(relative_path):
    """Получение абсолютного пути к ресурсу (совместимо с PyInstaller)"""
    base_path = getattr(sys, "_MEIPASS", os.path.abspath("."))
    return os.path.join(base_path, relative_path)

📦 Изменения в сборке:

  • Встроенный FFmpeg 8.0 - полная автономность
  • yt-dlp 2025.09.26 - последняя стабильная версия с новыми экстракторами
  • Оптимизированная упаковка - исправлены проблемы с cffi/pycparser
  • Множественные варианты сборки - Lite, Standard, Ultimate
  • Улучшенная совместимость - работа без внешних зависимостей

📋 Содержание

🚀 Возможности

🎵 Аудио функции (v1.1.4.0):

  • Встроенный FFmpeg 8.0 - полная автономность, не требует установки
  • Загрузка аудио с конвертацией в MP3, M4A, OGG форматы
  • Автоматическая настройка путей - bootstrap_paths() при запуске
  • Проверка FFmpeg - визуальный статус в интерфейсе
  • Высокое качество звука - 192 kbps MP3, 44.1 kHz

🎥 Видео функции:

  • Загрузка видео в максимальном качестве (MP4)
  • Поддержка плейлистов и отдельных видео
  • Множественные форматы - MP4, WebM и другие
  • Автоматический выбор качества - лучшее доступное

🖥️ Интерфейс и UX:

  • Современный интерфейс с темным дизайном CustomTkinter
  • Отображение прогресса в реальном времени
  • Подробные логи всех операций с временными метками
  • Звуковые уведомления при завершении загрузки
  • Выбор папки сохранения с запоминанием последней

🔧 Технические возможности:

  • Автоматическая инициализация - bootstrap_paths() для путей
  • Интеграция с Windows - работа с реестром и системными путями
  • Обработка ошибок - детальное логирование и уведомления
  • PyInstaller совместимость - корректная упаковка в exe
  • Модульная архитектура - легкое расширение функционала

💻 Системные требования

Минимальные требования:

  • ОС: Windows 7/8/10/11 (64-bit)
  • RAM: 2 GB (4 GB рекомендуется для FFmpeg операций)
  • Свободное место: 200 MB + место для загружаемых файлов
  • Интернет: Стабильное подключение для загрузки
  • FFmpeg:Встроен в v1.1.4.0 - внешняя установка не требуется

Рекомендуемые требования:

  • ОС: Windows 10/11 (64-bit)
  • RAM: 4 GB или больше (для обработки больших файлов)
  • SSD: Для быстрой записи больших файлов и FFmpeg операций
  • Процессор: Dual-core 2.0 GHz или выше (для конвертации аудио)

⚠️ Важные изменения в v1.1.4.0:

  • FFmpeg встроен - не требует отдельной установки
  • Увеличенный размер - exe файл ~190MB (включает FFmpeg)
  • Автономная работа - все зависимости включены
  • Улучшенная совместимость - исправлены проблемы с cffi/pycparser

⚙️ Архитектурные изменения v1.1.4.0

🔧 Новые ключевые функции в коде:

1. bootstrap_paths() - Автоматическая инициализация путей

def bootstrap_paths():
    """
    Автоматически настраивает пути к FFmpeg при запуске приложения.
    Добавляет встроенную папку ffmpeg в системный PATH.
    Обеспечивает корректную работу с PyInstaller упаковкой.
    """
  • Назначение: Настройка путей к встроенному FFmpeg
  • Вызов: При запуске программы в main()
  • Эффект: FFmpeg доступен без внешней установки

2. resource_path(relative_path) - Улучшенная работа с ресурсами

def resource_path(relative_path):
    """
    Получение абсолютного пути к ресурсу с поддержкой PyInstaller.
    Корректно работает как в исходном коде, так и в упакованном exe.
    """
    base_path = getattr(sys, "_MEIPASS", os.path.abspath("."))
    return os.path.join(base_path, relative_path)
  • Улучшения: Полная совместимость с PyInstaller
  • Применение: Для иконок, FFmpeg бинарников, конфигураций
  • Преимущество: Одинаковая работа в dev и production

3. check_ffmpeg() - Проверка статуса FFmpeg

def check_ffmpeg(self):
    """
    Проверяет доступность FFmpeg и отображает статус в интерфейсе.
    Показывает версию FFmpeg и путь к исполняемому файлу.
    """
  • Визуализация: Статус FFmpeg в GUI
  • Информация: Версия и путь к ffmpeg.exe
  • Валидация: Проверка работоспособности

📦 Расширенные импорты и зависимости:

import importlib.util  # Динамическая загрузка модулей
import winreg          # Работа с реестром Windows
import platform        # Информация о системе
import winsound        # Звуковые уведомления

🔄 Изменения в процессе загрузки аудио:

  • FFmpegExtractAudio: Использование встроенного постпроцессора
  • yt-dlp 2025.09.26: Обновленная версия с улучшенной стабильностью
  • Автоматическая конвертация: Без внешних зависимостей
  • Множественные форматы: MP3, M4A, OGG поддержка
  • Качество звука: Настраиваемые параметры битрейта
  • Расширенные экстракторы: Поддержка новых видеоплатформ
  • Улучшенная обработка метаданных: Более точная информация о треках

🏗️ Архитектурные улучшения:

  1. Модульность: Разделение логики инициализации и основного функционала
  2. Совместимость: Полная поддержка PyInstaller упаковки
  3. Автономность: Все зависимости встроены в исполняемый файл
  4. Расширяемость: Легкое добавление новых форматов и функций

🔧 Исправления совместимости:

  • cffi/pycparser: Решены проблемы упаковки в exe
  • Cryptodome: Корректная работа криптографических модулей
  • yt-dlp 2025.09.26: Оптимизированная интеграция с последней версией
  • Новые экстракторы: Улучшенная поддержка YouTube и других платформ
  • Стабильность загрузки: Исправлены ошибки с прерванными загрузками
  • Метаданные: Корректная обработка названий и исполнителей

📦 Установка

🚀 Быстрая установка (Рекомендуется)

Варианты сборки v1.1.4.0:

  1. YTDownloader_v1.1.4.0_Ultimate.exe (190MB) 🏆 Рекомендуется
  2. ✅ Встроенный FFmpeg 8.0
  3. ✅ Максимальная совместимость
  4. ✅ Исправлены все ошибки cffi/pycparser
  5. ✅ Автономная работа

  6. YTDownloader_v1.1.4.0_Stable.exe (191MB)

  7. ✅ Встроенный FFmpeg 8.0
  8. ✅ Стабильная работа
  9. ❌ Больший размер файла

  10. YTDownloader_v1.1.4.0_Lite.exe (45MB)

  11. ❌ Без FFmpeg (только базовые функции)
  12. ✅ Минимальный размер
  13. ⚠️ Ограниченные возможности аудио

📁 Содержимое архива v1.1.4.0:

📦 YTDownloader_v1.1.4.0_Ultimate_FIXED
├── 🚀 YTDownloader_v1.1.4.0_Ultimate.exe  # Главный файл (~190MB)
├── 📖 README.md                           # Подробная инструкция (ОБНОВЛЕНО)
├── 🚀 QUICKSTART.md                      # Быстрый старт  
├──  FAQ.md                             # Часто задаваемые вопросы
├── 📝 CHANGELOG.md                       # История изменений v1.1.4.0
├── 🔧 FIX_REPORT.md                      # Отчет об исправлениях
└── 📄 LICENSE.txt                        # Лицензия и права

🆕 Особенности установки v1.1.4.0:

  • Не требует администратора - портативная версия
  • Автоматическая настройка - bootstrap_paths() при первом запуске
  • FFmpeg встроен - никаких внешних установок
  • Исправлены ошибки - cffi/pycparser проблемы решены

🎯 Использование

Базовое использование:

  1. 📝 Введите ссылку
  2. Скопируйте ссылку на YouTube видео
  3. Вставьте в текстовое поле программы

  4. 📁 Выберите папку

  5. Нажмите кнопку "Обзор"
  6. Выберите папку для сохранения

  7. 🎥 Выберите тип загрузки

  8. Загрузить видео - для MP4 файла
  9. Загрузить аудио - для MP3 файла

  10. ⏳ Ожидайте завершения

  11. Следите за прогрессом в логах

Дополнительные функции:

  • 📊 Мониторинг: Следите за скоростью и процентом выполнения

⚙️ Функции программы

🎥 Загрузка видео

  • Формат: MP4 (H.264 + AAC)
  • Качество: Максимально доступное (до 4K/8K)
  • yt-dlp 2025.09.26: Поддержка новейших форматов YouTube
  • Кодек: Оптимизированный для совместимости
  • Совместимость: Все современные плееры
  • Плейлисты: Поддержка загрузки целых плейлистов
  • Метаданные: Автоматическое сохранение названий и описаний

🎵 Загрузка аудио (ОБНОВЛЕНО v1.1.4.0)

  • Встроенный FFmpeg 8.0: ✅ Полная автономность
  • Форматы: MP3, M4A, OGG, FLAC, WAV
  • Качество MP3: 192 kbps (настраиваемо)
  • Частота дискретизации: 44.1 kHz
  • Автоматическая конвертация: Без внешних программ
  • Проверка статуса: Визуальная индикация FFmpeg в GUI

📊 Информация о прогрессе

  • Процент выполнения в реальном времени
  • Скорость загрузки (KB/s, MB/s)
  • Размер файла и прогресс загрузки
  • Подробное логирование всех операций
  • Временные метки для всех событий

🔧 Технические функции v1.1.4.0:

  • bootstrap_paths(): Автоматическая настройка путей при запуске
  • check_ffmpeg(): Проверка и отображение статуса FFmpeg
  • resource_path(): Корректная работа с упакованными ресурсами
  • Интеграция с Windows: Работа с реестром и системными путями
  • Звуковые уведомления: При завершении загрузки

🛠️ Улучшения интерфейса:

  • Статус FFmpeg: Отображение версии и пути
  • Расширенные логи: Более детальная информация
  • Обработка ошибок: Понятные сообщения об ошибках
  • Автоматическое обновление: Статуса и прогресса
  • Оставшееся время
  • Размер файла

🔧 Настройки

Автоматические настройки:

  • ✅ Проверка зависимостей при запуске
  • ✅ Автоматическое определение FFmpeg
  • ✅ Сохранение последней используемой папки
  • ✅ Обновление интерфейса в реальном времени

❓ Часто задаваемые вопросы

❓ Какие сайты поддерживаются?

Ответ: Программа поддерживает YouTube.

❓ Где сохраняются файлы?

Ответ: В папке, которую вы выбрали через кнопку "Обзор". По умолчанию - папка программы.

❓ Почему медленная загрузка?

Ответ: Скорость зависит от:
- Качества интернет-соединения
- Загруженности серверов YouTube
- Размера файла

❓ Можно ли изменить качество видео?

Ответ: В текущей версии программа автоматически выбирает максимальное качество.

❓ Как обновить программу?

Ответ: Скачайте новую версию с официального сайта.

🐛 Устранение неполадок

❌ Ошибка "FFmpeg не найден"

Решение:
1. Скачайте FFmpeg с официального сайта
2. Распакуйте в C:\ffmpeg
3. Добавьте C:\ffmpeg\bin в PATH
4. Перезапустите программу

❌ Ошибка "Неподдерживаемая ссылка"

Решение:
1. Проверьте правильность ссылки
2. Убедитесь, что видео доступно для просмотра
3. Попробуйте скопировать ссылку заново

❌ Программа не запускается

Решение:
1. Проверьте установку Python
2. Установите зависимости: pip install yt-dlp customtkinter
3. Запустите от имени администратора

❌ Низкая скорость загрузки

Решение:
1. Проверьте скорость интернета
2. Закройте другие программы, использующие интернет
3. Попробуйте в другое время

❌ Файл не воспроизводится

Решение:
1. Установите современный видеоплеер (VLC, PotPlayer)
2. Проверьте, что загрузка завершилась полностью
3. Переименуйте файл, удалив специальные символы

🔄 История версий

v1.1.3.2 (24.09.2025)

  • ✅ Обновлен внешний вид окна (скругленные углы, аккуратная верхняя панель)
  • ✅ Добавлена видимая ссылка «Сайт программы» в меню
  • ✅ Обновлены ссылки в «Справка → Перейти на страницу программы»
  • ✅ Обновлены файлы лицензии (добавлен LICENSE_RU.txt с кратким EULA на русском)
  • 🛠️ Небольшие оптимизации и чистка кода

  • Standalone EXE версия - Полностью автономный исполняемый файл

  • Нет зависимостей - Python, yt-dlp, FFmpeg включены в exe
  • Размер ~100MB - Все компоненты в одном файле

v1.1.3.1

✨ Новые функции:
- 🔊 Звуковое уведомление при завершении загрузки
- Системный звук Windows при успешном завершении
- Отдельная обработка для видео и аудио
- Автоматическая обработка ошибок воспроизведения

  • ❌ Отмена загрузки в реальном времени
  • Кнопка "Отменить" активируется во время загрузки
  • Мгновенное прерывание через кастомные исключения
  • Безопасная остановка потоков и очистка ресурсов
  • Статус "Отменено" с оранжевой подсветкой

  • 🧹 Очистка логов одним кликом

  • Кнопка "Очистить логи" под областью логов
  • Полная очистка с сообщением о выполнении
  • Подсказка при наведении курсора

v1.0.2.0 (31.08.2025)

  • Улучшен дизайн интерфейса
  • Исправлены мелкие ошибки

v1.0.1.0

  • ✅ Улучшена обработка ошибок
  • ✅ Оптимизирована скорость загрузки

v1.0.0.0

  • ✅ Первый стабильный релиз
  • ✅ Базовая функциональность загрузки
  • ✅ Графический интерфейс

📞 Поддержка

💬 Контакты:

🆘 Получение помощи:

  1. Проверьте FAQ выше
  2. Опишите проблему подробно
  3. Приложите скриншот ошибки
  4. Укажите версию программы

📄 Лицензия

Программа распространяется по лицензии Business Source License 1.1 (BSL 1.1).

  • Использование для личных, некоммерческих целей — разрешено
  • Коммерческое использование — ограничено до 2030-01-01
  • После 2030-01-01 код переходит под Apache License 2.0

Документы:
- LICENSE.txt — полный текст BSL 1.1 (EN)
- LICENSE_RU.txt — краткое пользовательское соглашение (RU)

© 2025 Secret Archives. Все права защищены.


🎉 Спасибо за использование YTDownloader!

Сделано с ❤️ для удобства пользователей

Powered by Secret Archives