Anime Enhancement — desktop/CLI-приложение для улучшения старого аниме-видео, в первую очередь Naruto. Пайплайн извлекает кадры, запускает AI-утилиты для denoise/upscale/interpolation, собирает видео обратно и копирует аудио из оригинала.
- Извлечение кадров через FFmpeg.
- Опциональный denoise через waifu2x-ncnn-vulkan.
- Апскейл через RealESRGAN-ncnn-vulkan.
- Интерполяция кадров через RIFE-ncnn-vulkan.
- Сборка промежуточных и финальных видео через FFmpeg.
- Копирование аудиодорожки из оригинала без обязательного перекодирования.
- GUI на PySide6 и CLI используют один пайплайн и JSON-профили.
- Windows: основная поддерживаемая релизная платформа. Готовится PyInstaller one-folder build и Inno Setup installer.
- Linux: experimental portable-сборка. Работает только при наличии Linux binaries для RealESRGAN/waifu2x/RIFE и установленного или bundled FFmpeg.
- macOS: experimental
.appskeleton. Работает только при наличии macOS binaries для RealESRGAN/waifu2x/RIFE и установленного или bundled FFmpeg.
Каждая ОС собирается на своей ОС. Не пытайтесь собрать полноценный Windows .exe на Linux или macOS .app на Windows.
- Откройте GitHub Releases.
- Скачайте
AnimeEnhancementSetup.exe. - Запустите installer и откройте Anime Enhancement из меню Пуск или ярлыка.
Пользовательский installer не требует ручной установки Python, Poetry, .venv или Python-зависимостей.
- Скачайте
AnimeEnhancement-Linux.tar.gzиз GitHub Releases. - Распакуйте архив.
- Запустите binary:
./AnimeEnhancementЕсли FFmpeg не включен в portable-сборку, установите его через пакетный менеджер, например:
sudo apt install ffmpeg- Скачайте
AnimeEnhancement-macOS.zipили будущий.dmgиз GitHub Releases. - Распакуйте архив.
- Откройте
AnimeEnhancement.app.
Если FFmpeg не включен в bundle, установите его через Homebrew:
brew install ffmpegОсновное dev-окружение единое: Python 3.13.2 + Poetry.
Set-ExecutionPolicy -Scope Process Bypass
.\install.ps1chmod +x install.sh run_gui.sh
./install.shinstall.ps1 и install.sh — dev/bootstrap-скрипты для запуска из исходников. Это не пользовательские installer-ы и их не нужно предлагать обычному пользователю вместо GitHub Release артефактов.
python main.py
python main.py --config profiles/profile.json
python main.py --check-environmentpython -m gui.appили через dev helper:
./run_gui.shЗапускать на Windows:
.\packaging\scripts\build_windows.ps1 -ZipPortableРезультат:
dist/AnimeEnhancement/AnimeEnhancement.exe— portable GUI build.dist/AnimeEnhancement/AnimeEnhancementCLI.exe— helper для запуска пайплайна из GUI без Python.release/windows/AnimeEnhancementSetup.exe— Inno Setup installer, если найденISCC.exe.release/windows/AnimeEnhancement-Windows.zip— portable zip, если указан-ZipPortable.
Если Inno Setup не установлен, скрипт честно выведет инструкцию и оставит готовый portable build в dist/AnimeEnhancement.
Запускать на Linux:
chmod +x packaging/scripts/build_linux.sh
./packaging/scripts/build_linux.shРезультат:
dist/AnimeEnhancement/AnimeEnhancement— portable GUI binary.dist/AnimeEnhancement/AnimeEnhancementCLI— helper для запуска пайплайна из GUI.release/linux/AnimeEnhancement-Linux.tar.gz— portable archive.
Запускать на macOS:
chmod +x packaging/scripts/build_macos.sh
./packaging/scripts/build_macos.shРезультат:
dist/AnimeEnhancement.app— app bundle.release/macos/AnimeEnhancement-macOS.zip— zip для GitHub Releases.
DMG пока не собирается автоматически. Инструкция по генерации .icns лежит в packaging/macos/assets/ICNS_TODO.txt.
build/— промежуточная техническая папка PyInstaller. Пользователю ее не показывать и exe из нее не запускать.dist/— portable-сборка программы после PyInstaller.release/— финальные файлы, которые можно выкладывать в GitHub Releases.
Windows, Linux и macOS используют разные форматы приложений, разные бинарники AI-утилит и разные правила установки. Один “магический” installer на все ОС был бы ненадежным и misleading. В проекте общая packaging-архитектура, но разные сборочные скрипты и артефакты под каждую платформу.
Общие branding assets:
assets/branding/anime_enhancement_logo_1024.pngassets/branding/icon.png— исходник для portable/setup ярлыков.assets/branding/banner_1200x380.png
Windows assets:
packaging/windows/assets/anime_enhancement.ico— Windows.icoдля приложения, setup и ярлыков.packaging/windows/assets/wizard-small.bmppackaging/windows/assets/wizard-large.bmp
Linux assets:
packaging/linux/assets/anime-enhancement.desktop- Иконка desktop-ярлыка берется из общего
assets/branding/icon.png.
macOS assets:
packaging/macos/assets/anime_enhancement.icns— нужно создать на macOS, если нужен app icon.
Лицензия используется из корневого файла LICENSE. Копии LICENSE.txt в platform assets не нужны.
Проект использует:
ffmpegиffprobe;realesrgan-ncnn-vulkan;waifu2x-ncnn-vulkan;rife-ncnn-vulkan.
Windows .exe binaries не подходят для Linux/macOS. Linux и macOS требуют свои binaries в соответствующих папках src/utils/*/*-linux и src/utils/*/*-macos. Dependency checker выводит ошибку на русском, если binary для текущей ОС отсутствует.
FFmpeg ищется так:
- app-local bundled location внутри portable/app сборки или
tools/ffmpeg; - системный
PATH.
Приложение не меняет глобальный PATH пользователя.
Код не должен зависеть от текущей рабочей директории. В dev-режиме ресурсы ищутся в корне репозитория. Во frozen-режиме ресурсы ищутся внутри portable/app bundle, а пользовательские профили, логи и рабочие данные пишутся в пользовательские директории:
- Windows:
%LOCALAPPDATA%\AnimeEnhancement. - Linux:
$XDG_DATA_HOME/anime-enhancementили~/.local/share/anime-enhancement. - macOS:
~/Library/Application Support/AnimeEnhancement.
Windows:
release/windows/AnimeEnhancementSetup.exe— основной пользовательский артефакт.release/windows/AnimeEnhancement-Windows.zip— опциональный portable archive.
Linux:
release/linux/AnimeEnhancement-Linux.tar.gz.
macOS:
release/macos/AnimeEnhancement-macOS.zip.- Будущий
.dmg, когда будет добавлена и проверена сборка DMG на macOS.