LINUX.ORG.RU

Отконвертировать MP4 с переменным фреймрейтом во что угодно с постоянным.


0

1

Есть куча mp4 с переменной частотой кадров, от 10 до 20, скажем.

Такой формат не понимает тот же телевизор. Нужно конвертнуть, например, в Матрёшку. И тут — облом. ffmpeg вообще не берётся конвертировать переменный фреймрейт:

matroska @ 0xf708c0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 90 >= 90
av_interleaved_write_frame(): Invalid argument

на этапе вычисления параметров выходного формата

mencoder, если ему не оказвать фреймрейт выдаёт нечто, мгновенно проигрывающееся за пару секунд с огромной скоростью. Если указать прямо, скажем, -fps 30, то делает вид, что работает, даже выкидывает периодические «1 duplicate frame(s)!», видимо, демонстирируя умножение частоты, но в результате получается видео с совершенно десинхронизированным звуком.

vlc при попытке отконвертировать — падает.

А вот просто проигрывателями играется это видео отлично и без проблем.

Есть у кого мысли, куда копать?

★★★★★

Ответ на: комментарий от unanimous

Да нет, хотелось бы чего-то более прямого :)

KRoN73 ★★★★★
() автор топика

HandBrake. Выставить постоянный fps, и конвертить в mkv. Есть консольная версия.

anonymous
()

Закинь один из файлов куда нибудь. Тогда скажу что то конкретное.

Rodegast ★★★★★
()

Попробуй другую версию mencoder. он может на одной версии нормально кодировать на другой нет. Сам с таким часто сталкиваюсь.

qwerta
()

avidemux, серьезно.

anonymous
()

свежайший ffmpeg. никакого handle бреда

punya ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.