Как сохранить часть видео-контента из flv файла?

День добрый!

Имеется некий абстрактный сервер, который отдает видео-контент в flv. Он так же умеет отдавать любой фрагмент файла любой длины. Всегда известно — полный размер файла, в каком формате закодировано видео и аудио.
Допустим есть видео ролик длиной 5 минут. Возможно ли не скачивая весь ролик, сохранить только выбранный видео фрагмент, допустим в 1 минуту, как уже полноценный ролик?
Какая дополнительная информация нужна для реализации?

Буду благодарен за любую информацию по этой теме!
  • Вопрос задан
  • 3767 просмотров
Пригласить эксперта
Ответы на вопрос 3
@xaoc80
Если есть ссылка на файл, то можно сделать так:

ffmpeg -i [ссылка] -ss 00:00:00 -t 00:00:60 [название файла, куда сохранить]

— ss указать с какого момента в секундах
— t — продолжительность времени в секундах

Заодно и траскодировать можно
Ответ написан
Anonym
@Anonym
Программирую немного )
Не совсем понятно, в чем проблема, если умеет отдавать любой фрагмент файла любой длины. В случае с псевдостримингом, обычно если сделать запрос типа example.com/video.flv?start=10&stop=30, то на выходе получим 20-секундный flv ролик, который можно скачать и сохранить.
Ответ написан
@ToSHiC
В начале flv файла есть таблица с соответствием смещения в байтах для каждой секунды ролика. Формат не подскажу, но уверен, что утилиты для просмотра этой таблицы есть (можно попробовать github.com/unnu/flvtool2). Далее, можно скачать ролик начиная с нужного офсета и добавить перед этим куском 13-байтный заголовок «FLV\x1\x5\0\0\0\x9\0\0\0\0», должен получиться валидный flv файл.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы