Что такое интервал IDR, и почему он иногда «слишком большой»?

Что такое интервал IDR, и почему он иногда «слишком большой»?

Вступление

При добавлении видеоклипа в проект KineMaster вы можете иногда видеть предупреждение о том, что интервал IDR слишком велик. В большинстве случаев вы можете игнорировать это предупреждение без каких-либо серьезных проблем. В этой статье мы объясним, что такое интервал IDR (технический термин), какие проблемы могут быть вызваны слишком большим интервалом IDR и (в редких случаях, когда вы испытываете такие проблемы) что вы можете сделать для их решения.

Что такое интервал IDR в Kinemaster?

В KineMaster интервал IDR – это среднее время между кадрами IDR в видеоклипе.

Что мне делать, когда я вижу это сообщение?

В двух словах: если вы не испытываете никаких неудобств при редактировании, вы можете игнорировать это сообщение.

Какие проблемы могут возникнуть?

Для экспорта и совместного использования видео вы никогда не столкнетесь с слишком большим интервалом IDR.

Однако при редактировании могут возникнуть две проблемы:

  • У вас могут быть проблемы с обрезкой или разделением клипа. На некоторых устройствах и при определенных разрешениях клипы можно обрезать или расделять в течение 4 секунд от кадра IDR, чтобы вы могли найти некоторые места в видео, где недоступны опции «split» или «trim» (они отображаются в пользовательском интерфейсе приложения и не могут быть выбраны).
  • При предварительном просмотре видео (перед его совместным использованием) возможно, что клипы без достаточного количества кадров IDR будут иметь плохую производительность при предварительном просмотре (вы можете увидеть последний кадр предыдущего клипа «заморожен» ненадолго, пока клип без достаточного количества кадров IDR готовится для Предварительного просмотра, или вы можете увидеть некоторые «пропуски» во время воспроизведения. Однако это не влияет на конечный результат при совместном использовании.

Если вы не испытываете ни одной из этих проблем, вы можете безопасно игнорировать предупреждение о интервале IDR.

Насколько большой должен быть интервал IDR?

Для наилучшего использования средний интервал IDR должен составлять 4 секунды или меньше. Большинство телефонов записывают видео с интервалом IDR равном 1-й секунде; в пределах 4-секундного рекомендованного предела KineMaster. Однако видео, записанное в других приложениях, на других устройствах или загружаемое из Интернета, может иметь разные интервалы IDR.

Как проверить интервал кадров IDR?

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

Что делать, если интервал IDR слишком велик, и это вызывает проблемы с редактированием?

Если у вас есть возможность перекодировать видео из исходного источника (например, если вы создали его в другом приложении и можете изменить настройки кодировки), лучший способ – настроить параметры. В большинстве приложений есть две связанные настройки: интервал I-кадра (который должен быть установлен примерно на 1 секунду), и обычно это вариант, чтобы сделать каждый кадр IDR, который должен быть включен, если он доступен.

Если у вас нет возможности перекодировать исходный материал, существует другая возможность. Прежде чем приступать к работе, посмотрите, можете ли вы вообще отредактировать клип. Если у вас нет каких-либо проблем с его редактированием, вы можете игнорировать это предупреждение. (Опять же, это не влияет на экспорт). Если проблема настолько серьезная, что вы не можете комфортно редактировать, не решая проблему кадра IDR, попробуйте следующее: Создайте пустой проект KineMaster, добавьте к нему проблемный клип и экспортируйте проект. Экспортированный клип будет иметь нормальный интервал IDR и может быть отредактирован без каких-либо затруднений. Конечно, качество видео будет уменьшено, потому что оно было повторно закодировано дважды (вы можете установить скорость передачи бит выше, чтобы компенсировать этот момент).

Зачем нужен интервал IDR?

Это связано с тем, как кодируется видео H.264. H.264 является одним из наиболее распространенных кодировок, используемых в настоящее время для видео, особенно на мобильных устройствах. Обычно видео H.264 хранится внутри контейнера .mp4, .mov или .3gp. Вы также можете увидеть его как AVC или MPEG-4 AVC.

При кодировании видео H.264 видеокадр может храниться двумя различными способами:

  • в виде разницы (изменения) от другого кадра (обычно предшествующего кадра, но не всегда)
  • в качестве нового полностью кодированного кадра (рамок IDR)

Как вы могли догадаться, сохранение отличия от другого фрейма занимает намного меньше места.

С другой стороны, если вы хотите начать играть с того места, которое не является началом видео, вам нужно начать с полного кадра (рамок IDR) и работать вперед до точки, в которой вы хотите играть.

Частота кадров IDR зависит от кодировщика. Как правило, для видео, записанного на вашем мобильном телефоне, кадры IDR устанавливаются каждые 1 ~ 2 секунды (поэтому каждый 30-й или 60-й кадр представляет собой фрейм IDR).

Технически возможно иметь один кадр IDR в самом начале видео. Представьте себе часовой видеоролик с одним фреймом IDR в начале. Если вы хотите играть с 30-минутной точки, все видео до этой точки необходимо декодировать. Предположим, декодер может декодировать видео с 8-кратной скоростью воспроизведения (некоторые кодировщики могут декодировать только с 1-кратной скоростью, это зависит от множества факторов). В 8 раз быстрее – это означает, что для начала воспроизведения видео потребуется 4 минуты. Иногда вы можете видеть это на ПК-плеерах: вы пытаетесь найти середину видеоклипа, и для начала воспроизведения требуется очень много времени.

В результате тестирования мы определили, что почти все устройства могут быстро декодировать видео, поддерживая просмотр в реальном времени видео с интервалами кадров IDR до 4 секунд (даже при использовании видеослоев). Но при интервале более 4 секунд быстро декодировать видео становится намного труднее. Интервал сильно зависит от разрешения видео и устройства. Некоторые устройства класса high-end могут обрабатывать контент 1080p с интервалом IDR 6 или даже 10 секунд.

Для приемлемого быстродействия, если интервал IDR составляет более 4 секунд, в программе показывается предупреждение, что при редактировании видео могут возникнуть сложности.

Kinemaster