видеофайл: ускоренная перемотка вперед и назад не работает - PullRequest
4 голосов
/ 05 февраля 2012

У меня есть несколько видеоклипов в форматах flv и mp4, которые не ускоряются вперед или назад к произвольным точкам (временным индексам).По сути, у каждого видеоклипа есть 4 или 5 мест, на которые вы можете переместиться назад или вперед, но вы не можете пересылать или назад к произвольным временным индексам.Мне было интересно, есть ли в любом случае возможность изменить или преобразовать видео, чтобы я мог пересылать или назад к любому индексу времени на видеоклипе.

Спасибо за вашу помощь

1 Ответ

6 голосов
/ 25 апреля 2012

Как правило, вы не можете искать произвольные временные позиции в формате видеофайла, таком как MP4. Это связано с тем, что видеопроигрыватели используют контейнер для предоставления смещения файлов для видеокадров, к которым можно получить произвольный доступ, и только определенные кадры соответствуют требованиям. (Большинство видеокадров не могут быть декодированы сами по себе, но полагаются на информацию из нескольких предыдущих кадров.)

Тем не менее, многие видеофильмы обеспечивают иллюзию поиска в произвольных временных точках путем предоставления множества точек произвольного доступа. Другими словами, размер GOP остается небольшим (ключевые кадры каждую 1 секунду типичны), и эти ключевые кадры упоминаются в структуре MP4. Ваши видео, вероятно, закодированы с большими размерами GOP, поэтому у них очень мало точек поиска.

Я подозреваю, что если вы перекодировали свои видео с помощью такого инструмента, как FFmpeg с настройками по умолчанию, вы обнаружите, что они гораздо удобнее при поиске.

...