Столкнулся с необходимостью точно разрезать MKV - не по ключевым кадрам, а по фреймам или ms. Знаю, что без частичного перекодирования - фрагмента между соседних ключевых кадров, в моём случае это 10 секунд - не обойтись (см.
Fragm-1,
скачать фрагменты).
Погуглил, почитал на форумах - проблемой интересуются часто, но как правило ответ один: точно без пережатия разрезать нельзя. А как удобно и быстро разрезать с частичным пережатием - инфы практически нет.
Нашёл это:
Ross. D. Cherry писал(а):
Выхода два, и все равно придется перекодировать видео, если ключ-кадр не расположен ТОЧНО на заданном вами отрезке:
1.Перекодировать видео в другой кодек и потом порезать.
2.Перекодировать видео в тот же АВЦ, но при этом расставить ключ-кадры принудительно, на заданные вами места.
В ссылке ниже описана инструкция по принудительной расстановке ключ-кадров, следуйте
Сжатие при помощи Gordian Knot или MeGUI -> Загрузка проекта в MeGUI и настройка параметров сжатия -> п.3. Принудительная расстановка ключевых кадров в нужных местах (для кодека x264).
Обработка и пересжатие видео [инструкция]
Попробовал 2-й вариант. Отрезал (
mkvToolNix) этот фрагмент и засунул в
MeGUI. Конвертация почему-то не пошла (может 10 сек. мало?). Отрезал фрагмент побольше (см.
Fragm-2, 21 сек), принудительно прописал в нужном месте I-фрейм, перекодировал в тот же АВЦ и получил MKV-шку, которая точно разрезалась в нужном месте! (см.
Fragm-3, 15 сек)
Но радость моя была преждевременна: полученный фрагмент корректно не присоединился к основному файлу, mkvToolNix выдал предупреждение:
скрытый текст
Предупреждение: Номер дорожки 1 от файла 'E:\_NEW\ReGenesis.(S03.2007).720p.HDTV.Rus(MVO.DVO).Eng\ReGenesis.s03e01-02_1-002 (2)-001.mkv' не может вероятно быть приложен правильно к номеру дорожки 1 от файла 'E:\_NEW\ReGenesis.(S03.2007).720p.HDTV.Rus(MVO.DVO).Eng\ReGenesis.s03e01-02_1-001.mkv': Личные данные кодека не соответствуют (длины: 42 и 73). Пожалуйста удостоверьтесь, что получающийся файл запускает правильно все время. Автор этой программы не будет вероятно оказывать поддержку для проблем воспроизведения с получающимся файлом.
В итоге, фрагменты по-отдельности (см.
Fragm-4 и
Fragm-3) проигрываются правильно, а вместе - нет (см.
Fragm-4&3, 27 сек)

Получается, что я при перекодировании фрагмента выставил не те настройки? А какие нужны? Может есть прога, которая может автоматически применить те же настройки, только добавить в нужных местах I-фреймы?
Или даже сама сделает автоматически частичное перекодирование при обрезке, как это делает
VirtualDub (не Mod) последних версий с avi-шками в режиме "умный рендеринг"?