LINUX.ORG.RU
ФорумTalks

Кэширование в youtube

 , ,


0

3

А помните старые добрые времена, когда слова «роскомнадзор» никто не знал, кроме юридического отдела СМИ и операторов связи? Так вот, в те времена интернет был медленным по техническим причинам. Тогда для того, чтобы посмотреть видео в нельзятубе, его открывали и ставили на паузу. Через какое-то время оно полностью кэшировалось.

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

Такое поведение вызвано политикой самого ютуба? Или на уровне браузера зашито, что не кэшировать всё видео?


что не кэшировать всё видео?

На всё видео RAM не хватить, а кэшировать на современную qlc память - она быстро сотрётся)

yandrey ★★
()
Ответ на: комментарий от yandrey

Бедненькая qlc память, бедные покупатели оной.

DarkAmateur ★★★★
()
Ответ на: комментарий от yandrey

На всё видео RAM не хватить,

Это с чего вдруг не хватит? Видео на ютубе нечасто больше 1 Гб занимает, даже 4K.

praseodim ★★★★★
()

Таки мяу, это политика самого ютуба.

Дело в том, что сервер с видосиком, грузит канал (ну и ресурсы сервера немножко) в момент обращения к этому видосику.

Допустим есть минутное видео, размером скажем 100 Мб.

Допустим есть 100 пользователей.

В случае агрессивного кеширования, сервер будет вынужден обслужить сразу 10 Гб.

В случае постепенного кеширования, кто-то посмотрит первые 5 сек и отключится, кто-то поставит на паузу на 20-й секунде, кто-то снизит качество, у кого-то потухнет интернет, и так далее.

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

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

windows10 ★★★★★
()

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

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

Такое поведение вызвано политикой самого ютуба? Или на уровне браузера зашито, что не кэшировать всё видео?

Частично — способом «замедления». Оно тупо режет пакеты — они теряются и посылаются заново, а не приходят к тебе / от тебя нормально но лишь с замедленной скоростью. Соответственно, прокэшировать можно, но немного. Но вообще и сам ютубовский плеер кэширует лишь до определённого размера фрагмент — это логично — нафиг тебе всё видео, если ты собрался посмотреть 2 минуты и закрыть (трафик, память, место, вот это всё). В YouTube Enhancer, если не ошибаюсь, можно отрегулировать это. Но проще VPN наконец обзавестись и не парить мозг. Ну или с помощью yt-dlp «кэшировать» на локальный HDD целиком.

upd: глянул — не, в Enhancer for youtube нет такой настройки сейчас. То ли она была, а потом сломалась, и её убрали, то ли она была в каком-то другом расширении, то ли мне приснилось.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 2)

А вот интересное наблюдение. Через браузер на ПК ютуб не работает (хоть m.youtube). А через приложение на смарте — не сразу, но начинает работать. Через тот же Fi-Wi. Недоработка, т-щ майор.

(никаких vpn, goodbye и прочего)

P.S. Я пропустил, не слежу особо за темой.

Юзер @CrX, ссылку бы.

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 2)
Ответ на: комментарий от CrX

Это где таким занимались?

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

Вспомнил. Да, запускали, ставили на паузу, оно кэшировалось. В противном случае затыкалось каждые несколько минут.

tiinn ★★★★★
()
Последнее исправление: tiinn (всего исправлений: 1)

Такое поведение вызвано политикой самого ютуба?

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

YAR ★★★★★
()
Ответ на: комментарий от greenman

Юзер @CrX, ссылку бы.

Это упоминалось несколько десятков раз в куче разных тем только на ЛОРе. Да и везде помимо ЛОРа тоже знают чуть ли не с первых дней блокировки. Искать сейчас все эти ссылки для полного списка мне тупо лень, но начиная с «Мобильную связь она пока не затронет» тут из темы в тему везде упоминается, через «у абонентов же мобильной связи все работает, и пользователи считают, что виноват домашний провайдер» тут и так далее и тому подобное. Почти везде, где хоть мелком этой темы касались, короче.

CrX ★★★★★
()
Ответ на: комментарий от CrX

Телефон с выходом в интернет через тот же Wi-Fi, что и ПК. Читаем внимательно.

Про то, что мобильные операторы не так «усердно» блокируют, читал (и проверял, хоть я и нечасто на ютуб захожу).

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 1)
Ответ на: комментарий от greenman

У меня только через мобильный инет (билайн).

На компе через тор смотрю, и качаю, если надо.

papin-aziat ★★★★★
()
Последнее исправление: papin-aziat (всего исправлений: 1)

его открывали и ставили на паузу. Через какое-то время оно полностью кэшировалось.

И если это линукс, в tmp можно было найти файлик с видео и его сохранить. Так работал флеш плеер, видимо потому что

в те времена интернет был медленным по техническим причинам

goingUp ★★★★★
()
Ответ на: комментарий от greenman

А, ок. Видимо да, недоработка тогда. Потом отвалится.

У меня byedpi перестал работать, кстати. Теперь только VPN. Видимо, придётся VPS-ку с гигабитом в обе стороны брать, а то медленно качать через то, что есть… Смотреть-то норм всегда было (я ни разу не открывал ютуб без VPN до блокировок — даже в голову не приходило), а вот качать со скоростью в 10 раз ниже немножко напрягает…

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 2)
Ответ на: комментарий от CrX

Вот не знаю, может ли андроид (точнее, HyperOS) при живом Wi-Fi (браузер, телеграм и прочее работают) пустить трафик одного приложения через мобильный интернет? Без подтверждений и оповещений.

greenman ★★★★★
()

Так нынче же hls стриминг все используют. Плюс плеер буферизует кусочек видео/аудио секунд на 30 вперёд и запрашивает следующий кусочек когда буфер опустошается ниже некоторого объема. А раньше юзали mp4/mp3 стриминг когда зарашивался файл целиком, ну и по мере получения файла плеер закрашивал полоску специальную

cobold ★★★★★
()
Ответ на: комментарий от cobold

Так нынче же hls стриминг все используют.

На Ютубе не для стримов, всегда есть варианты с целыми файлами, теперь для больше 360p, отдельно видео и аудио, но есть.

yandrey ★★
()

Это не политика именно тытьюба, это политика рамок, в которые загоняются разработчики. Такая «политика рамок» зовётся кратко: HTML5.

sparkie ★★★★★
()

Такое поведение вызвано политикой самого ютуба?

Да, это было сделано для того, чтобы не было такого, что ты, открыв 100500 вкладок ютуба, не ушёл куда-то внезапно и надолго. Чтобы потом эти 100500 вкладок забили память или диск, кэшем. Тем временем, ты эти видео в итоге и не посмотрел. Некогда…

У меня частенько такое происходит. Откроешь из рекомендаций 5 ссылок, а потом тебя отвлекают и тебе не до этого. В итоге, кеширование сделано зря. Потрачено трафика в пустую…

egzakharovich
()

Это HLS такой. Он состоит из n-секундных отрезков видео, которые склеиваются у тебя в браузере. Он выкачивает наперёд только несколько файлов, а не всё.

PS: самый смак такого подхода в том, что тебе не нужно делать что-то сверх-крутое на стороне сервера - тебе просто нужно обновлять плейлист-файл. Что есть в плей-лисе - то браузер и возьмёт.

alexmaru
()
Последнее исправление: alexmaru (всего исправлений: 1)

Или на уровне браузера зашито, что не кэшировать всё видео?

Пакеты не ходят. Надо спросить у гугла, как сделать чтобы ходили, а не заниматься вопрошанием лора.

А помните старые добрые времена

Никаких «добрых времён» не было, было время жрали других, а теперь принялись за нас.

Ygor ★★★★★
()
Ответ на: комментарий от windows10

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

grem ★★★★★
()
Ответ на: комментарий от sparkie

В HTML5 как раз прекрасно работает даже самое простое <video src="https://example.com/file.mp4" />, без всяких фрагментов и указываний браузеру/юзеру что и как ему кэшировать. Гугл там вокруг HTML5 ещё огромную кучу всякого JS наворотил.

CrX ★★★★★
()
Ответ на: комментарий от grem

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

312 mp4   1920x1080 60 │ ~ 1.97GiB  7288k m3u8  │ avc1  7288k video only
299 mp4   1920x1080 60 │   1.27GiB  4690k https │ avc1  4690k video only 1080p60, mp4_dash
617 mp4   1920x1080 60 │ ~ 2.54GiB  9390k m3u8  │ vp09  9390k video only
303 webm  1920x1080 60 │   1.04GiB  3822k https │ vp09  3822k video only 1080p60, webm_dash
623 mp4   2560x1440 60 │ ~ 5.46GiB 20155k m3u8  │ vp09 20155k video only
308 webm  2560x1440 60 │   2.95GiB 10878k https │ vp09 10878k video only 1440p60, webm_dash
628 mp4   3840x2160 60 │ ~10.69GiB 39476k m3u8  │ vp09 39476k video only
315 webm  3840x2160 60 │   5.99GiB 22108k https │ vp09 22108k video only 2160p60, webm_dash
yandrey ★★
()
Ответ на: комментарий от yandrey

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

P.S. Ну точнее, к данным, с video only не один, а ещё аудиодорожку к нему.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от yandrey

Да, но там и кодек разный, и битрейт соответственно. Больше объём при том же разрешении (если это имелось в виду) не из-за фрагментов как таковых получается, как я понимаю.

CrX ★★★★★
()
Ответ на: комментарий от CrX

Нет, кодеки одинаковые (312 и 299 или 628 и 315 …), разница из-за контейнеров, в мелких кусках больше опорных кадров и подобного.

yandrey ★★
()
Ответ на: комментарий от yandrey

Хм, действительно, кодек одинаковый. Интересно теперь, в чём именно там разница на самом деле. Понятно же, что оно не от самой по себе нарезки на куски раздулось…

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от yandrey

Ничего себе магия вне хогвардса. Сколько юзал ffmpeg, даже не догадывался, что можно аж -c copy 1.m3u8.

Ну попробовал на паре видео. В сумме получилается на ~7% больше объём, но не в два раза.

CrX ★★★★★
()
Ответ на: комментарий от CrX

В сумме получилается на ~7% больше объём, но не в два раза.

Какое количество фрагментов? уже при десятках может запросто получатся в два раза.

yandrey ★★
()
Ответ на: комментарий от yandrey

Попробовал ещё на одном файлике. 601 .ts-файл + сам .m3u8, итого 602 файла объёмом 319 МБ. Оригинал — 301 МБ.

CrX ★★★★★
()
Ответ на: комментарий от CrX

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

yandrey ★★
()
Ответ на: комментарий от windows10

Это все логично и понятно. Не понятно в данном контексте, какого хрена только что просмотренное видео при реплее снова начинает качаться с нуля!?

quwy
()
Ответ на: комментарий от windows10

Таки мяу, это политика самого ютуба. Дело в том, что сервер с видосиком, грузит канал (ну и ресурсы сервера немножко) в момент обращения к этому видосику.

А почему всякие порно сайты прекрасно кэшируют? Зы, я слишком стар, друг рассказывал (с)

One ★★★★★
()
Ответ на: комментарий от greenman

Вот не знаю, может ли андроид (точнее, HyperOS) при живом Wi-Fi (браузер, телеграм и прочее работают) пустить трафик одного приложения через мобильный интернет?

AFWall+ или NetGuard с блокировкой доступа к WiFi помогать должны.Только чем выше версия андроид, тем хуже работают такие программы и рут нужен

One ★★★★★
()

Политикой ютуба. Потому что незачем расходовать каналы связи и чтение с дисков на то, что ты вероятно не посмотришь. Зачем считывать с дисков и передавать что-то дальше следующих 20 секунд, если с некой приличной вероятностью ты в эти 20 секунд закроешь видос. Ну и главное, что есть много других клиентов, у которых уже осталась в буфере 1 секунда, пока у тебя 19.

lesopilorama
()
Ответ на: комментарий от One

А почему всякие порно сайты прекрасно кэшируют?

Не шарю именно в порносайтах, но я думаю у конкретного среднестатистического (и даже крупного) порносайта клиентов в разы меньше, чем у ютуба. И меньше ресурсов на зарплаты таким разработчикам, которые проведут замеры и поймут, что можно дальше следующих 20 секунд не передавать и что из этой политики можно извлечь какой-то профит для инфраструктуры системы. Короткий ответ: порносайты слишком тупые, гугл умный.

lesopilorama
()
Последнее исправление: lesopilorama (всего исправлений: 1)
Ответ на: комментарий от quwy

Это все логично и понятно. Не понятно в данном контексте, какого хрена только что просмотренное видео при реплее снова начинает качаться с нуля!?

Потому что оно кешируется не целиком, а порционно.

windows10 ★★★★★
()
Ответ на: комментарий от One

А почему всякие порно сайты прекрасно кэшируют? Зы, я слишком стар, друг рассказывал (с)

Потому что один сервер с сотней дрочеров пользователей справляется лучше, чем сотня серверов с миллионом.

windows10 ★★★★★
()

Зашито на уровне ютубовских javascript-ов. Смотри в mpv+ytdl там нет кучи проблем. Уже лет 5 как браузерным ютубом пользоваться почти невозможно по куче причин.

firkax ★★★★★
()

Сейчас же такое не проходит.

Когда я пробовал yt-dlp без прокси последний раз, шли многочисленные обрывы по таймауту, иногда удавалось скачать 100-200 килобайт, но средняя скорость не превышала 1 мегабайт в час. Сколько закешируется в таких условиях? Имхо, веб-страница делает вывод, что связь отсутствует, и прекращает попытки.

question4 ★★★★★
()
Ответ на: комментарий от Wapieth

Ну это уже РКН. А если связь с ютубом есть, но медленная или нестабильная?

Именно поэтому нынешнее состояние называют не «блокировкой», а «замедлением». Я без особых проблем смотрю страницы Ютуба, комментарии, превью. Скачал несколько фильмов — но именно с частыми обрывами и средней скоростью мегабайт в час. Провайдер Wifire, принадлежащий Мегафону.

question4 ★★★★★
()

А помните старые добрые времена, когда слова «роскомнадзор» никто не знал, кроме юридического отдела СМИ и операторов связи?

Я до сих пор не знаю украинского аналога Роскомнадзора. Забанить едва ли не половину Рунета не только по спискам, но и целыми диапазонами IP-адресов это нисколько не помешало. Понятно, что под блокировки попали в том числе совсем безобидные сайты. Включаю VPN, когда очень надо.

Так вот, в те времена интернет был медленным по техническим причинам.

Я тогда сидел на ADSL, но очень скоро появился Ethernet с десятками мегабит в секунду, а то и всей сотней. (Я, впрочем, оставался на ADSL, поскольку УМВР и мне хватало.) Внутри Ethernet часто был развернут VPN, с которым не всякий роутер справлялся с приемлемой скоростью. К слову, FullHD на YouTube до сих пор отлично работает по ADSL, если живёшь рядом с АТС.

Корректнее говорить не о технических причинах, а о технических решениях. Причины тут скорее экономические.

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

Тогда зрительские привычки были другие. Мы обычно или не смотрели встроенное видео, или смотрели до конца. Видео на самом YouTube тоже чаще смотрели до конца. Ну и медленный аплинк плохо дружил с ограничениями кеширования. А теперь мы встройку включим на пару секунд, не заинтересовались - скроллим дальше. По youtube.com прыгаем, как когда-то по всему Web 1.0.

Vidrele ★★★
()
Ответ на: комментарий от CrX

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

2005 или 2006 год, Питер. С моим тогдашним 256кбс инетом смотреть напрямую было довольно неудобно, поэтому часто делал так, как описал ТС. А у кого-то был вообще 128 или даже 64, пусть и безлимит.

Zhbert ★★★★★
()
Ответ на: комментарий от Zhbert

Понятно. У меня первый же «выделенный» тариф, сразу после диалапа, был 1 мбит/с, если не ошибаюсь — и это был самый дешёвый/медленный — а потом очень скоро появилось аж 10. С лимитом, правда, сначала. Но там лимит был достаточно адекватный — такой, что это надо прям реально целыми днями весь канал отжирать, чтоб его превысить. Не помню сейчас только каков именно был лимит, но я столько не выкачивал, при том, что ни капли не старался экономить.

Тут вообще немного странно было: «выделенка» появилась раньше, чем ADSL. ADSL был дешевле, и там были более медленные тарифы, но её как-то так юзали только в тех районах, куда нормальный не провели, у остальных уже был, и на ADSL никто не хотел желанием переходить. Мне в этом плане повезло — был годный местячковый провайдер. Правда его потом net-by-net купил, а позже его в свою очередь вообще мегафон…

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 2)
Ответ на: комментарий от CrX

У нас после диалапа появился Авандард, читай тот же Ростелеком, по ADSL. И скорость тогда была от 64 до 512 вроде, причем последняя стоила как крыло от самолета, а вот 256 вполне себе годной была. Эх, сколько же я тогда выкачал сериалов и музыки на этой скорости… Но комп да, стоял сутками включенный.

Zhbert ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)