Skip to main content

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

Веб-интерфейс

Текущий интерфейс представляет собой одну страницу с header, центральным блоком ввода, встроенными карточками результата и footer.

Базовый Сценарий

  1. Откройте веб-интерфейс.
  2. Вставьте ссылку на поддерживаемое медиа.
  3. Нажмите Скачать, чтобы извлечь метаданные и форматы.
  4. Изучите карточку с превью.
  5. Выберите Видео или Аудио.
  6. Выберите один из доступных форматов.
  7. Нажмите Подготовить файл.
  8. После ответа backend нажмите Скачать файл.

Режимы

Видео

  • Используются реальные форматы, извлечённые с платформы
  • В backend передаётся выбранный format_id
  • Подходит для сохранения исходного качества потока

Аудио

Доступные форматы в UI:

  • mp3
  • m4a
  • opus
  • wav

В этом режиме backend извлекает и конвертирует аудио через yt-dlp и FFmpeg.

Выбор Форматов

Основной поток больше не использует громоздкий select как раньше. Вместо этого интерфейс показывает:

  • переключатель режима
  • компактный раскрывающийся блок со списком форматов
  • отдельную карточку действий для подготовки и скачивания файла

Это соответствует текущему стилю лендинга.

Поведение Скачивания

Подготовленный файл больше не открывается автоматически.

Backend возвращает прямой download_url, а фронтенд показывает отдельную кнопку Скачать файл. Это уменьшает вероятность того, что браузер просто откроет медиа в новой вкладке.

Типовые Проблемы

Не Удалось Получить Информацию О Медиа

Причины могут быть такими:

  • неверная ссылка
  • приватный или недоступный контент
  • проблема на стороне платформы
  • ошибка извлечения через yt-dlp

Запрошенный Формат Недоступен

Обычно это означает, что платформа больше не отдаёт указанный format_id или текущий медиа-объект доступен только в другой комбинации потоков.

Что можно попробовать:

  • заново извлечь список форматов
  • выбрать другой поток
  • переключиться в аудио-режим, если нужен только звук

Примеры API

Извлечение Информации

curl -X POST http://localhost:8080/api/extract \
-H "Content-Type: application/json" \
-d '{"url":"https://www.youtube.com/watch?v=..."}'

Скачивание Видео

curl -X POST http://localhost:8080/api/download \
-H "Content-Type: application/json" \
-d '{
"url":"https://www.youtube.com/watch?v=...",
"format":"137",
"audio_only":false
}'

Скачивание Аудио

curl -X POST http://localhost:8080/api/download \
-H "Content-Type: application/json" \
-d '{
"url":"https://www.youtube.com/watch?v=...",
"format":"mp3",
"audio_only":true
}'