Skip to main content

Инструмент для автоматического создания субтитров для аниме

Project description

AnimeSub

Инструмент для автоматического создания субтитров из видео- или аудиофайлов.
Оптимизирован для японского языка (подходит для аниме, интервью и т.п.).


⚡ Быстрый старт

Локальный файл → субтитры:

animesub -i input_file.mp4

YouTube → субтитры:

animesub -u "https://youtube.com/watch?v=XXXX"

📦 Установка

Из PyPI:

pip install animesub

💡 Для работы на CUDA желательно поставить torch и torchaudio под свою версию CUDA:

pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu126

Не забудьте установить ffmpeg и demucs:

conda install ffmpeg -c conda-forge
pip install demucs

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

Локальный файл

animesub -i input_file.mp4

Создаст input_file.srt в текущей папке.

Скачивание по URL (YouTube и др.)

animesub -u "https://youtube.com/watch?v=XXXX"

Сохранит результат в output.srt.


🔧 Аргументы CLI

Аргумент Описание
-i, --input_file Путь к локальному видео или аудио
-u, --url URL видео/аудио (YouTube)
-o, --output Путь к выходному .srt (по умолчанию: <имя_файла>.srt или output.srt для URL)
-m, --model Модель ASR: tiny, base, small, medium, large, large-v2, large-v3,kotoba-faster, kotoba-whisper, kotoba-whisper-v2.2, kotoba-faster (по умолчанию: small)
-d, --device cpu или cuda (по умолчанию определяется автоматически)
--demucs-model Модель сепарации вокала: htdemucs или mdx_extra_q (по умолчанию: htdemucs)
--merge-silence Максимальная пауза между VAD-сегментами для объединения (по умолчанию: 0.6)

📌 Примеры

CPU + base модель

animesub -i input.mp3 -m base -d cpu

Kotoba-модель с кастомной паузой

animesub -i anime.mkv -m kotoba-whisper-v2.2 --merge-silence 0.8 -d cuda

С YouTube

animesub -u "https://youtube.com/watch?v=XXXX" -m kotoba-faster -d cuda

С указанием файла вывода

animesub -i episode.mp4 -o subs/episode01.srt

🎯 Как работает

  1. Отделение вокала (Demucs)
  2. Детекция речи (Silero VAD)
  3. Транскрипция (Whisper или Kotoba-Whisper)
  4. Пунктуация (XLM-RoBERTa через punctuators)
  5. Экспорт в .srt с форматированием

🛠️ Использование как библиотеки

from AnimeSub.main_logic import process_audio

process_audio(
    input_path="video.mp4",
    output_path="subs.srt",
    model_name="kotoba-whisper-v2.2",
    device="cuda",
    merge_silence=0.6
)

📜 Лицензия

MIT


👤 Автор

Ivan Tyumentsev 📧 ivanfufa184@gmail.com 🔗 GitHub

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

animesub-1.0.0.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

animesub-1.0.0-py3-none-any.whl (27.9 kB view details)

Uploaded Python 3

File details

Details for the file animesub-1.0.0.tar.gz.

File metadata

  • Download URL: animesub-1.0.0.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for animesub-1.0.0.tar.gz
Algorithm Hash digest
SHA256 f3e27aa9766205f28a3f476b5b84320cf5faa10a9f59a3500939523b5bffa0fa
MD5 2364f16de7abd5f6a36e07a10ea8bc4d
BLAKE2b-256 c0c225fa5886ce9eeff6972e223c9e68ded10a02281de7ca28641099d9eaf086

See more details on using hashes here.

File details

Details for the file animesub-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: animesub-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 27.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for animesub-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cce931e7bde685beaca8088ba097c372f589e234b8f6a3182b38b5423b20837b
MD5 9f812378856ddeaf9a8e672dd27480a5
BLAKE2b-256 a573518e90a475cd1367c6c366a23cd5fc5ac40b2ccdd8a8a15e1fc77578730f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page