Есть куча 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 при попытке отконвертировать — падает.
А вот просто проигрывателями играется это видео отлично и без проблем.
Есть у кого мысли, куда копать?