Принудив индивидуальные h.264 внутрикалы (ключевые кадры) во время Encode?

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

Вопрос

У меня есть последовательность видео, которую я хотел бы пропустить по конкретным кадрам во время воспроизведения (мой игрок реализован с использованием AvPlayer в iOS, но это случайно). Поскольку эти кадры упадут с непредсказуемыми интервалами, я не могу использовать стандартную функцию «ключа каждые n кадров/секунд», присутствующая в большинстве видеокодеров. Я, однако, знаю целевые рамки заранее.

Чтобы сделать это как можно эффективно, мне нужно заставить целевые кадры быть I-Frames во время кодирования. В идеале в каком -то графическом интерфейсе, который позволил бы мне чистить кадр, отметьте его как ключ, а затем (re) кодировать мое видео.

Если такой инструмент недоступен, у меня есть ощущение, что это, вероятно, можно сделать, прокатив пользовательский кодировщик с LibavCodec, но я бы предпочел использовать инструмент более высокого уровня (и предпочтительно сценария) для выполнения работы, если графический интерфейс является Это возможно. Это та задача FFMPEG или Mencoder может быть согнут?

У кого -нибудь есть техника для этого? Кроме того, вполне возможно, что это невозможная задача из -за некоторого фундаментального невежества, которое я имею в кодеке H.264. Если это так, пожалуйста, поставьте меня правильно.

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

Решение 2

Ответил на мой собственный вопрос: можно установить пользовательские ключи сжатия в Apple Compressor.

Маркеры сжатия также известны как маркеры ручного сжатия. Это маркеры, которые вы можете добавить в окончательную Pro-последовательность (или в окне предварительного просмотра компрессора), чтобы указать, когда компрессор должен генерировать IPEG I-Frame во время сжатия.

Источник.

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

ffmpeg имеет -force_key_frames Вариант, который принимает серию произвольных временных метров, а также другие способы определения кадров. От документация:

-force_key_frames 0:05:00,...

Не могли бы вы использовать маркеры главы для прыжков между разделами? Не идеальное решение, но намного проще достичь.

Вы можете использовать это программное обеспечение:http://www.applesolutions.com/bantha/mh.html

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