# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

ИМЯ ОБРАБОТЧИКА
============
media — управление мультимедиа (фильмы, сериалы, музыка, подкасты, аудиокниги)

ОПИСАНИЕ
============
MediaHandler управляет медиаколлекциями с поддержкой различных
Типы и источники СМИ. Использует серверную часть SQLite (bach.db) с избранным,
Черный список, история воспроизведения и расширенные метаданные для каждого носителя.

ТИПЫ МЕДИА
-----------
  [F] фильм, [S] сериал, [M] музыка, [C] клип, [P] подкаст, [A] аудиокнига, [D] документ

ИСТОЧНИКИ
-------
  netflix, youtube, Spotify, Disney, Prime, AppleTV, Twitch, местные

ОПЕРАЦИИ
===========

добавить
  Добавить новые медиа
  Использование: bach media добавляет «Название» [--type TYPE] [--source SOURCE] [--url URL]
           [--исполнитель "..."] [--альбом "..."] [--канал "..."] [--сезон N]
           [--эпизод N] [-рейтинг 1-5] [--tags "tag1,tag2"] [--desc "..."]
           [--path "/путь/к/файлу"]

список
  Список и фильтрация медиа
  Использование: список медиа-файлов Баха [--type TYPE] [--source SOURCE] [--fav] [--limit N]
  Флаги:
    --type TYPE Показать только один тип носителя
    --source SOURCE Фильтровать только один источник
    --fav Показать только избранное
    --limit N Макс. N записей (по умолчанию: 20)
  Вывод: значок, избранное(*), идентификатор, заголовок, источник, рейтинг

поиск.
  Полнотекстовый поиск по названию, исполнителю, альбому, каналу, тегам, описанию
  Использование: поиск в СМИ «поисковый запрос»
  Результат: до 30 обращений со значком, избранным, идентификатором, заголовком, источником

показать.
  Подробный просмотр носителя с полными метаданными
  Использование: медиа-шоу Баха <id>
  Вывод: все поля (название, тип, источник, исполнитель, альбом, сезон/эпизод,
          Рейтинг, теги, описание, избранное, статус в черном списке, дата,
          последние 5 игр)

править
  Редактировать носитель (любые поля)
  Использование: bach media edit <id> --title "New" [--type TYPE] [--source SOURCE]
           [--url URL] [--desc "..."] [--исполнитель "..."] [--альбом "..."]
           [--канал "..."] [--сезон N] [--серия N] [--рейтинг 1-5]
           [--tags "tag1,tag2"] [--notes "..."] [--path "/path"]

fav
  Установить/удалить избранное
  Использование: bach media fav <id> [--remove]
  Флаг:
    --remove Удаляет статус избранного

черный список
  Блокировка/разблокировка мультимедиа (скрыто в списке/поиске)
  Использование: черный список СМИ Баха <id> [--remove]
  Флаг:
    --remove Разблокировать

открыть
  Открытый носитель: начальный URL-адрес в браузере или файле. Обновлено воспроизведение
  История и временная метка последнего_открытия_в. Заблокированные СМИ не могут
  быть открытым.
  Использование: bach media open <id>

история
  История воспроизведения всех носителей (сначала самые новые)
  Использование: история СМИ Баха [--limit N]
  Показывает: метку времени, значок, идентификатор, заголовок, источник, открытый метод 

статистику.
  Обзор статистики: общее количество, избранные, заблокированные, игры,
  Распределение по типу и источнику
  Использование: статистика СМИ Баха

помощь
  Посмотреть эту справку
  Использование: bach media help

ПРИМЕРЫ
=========

# Добавить носитель (фильм на Netflix)
bach media add "Inception" --type movie --source netflix --url "https://..." \
  --rating 5 --desc "Шедевр научной фантастики"

# Добавить носитель (музыкальный альбом)
bach media add "Abbey Road" --type music --source spotify --artist "The Beatles" \
  --album "Abbey Road" --year 1969

# Добавить носитель (локальный файл)
bach media add "Dokumentation" --type document --source local \
  --path "C:\\Videos\\doku.mp4"

# Показать все фильмы с избранным
bach media list --type movie --fav

# Найти сериал
bach media search "Breaking Bad"

# Захватить сериал с сезоном/серией
bach media add "Breaking Bad S01E01" --type series --source netflix \
  --season 1 --episode 1 --rating 5

# Отметить среду как любимую
bach media fav 42

# Удалить статус избранного
bach media fav 42 --remove

# Отметить среду как черный список
bach media blacklist 99

# Открыть среду
bach media open 42

# Показать статистику
bach media stats

ФАЙЛЫ
=======

База:hub/media.py
База данных: данные/bach.db
Таблицы: media_items, media_history
Конфигурация: Нет (все о флагах CLI)

СМОТРИ ТАКЖЕ
==========

  bach_api.media.* Программный API
  Hub/base.py Базовый класс BaseHandler
  docs/API.md Документация по API BACH
