Как разделить flv-файл по размеру с помощью FFmpeg, mencoder или чего-то еще?

StackOverflow https://stackoverflow.com/questions/1045430

Вопрос

Мне нужно разбить flv-файл на фрагменты известного размера на сервере Linux.Например, размер моего исходного файла составляет 9 МБ, а фрагмента - 4 МБ.Итак, я должен получить 3 части - 4 МБ, 4 МБ и 1 Мб.

Кажется, что FFmpeg может разделяться только по времени.

Mencoder может начинаться по времени (-ss TIME) и заканчиваться по размеру ( -endpos SIZE MB).Но если начальная секунда первого фрагмента, очевидно, равна 0, то как я могу получить начальную секунду для следующих фрагментов?

У вас есть какие-нибудь предложения?

Заранее благодарю.

Это было полезно?

Решение

вычислите ~ время (сек) каждого блока и используйте -ss X -t X+ avg_block_time для разделения видео

Другие советы

Существует утилита командной строки, которая делает именно это: http://mpgtx.sourceforge.net/

mpgtx -3 movie.mpg -b mysplit

разделит фильм на 3 части с именами mysplit-1.mpg, mysplit-2.mpg, mysplit-3.mpg

Тем не менее, у меня, кажется, возникают проблемы со звуком, когда я использую это - но я не знаю, возникнет ли у вас такая же проблема.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top