Видеоплагин для DeepSeek Harness: сжимает видео в одну раскадровку из 9–16 кадров с нумерацией и таймкодами по смене планов, добавляет внизу шкалу громкости и выравнивает субтитры или транскрипцию речи по кадрам; после просмотра модель может запросить увеличенные кадры для выбранных фрагментов.
Количество звёзд: 40
Причины
- Решает проблему высокой стоимости «просмотра» видео моделью: по словам автора, один кадр занимает около 384 токенов, и для просмотра всего 5-минутного видео достаточно одного изображения, тогда как подход «один кадр — одно изображение» для того же охвата потребовал бы 3,072–6,144 токенов.
- Точки склейки определяются по изменению цвета в пространстве HSV, для каждого кадра выбирается самый чёткий из трёх, а быстрые монтажные склейки получают больше кадров; автор утверждает, что на собственном тестовом видео были найдены все 9 жёстких склеек, тогда как стандартный порог ffmpeg scdet обнаружил только 4.
- Для длинных видео можно использовать параметры from / to, чтобы просматривать по 2–5 минут за раз, избегая преждевременного раскрытия сюжета; режим textOnly позволяет читать транскрипцию постранично без генерации изображений.
- Нет зависимостей времени выполнения, кроме ffmpeg, и отсутствуют веса моделей; в репозитории есть 154 тестов.
Использование
- Требуется Node 20+, ffmpeg / ffprobe должны быть в PATH; для обычного профиля используйте dsh plugin --profile web add dsh-video-storyboard, для настольного профиля — скрипт node scripts/install-dev.mjs из репозитория, после установки перезапустите DSH.
- В диалоге вызывайте video_storyboard({ input: "путь к локальному видео" }), для детального просмотра используйте video_zoom; из командной строки можно сначала выполнить node bin/storyboard.mjs your-video.mp4 --cells 9 --text, чтобы увидеть, что получит модель.
- Если в видео нет субтитров, необходимо настроить совместимый с OpenAI сервис транскрипции речи /audio/transcriptions (установите переменную DSH_ASR_KEY); без него будут выводиться только изображение и шкала громкости.
Риски
- Используемая модель должна поддерживать ввод изображений; даже при большом количестве кадров нет гарантии, что каждый план будет просмотрен, автор также отмечает, что быстрые движения камеры могут ошибочно определяться как точки склейки.
- Для передачи веб-ссылок (например, на Bilibili) требуется самостоятельно установить yt-dlp и предоставить файл cookies.txt, что затрагивает ваши учётные данные и условия использования платформы; показатели скорости получены автором в ходе самостоятельного тестирования.