The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Google, Cisco, Mozilla и Microsoft объединили усилия в созда..."
Отправлено Аноним, 11-Сен-15 16:17 
> Есть правда бонус: если декодеру не хватает времени, B-кадр можно и не
> декодировать совсем, вместо этого сразу и оперируя будущими кадрами. Декодер получает
> фору по времени а зритель видит лишь небольшое снижение плавности картинки,
> но ничего не рассыпается. В ряде I&P only так делать сложнее
> и как я понимаю там отыгрывают в основном забиванием на постпроцессинг.
> Совсем вырубить I или P кадр как я понимаю нельзя без
> риска сильного развала последовательности (на выпавший кусок будут ссылаться другие кадры
> и получится полный трэш).

Нет, между P и B в этом плане отличий нет. Последующие кадры (и P, и B) могут ссылаться на любые предыдущие (в случае P и B) и последующие (в случае B) кадры. Т.е. потеря B-кадра может повлечь развал картинки, если на этот кадр ссылаются другие кадры. Ситуацию, когда B-кадры ссылаются на другие B-кадры, называют B-pyramid.

Вместе с тем, encoder может закодировать поток так, что потеря кадра мало либо вообще никак не отразится на итоговой картинке. Всё зависит от того, как много кадров ссылается на потерянный кадр, и можно ли их тоже выкинуть без серьезных последствий. Это касается как потерь B-кадров, так и P и даже I (в h264 допускается ссылаться за пределы последнего I-кадра). Кодирование потока таким образом называют Temporal SVC, потому что битрейт потока можно менять без перекодирования за счет выбрасывания кадров верхних "слоёв", снижая fps.

>> Зачем там тогда вообще P слайсы?
> По моему опыту, B-frames в мпегах - палка о двух концах. Они
> обычно компактнее P-frames. Но имеют свойство убивать качество картинки неочевидным образом.
> Когда понемногу накапливаются ошибки относительно I-frame, даже на статичной сцене. Особенно
> если междy I-frames большой интервал (а т.к. I-frames огромные, их ставят
> только при крайней нужде, если I-frames совсем не ставить - поток
> будет нельзя перематывать и он не будет рекавериться из ошибок). При
> использовании большого количества B-frames - может случиться дурная осцилляция качества
> картинки, видимая невооруженным глазом. Когда вы на глаз видите каждый I-frame.
> Если знать что искать - половина мувиков потом очень бесит.

Это было в эпоху до h264 (в тех же клонах h263, типа DivX и XviD). В h264 и в encoder'е, и в decoder'е поддерживается синхронное представление о декодированной картинке, включая постобработку (deblocking). Т.е. encoder всегда знает, насколько декодированная картинка отличается от оригинала и всегда может поддерживать степень искажений на одном уровне (если это позволяют другие ограничения, такие как максимальный битрейт, например). Это одна из причин, из-за которых encoder стал сложнее (он в обязательном поряден должен включать полноценный decoder).

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, [email protected] (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру