modelscope/FunClip

Инструмент для транскрипции видео, генерации субтитров и создания клипов с помощью FunASR и LLM, с локальным интерфейсом Gradio.

Видео⭐ 6 334Pythonпоследний релиз: v2.2.1
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

FunClip — это локальный инструмент для автоматизированного нарезки видео, использующий ASR-модели FunASR для транскрибации и LLM для интеллектуального выбора фрагментов.

Зачем нужен

Инструмент решает задачу извлечения релевантных отрезков из длинных видео на основе текста или говорящего. Он полезен тем, что позволяет быстро создавать клипы, используя точное распознавание речи Paraformer и возможности LLM (например, Qwen, GPT) для анализа субтитров и определения таймкодов.

Что можно реализовать

  • Нарезка видеозаписей подкастов или лекций по конкретным темам с помощью LLM
  • Извлечение фрагментов, где говорит определённый спикер, с использованием модели CAM++
  • Создание коротких видео-клипов (shorts/reels) из длинных выступлений
  • Генерация SRT-субтитров для видео с возможностью точной вырезки частей
  • Транскрибация и обработка видео с учётом специфических терминов через кастомные hotwords

Ключевые возможности

  • Интеграция LLM для интеллектуальной нарезки видео по смыслу
  • Высокая точность распознавания китайского и английского языка (Paraformer-Large, Fun-ASR-Nano, SenseVoice)
  • Поддержка распознавания спикеров (CAM++) и кастомизации терминов (SeACo-Paraformer)
  • Локальный запуск через Gradio UI с возможностью доступа через браузер
  • Автоматическая генерация SRT-файлов для полных видео и вырезанных фрагментов

👤 Кому подойдёт: разработчики, исследователи, создатели контента, работающие с видео и аудио данными

Релизы

v2.2.1minor
🕐 20 дн назад · релиз на GitHub ↗

FunClip v2.2.1: надежное рендеринг цветов субтитров через Pillow без ImageMagick и уточнение статуса анонимности MOSS.

  • Fixed: Субтитры теперь рендерятся через Pillow RGBA с встроенным шрифтом, что делает цвета стабильными и избавляет от зависимости от ImageMagick.
  • Added: Добавлена защита целостности релиза: архивы сопровождаются файлом SHA256SUMS для проверки сумм.
  • Fixed: Уточнена документация по MOSS-Transcribe-Diarize: модель возвращает только анонимные метки говорящих без идентификации личности.
  • Added: Требование к зависимости funasr обновлено до версии 1.4.9 и выше для корректной работы интеграции субтитров и MOSS.
v2.2.0minor
🕐 21 дн назад · релиз на GitHub ↗

В FunClip v2.2.0 добавлена интеграция модели MOSS для транскрипции и диаризации через vLLM.

  • Added: Добавлена опция --model moss для работы с моделью MOSS-Transcribe-Diarize через vLLM.
  • Added: Поддержка генерации SRT с идентификаторами спикеров и клиппинга по спикерам, включая короткие реплики.
  • Fixed: Внедрена явная обработка ошибок при усечении финального сегмента MOSS вместо молчаливого игнорирования.
  • Added: Введена поддержка аутентификации через переменную окружения MOSS_API_KEY.
  • Точная обрезка по тексту по-прежнему требует Paraformer; внешние VAD и модели спикеров не поддерживаются.
v2.1.1patch
🕐 1 мес назад · релиз на GitHub ↗

Патч для стабильности: исправлен HTTP 500 в Gradio, добавлены MiniMax M2.7, улучшена работа с текстом и безопасностью контейнеров.

  • Fixed: Исправлена ошибка HTTP 500 на главной странице за счёт фиксации версии Starlette <1.0 для совместимости с Gradio 4.
  • Added: Добавлена поддержка моделей MiniMax M2.7 и MiniMax M2.7-highspeed в маршрутизацию LLM для генерации клипов.
  • Fixed: Поиск текста для клипов теперь выполняется без учёта регистра, при этом оригинальные таймкоды и текст сохраняются.
  • Fixed: Флаг --listen теперь корректно пропускает проверку localhost в контейнерах, не включая публичный доступ без явного --share.