DTF Артем Леготин
3 388

Почему глючит Ютуб на DTF

Не всегда, но в последнее время зачастил.

В закладки
Аудио

Что случилось?

В последнее время часто пишут (например, вот, вот, вот и вот) про баг с Ютубом. Встроенные видео не проигрываются, а вместо этого появляется надпись «Video unavailable».

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

Внимательные юзеры могут возразить, что проблема наблюдается только на DTF (ну и еще на TJ с VC), но дальше я объясню почему на других сайтах ее попросту не замечают.

Как отображаются видео (обычно)

Обычно, чтобы вывести на странице видео с Ютуба вставляют эмбед. Эмбед, по сути, является айфреймом, или, иначе говоря, этаким окошком на сайт ютуба. Это самая простая и потому наиболее распространенная практика.

Эмбэд начинает загружаться вместе со страницей, когда вы на нее заходите. И все было бы хорошо, если бы эмбед не грузил вместе с собой кучу ̶н̶е̶н̶у̶ж̶н̶о̶г̶о̶ ̶г̶о̶в̶н̶а̶ посторонних ресурсов.

Часть ресурсов, загружаемых одним эмбедом

Здесь все что хочешь: и стили, и шрифты, и картинки, и скрипты. Последних аж семь штук. Вес всего этого роскошества переваливает за два мегабайта. Да у нас главная страница столько не весит!

А если таких эмбедов на странице несколько (что далеко не редкость), то каждый будет грузить свое добро независимо от остальных, отъедая трафик и ресурсы.

Чтобы не быть голословным, вот страничка, на которой нет ничего кроме двадцати ютубовских эмбедов: 360 запросов на 38.9 мегабайт, которые вылились в дополнительные 6 секунд загрузки (при хорошем интернете). Если б вокруг этой страницы был еще и сайт, то пользоваться им не захотелось бы.

Мы подумали, что так нельзя и нужно сделать лучше.

Как отображаются видео (на DTF)

Вместо эмбеда мы отображаем муляж, состоящий из превью-картинки и заботливо стилизованной кнопки. Сравните сами:

♫ Never gonna give you up ♫
♫ Never gonna let you down ♫

Согласитесь, практически одно и то же. Но весит на пару мегабайт меньше.

При нажатии на муляж подгружается API Ютуба, после чего заглушка заменяется настоящим видео с флагом автопроигрывания.

Такой подход требует определенных усилий со стороны разработки, поэтому его не часто встретишь на сайтах. Для этого нужно очень любить своих пользователей, а мы как раз их тех <3.

Так вот, эта система прекрасно работала последние пару лет, пока не начала твориться чертовщина.

Демонстрация бага

Давайте разберем пример. Возьмем обычное, ничем не примечательное видео с ютуба и встроим его сюда:

Работает

Это муляж, при нажатии на который заиграет настоящий ролик.
Здорово! А теперь давайте попробуем другое видео:

Не работает

Мистика! Само-то видео есть и работает.
Проанализируем что случилось. В первом случае ссылка эмбеда такая:

https://www.youtube.com/embed/C5ExUOM79O0?autoplay=1

Во втором такая:

https://www.youtube.com/embed/An0SiTxyhJc?autoplay=1

За исключением айдишников видео, ссылки идентичны. Если поварьировать последнюю ссылку и поставить флаг "autoplay" в значение "0" или вовсе его убрать, то видео становится доступно, правда, при попытке воспроизвести появится все так же знакомая надпись.

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

Не в состоянии разгадать эту загадку самостоятельно, мы задали вопрос на стековерфлоу, на который вот уже три недели нет внятного ответа.

Аналогичный вопрос мы задали на форуме поддержки Ютуба.
Точнее, даже три вопроса: первые два выпилили по причине нарушения правил (им не понравились то ли ссылки на видео, то ли скриншоты). Последний пока висит, но без ответа.

Что дальше

Мы очень любим нашу систему с муляжами, потому что она экономит вам уйму ресурсов. Технически нам ничего не стоит отказаться от нее и начать показывать настоящие эмбеды. Что уж там, стало бы даже проще. Но на кону юзабилити и производительность.

Поэтому я предлагаю потерпеть еще немного, пока техподдержка ютуба не разродится ответом или мы не смастерим костыль, или что-нибудь еще.

Если хотите посодействовать, то нажимайте ПКМ на неработающих видео и выбирайте пункт "Troubleshoot playback issue". Сим победиши.

И так, кто живет на глубине озера Бросно пока неизвестно. Но все-таки понятно одно – оно там есть. И, возможно, когда-нибудь исследователи установят происхождение Бросни из Тверской области.

{ "author_name": "Артем Леготин", "author_type": "editor", "tags": [], "comments": 127, "likes": 93, "favorites": 10, "is_advertisement": false, "subsite_label": "team", "id": 45030, "is_wide": false, "is_ugc": false, "date": "Mon, 01 Apr 2019 10:06:15 +0300" }
{ "id": 45030, "author_id": 3960, "diff_limit": 1000, "urls": {"diff":"\/comments\/45030\/get","add":"\/comments\/45030\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/45030"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64968, "last_count_and_date": null }

127 комментариев 127 комм.

Популярные

По порядку

Написать комментарий...
45

экономят ресурсы пользователей

постоянно делают посты с гифками на овердохера мегабайт с автовоспроизведением, которые тормозят не особо мощные компы, а иногда даже выводят на главную

*видел пост еще ночью*

Ответить
0

А как комментарий от имени Кодзимы написать ?

Ответить
4

Надо быть Гением.

Ответить
7

Если я Галёнкин, установлю себе ЕГС!

Ответить
8

Ширяев это слишком жестоко

Ответить
0

Мне вот интересно, они вручную "распределяли" или наугад это все.

Ответить
4

Скажем так, "по щелчку"

Ответить
1

Вручную конечно. Самым нелюбимым юзерам выдали Бобби Котика

Ответить
0

А вот это было бы забавно)

Ответить
0

Рандом конечно, будут они тысячи людей вручную распределять.
Хотя интересно как себя чувствуют стимо и эпик хейтеры.

Ответить
0

Нормально чувствуют, сейчас вот кофейку ещё себе налил, вообще красота.

Ответить
0

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

Ответить
0

Хотя недоробоька оригинальные ники всё равно видны.

Ответить
7

МАМА
ЧОМУ Я ГАЛЕНК!Н!?

Ответить
4

Пользуясь случаем...
Чем больше отвращения к тому во что превращается интернет, тем приятнее исключения вроде DTF.
У меня не сверхскоростной доступ к Сети, но этот сайт открывается почти мгновенно, работает шустро, выглядит приятно.
Спасибо за хорошую работу!

Ответить

Комментарий удален

4

не работает

Работает:

Ответить
3

у меня не работает

Ответить
0

У меня оба видоса не работают. Однако.

Ответить
0

А вы географически где?

Ответить
0

Столица внедорожной промышленности, город текучего асфальта, гопоград, родина Шурыгиной - Ульяновск.

Ответить
3

Почему чуть что, так сразу Галёнкин?

Ответить
2

UPD Ютуб признал баг, посоветовали чаще жаловаться нажимая Troubleshoot

https://support.google.com/youtube/thread/3334130

Ответить
0

признал баг

No clue. YouTube is a complicated beast and there could be any number of internal controls that maybe somehow triggered. I'd expect as well that videos are served up from multiple servers and CDN's and who knows what...any of those could be having some issue.

Ага. Посоветовали тыкать кнопку пожаловаться и все.
Даже напоминает кое-кого, когда жалуются на токсиков на DTF и им предлагают тыкать кнопку "Пожаловаться". ( ͡° ͜ʖ ͡°)

Ответить
0

Этот пост это же просто прикол на первое апреля, ведь да?

Ответить
0

Клево конечно что плеер не загружает пару лишних мегабайт, но вот то что загружается бесполезная картинка это лучше?

Ответить
3

Ну нет, не показывать никакого превью к видео совсем уж странно.
Смотрите на 100кб-картинку как на альтернативу 2мб-эмбеду.

Ответить
0

Но я же видео зашел посмотреть, а не картинку)

Ответить
5

Ой ладно, картинка весит криминально мало, особенно если сравнивать с эмбедом.
Да и вообще, если на странице куда вы зашли (лента, пост) есть видео, то это вовсе не означает что вы намерены пересмотреть все видео на этой странице.

Ответить
0

Тут хорошо бы зашел график с распределением сэкономленного к потраченному на картинку.
Главное что 95% юзеров бы сэкономили, а первые 50% бы сэкономили условные 37/39. И только последние 5% вынуждены загрузить картинки к своим 39/39.

Ответить
0

EGS или Steam вот в чем вопрос?

Ответить
0

Какой чудесный день.

Ответить
0

Эх, а так хотелось побыть Гейбом.

Ответить
0

Есть еще Котик. Боби Котик

Ответить
0

Хочу быть Галёнкиным

Ответить
5

хехехе
игоры ваши - могозин наш
хехехе

Ответить
0

А вы будете эксклюзивными комментаторами Эпик Стора? ( ͡° ͜ʖ ͡°)

Ответить
0

Давай меняться)

Ответить
0

А чем объясняется то, что на мобильных устройствах всё работает замечательно, когда на десктопе - нет? (При условии использования одной и той же сети?)

Ответить
0

Всм приложение или веб-версия?

Ответить
4

Похоже, что проблема в параметре eurl при запросе к get_video_info, edge туда ставит адрес страницы, откуда было открыто видео, остальные браузеры - нет. Если вырезать этот параметр и повторить запрос, youtube начинает возвращать ошибку (жалобы на этот параметр есть в гугле, как минимум, с 2012 года). Видео, которое воспроизводится, работает без этого параметра нормально.

Ответить
0

Ух ты, спасибо, изучим

Ответить
0

Если что, видео, которое отмечено как "не работает", успешно запускается в Edge

Ответить
0

Я Галёнкин или Гейб? или все рандомно

Ответить
0

Ты Гейб

Ответить
1

А та гей. Фьють ха.

Ответить
4

У тебя игр Кейджа нет, вот ты и бесишься

Ответить
2

Сказал человек без Halo Collection...

Ответить
2

Однажды подходит ко мне Гейб и говорит:
— Серега! Я Метро не чувствую…
А я ему:
— Гейб, у Тебя его нет!
Гляжу, а инди игры у него выходят быстро-быстро, вот так! Я говорю:
— Гейб! До ближайшей распродажи 3 месяца. Если не сможешь выпустить Half-Life 3 и новый Portal, значит Тебе крышка!

Ответить
0

Зато я выпустил Fallout 76 в магазине. Как тебе такое?

Ответить
0

Где портал 3, блеать?

Ответить
0

Ну-ка тест.

Ответить
0

Опять пиар галенкина, отвратительно. Других деятелей индустрии сделали бы штоль

Ответить
2

Но ты ведь Габен.

Ответить
0

<параноик мод он>Габена добавили для отвлечения внимания, так бы вообще всех галенкиными нарядили.

Ответить
0

Шутит

Ответить
0

Ах если бы

Ответить
0

сижу, смотрю трансляцию прямую

Ответить
0

Габен, ты шутник.
Сказал Габен.

Ответить
0

Я живу в Казахстане, у нас в последнее время не очень то работает и Ютуб и Инстаграм и Вк

Ответить
0

Назарыч тырнет с собой забрал?

Ответить
0

Он плохо работает когда казахстанский волан-де-морт в сеть заходит.

Ответить
0

пока техподдержка ютуба не разродится ответом

Может только оказаться, что ответа техподдержки Ютуба придётся ждать до пенсии.

Ответить
0

рандом, кто я, гейб или галенкин?

Ответить
0

Галёнкин приди - Гейба приведи

Ответить
0

Еще кстати не знаю как у других, но эти "муляжи" у меня прогружаются очень долго.
Подозреваю, что коубы работают точно также.

Ответить
0

Ловите лучший коммент

Ответить
0

Пф.
Хоть бы в Epic Games Store.

Ответить
0

нененене, только не в EGS

Ответить
0

Тест

Ответить
0

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

Ответить
0

У тебя и в EGS все нормально. Верни игры в мой магазин!

Ответить
0

Нет! Они теперь мои!

Ответить
0

В Стиме забаню тебя, откуда будешь статистику воровать тогда?

Ответить
0

1-2-3-4-5 я Габен и иду искать

Ответить
0

Еба угадал

Ответить
0

Слава рандому, я Галенкин

Ответить
0

НЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕТ

Ответить
0

хмм

Ответить
0

В соседнем треде я был Галенкиным, я думал, это закрепляется за юзером((( Я не хочу быть жирным ублюдком((((((

Ответить
0

Подпиши контракт об эксклюзивном комментировании, и мы сделаем тебя Галёнкиным навсегда.

Ответить
0

Где ставить подпись?

Ответить
0

Жаль, что прикол с Гейбом и Галенкиным не работает в приложении

Ответить
0

В мобильной версии, кстати, с картинками проблема - либо вообще не грузятся, либо очень долго...

Ответить
0

Всм приложение или веб-версия с телефона?

Ответить
0

Приложение

Ответить
0

iOS или Android?

Ответить
0

Android, при чем, сейчас только заметил, будто зависит к какой сети подключен, дома от вафли и с мобильного тормозит, сейчас с рабочего норм...

Ответить
0

просто хочу узнать Галенкин я или Габен

Ответить
0

ЕГС сила

Ответить
0

Пока можно делать так:
1. Скопировать ссылку и вставить в новом окне.
2. Скачать видеофайл через плагин Savefrom (значок "скачать" и 720p справа)
3. Скачать видеофайл через плагин Download Master (зеленый значок слева)

Ответить
0

"Решить проблему с воспроизведением" тоже хорошо бы нажимать, это звоночек им

Ответить
0

Т.е, это не проблема Ютуба, проблема в том, что Ширяев пытался встроить видео без Эмбед, но не смог (¬‿¬ )

Ответить
0

Я Галенкин?

Ответить
0

Только не Галенкин, только не Галенкин

Ответить
0

Еее

Ответить
0

Только не Слизерин, только не Слизерин...

Ответить
0

А кто я?

Ответить
–1

Заебумба

Ответить
0

Гугл уже хрен знает сколько лет не парится по поводу того сколько лишнего мусора скачивают его пользователи (зато Хром заботливо информирует, что сэкономил... 2,9 мегабайта за месяц, хотя их одна только почта весит олнократно в пару раз больше).
Так что плюс за уважение к юзерам со стороны DTF. То, что у Гугла криворукие программисты не ваша вина.

Ответить
0

Не думаю что там какие-то плохие программисты, если честно.
Скорее есть требование обвесить все кучей аналитики с одной стороны, и необходимость тащить какое-то легаси и костыли с другой.

Ответить
0

про аналитику вы правы - не конкретно на ДТФ, но вообще её стараются запихнуть везде

Ответить
0

Если верить расследованию о котором я читал на Хабре, проблема в приоритетах.
Исправление ошибок ценится что-то в районе никак, в отличии от сдачи проектов, вроде нового дизайна почты, которую собственный браузер (!!) в плане быстродействия оценивает на 2... из 100.
Так что да, это я для красного словца. Проблема в компании, а не в людях.

Ответить

Комментарий удален

0

Ну и комменты сегодня.

Ответить
0

Не волнуйся, Сереженька, скоро всё кончится.

Ответить
0

Вам обоим надо подостыть

Ответить
0

Это может быть из-за https? я про secured, или ютуб только по нему отдаёт?

Ответить
0

Вообще, у меня помимо трубы, в принципе не играются видео, если они загруженные на сайт. Может проблема все-таки на стороне DTF?

Ответить
0

Если бы что-то не так делали мы, то не работали бы все видео. Но одни работают, а другие нет, хотя процедура создания одна и та же

Ответить
0

Да просто ссылку на Ютуб делайте, без примудорствований

Ответить
0

Однако в приложении на андроиде оба тестовых видео играют.
А в браузере хром на Том же андроиде - играет только одно.

Ответить
0

Кстати, вам бы починить встраивание ссылки на этот подсайт, а то они выглядят вот так:
Бла-бла-бла на DTF - DTF на DTF.

Ответить
0

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

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]
Пять простых способов разогнать свой ПК
с помощью соли и чайной ложки
Подписаться на push-уведомления