Files
GenAudioBookInfo/wiki/Home.md
2026-02-23 14:27:14 +03:00

3.1 KiB
Raw Blame History

GenAudioBookInfo

Автоматический каталогизатор аудиокниг с обогащением метаданных из торрент-трекеров и LLM.

Что делает инструмент

  1. Сканирует каталог с аудиокнигами — находит все подпапки с аудиофайлами (mp3, m4b, ogg, flac, opus, aac и др.).
  2. Извлекает метаданные из аудиофайлов: автор, название, год, жанр, длительность через ID3/Vorbis теги.
  3. Ищет книгу на трекерах через TorrAPI по имени папки и/или тегам — получает расширенное описание.
  4. Опционально уточняет автора и название через LLM (OpenRouter).
  5. Создаёт структуру result/<Буква>/<Автор>/<Автор — Книга [Год]>/ с metadata.json и обложкой.
  6. Папки, которые не удалось найти, уходят в ERROR/; дубликаты — в DUPLICATE/.

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

# Сборка
go build -o genaudiobookinfo ./cmd/genaudiobookinfo

# Первичная настройка
cp .env.example .env
# Отредактировать .env: задать DIR_IN, TORRAPI_URL, OPENROUTER_API_KEY

# Запуск (входная папка из DIR_IN в .env)
./genaudiobookinfo

# Явное указание каталога
./genaudiobookinfo D:\Audiobooks

# С переопределением параметров
./genaudiobookinfo -workers 4 -timeout 10m D:\Audiobooks

Полная документация по флагам: CLI-Usage.

Структура вики

Страница Содержание
Installation Требования, сборка из исходников
Configuration Справочник .env (все переменные конфигурации)
CLI-Usage Флаги командной строки, примеры
Architecture Чистая архитектура, слои, паттерны
Algorithm Шаги конвейера, ретрай, ERROR, DUPLICATE
Output-Structure Структура result/, формат metadata.json
TorrAPI Интеграция с торрент-трекерами
OpenRouter LLM-интеграция для нормализации метаданных

Поддерживаемые форматы

mp3 · m4b · m4a · ogg · opus · flac · aac · wma · wav · aiff

Требования

  • Go 1.22+
  • TorrAPI (локальный или удалённый сервер)
  • Ключ OpenRouterопционально, для нормализации автора/названия через LLM

Ссылки

  • Репозиторий: https://github.dfv24.com/fofanov/genaudiobookinfo
  • Документация OpenRouter: OpenRouter

Sync test 2026-02-23T14:27:00