Firefox: Как один баг сломал весь YouTube
Firefox — браузер, который, как известно, любит пожрать оперативки. А еще он последнее время люто, бешено ненавидел YouTube. Точнее, YouTube на нём люто, бешено глючил. Видео зависали, буферизация бесконечно крутилась, а пользователи рвали на себе волосы от безысходности.
Хроники ада: Что, блджад, случилось?[править]
В один прекрасный день пользователи Firefox обнаружили, что YouTube видео стали вести себя как будто их снимали в аду. Вот список симптомов этого огненного пиздеца:
Бесконечная буферизация: Видео останавливались, а кружок загрузки крутился вечно.
Скачки: Видео перепрыгивало на несколько секунд вперед, пропуская куски.
Артефакты: На видео появлялись артефакты сжатия, звук заикался, а потом всё зависало.
Расследование: Поиск виноватых[править]
Разработчики Firefox долго ломали голову, пытаясь понять, что за хуйня творится. Они копались в логах, просили пользователей записывать профили, и даже пытались связаться с Google. В итоге выяснилось, что виноват не Firefox, а YouTube.
Оказалось, что YouTube начал использовать кодек VP9 для видео с разрешением 1440p и 4K. И этот VP9 был сплошным багом. В нём были неправильные временные метки, перекрывающиеся кадры, и куча других проблем.
Исправление: Как починить Firefox (и YouTube)[править]
Разработчики Firefox всё-таки нашли способ обойти баги VP9. Они запилили патч, который научил Firefox правильно обрабатывать кривой код YouTube. Патч выкатили в Nightly, потом в Beta, а потом и во все остальные версии. Подробнее про баг и его решение можно почитать тут: Bug 1900191 и Bug 1878510 .
Выводы: YouTube — зло?[править]
Эта история показала, что даже крупные компании типа Google могут просирать полимеры и выпускать кривой код. А Firefox, хоть и жрёт оперативку как не в себя, всё-таки умеет справляться с трудностями.
P.S. Если у вас всё ещё есть проблемы с YouTube в Firefox, попробуйте отключить HTTP3 (параметр network.http.http3.enabled).