есть ли способ кодировать видео так, чтобы прямое и обратное воспроизведение было очень плавным? Возможно ли это в h264?
мое понимание основной структуры кодирования видео заключается в том, что если видео сделано из кадров
f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 ...
, которые кодируются как
i1 d2 d3 d4 d5 i6 d7 d8 d9 d10 ...
здесь
i(k) == f(k), d(k) == f(k) - f(k-1)
ie i
- это iframe и d
это разница кадров, так что размер видео намного меньше, чем размер всех изображений (кадров) потому что дельты меньше целых кадров. Потом f8
, Я поток и декодировать из ближайшего предыдущего iframe i6
и применить дельт.
поэтому/декодирования потокового цена за каркас идти вперед по стоимость объекта iframe. Но возвращаясь назад, можно сделать гораздо больше. Например, если на f6
Я хочу перейти к предыдущему кадру f5
, мне нужно декодировать все из предыдущего iframe f1
. Есть ли способ кодировать вещи, чтобы это не например, путем дополнительного хранения удобной (и как-то избыточной) информации f6 - f5
?
Я знаком с ffmpeg и в идеале хотел бы его использовать.
мой вариант использования следующий:
Я потокового видео на мобильный клиент. Видео всегда приостанавливается, и пользователь ищет назад и вперед через ползунок. Отсталых ищу порой замирал, и я верю, что, когда он проходит через кадр и вернуться много и redecode чтобы добраться до предыдущего кадра. Вперед, это нормально.