@vuejs_ru

Страница 3541 из 3900
Alex
31.08.2018
06:57:50
С таким подходом даже Ванга не поможет

Андрей
31.08.2018
07:10:05
Алексей
31.08.2018
07:10:52
Пацаны, кто-нибудь подключал webgl на node.js???

Dmitry
31.08.2018
07:11:13
Народ, вопрос такой по нехватки памяти в браузере. У меня на странице товара есть видео на 360 градусов, покрутить можно. По факту это набор картинок. И вот когда эти картинки с сервера летят (летят они в base64), я их складирую в массив, и потом показываю одну за другой. Ну и бывает картинок прям много прилетает для одного такого видео. IE11 ложится очень быстро. Хром и фаерфокс вроде работают. Но изредка и они выдают мессагу мол щас вот память кончится. Можете подсказать как это победить?

Google
Sergey
31.08.2018
07:11:59
Удаляй старые картинки

Андрей
31.08.2018
07:12:45


Dmitry
31.08.2018
07:14:03
Удаляй старые картинки
Как я их потом верну? Видео то крутится по кругу и они мне нужны

Sergey
31.08.2018
07:14:36
Как я их потом верну? Видео то крутится по кругу и они мне нужны
Варианты: 1. Храни дельту картинок 2. Скачивай заново 3. Храни картинки в сжатом формате

Dmitry
31.08.2018
07:17:03
Варианты: 1. Храни дельту картинок 2. Скачивай заново 3. Храни картинки в сжатом формате
Нет возможности запрашивать картинки по одной. Они летят одним потоком по одному XMLHttpRequest. К тому же если по одной запрашивать то нужно ждать пока она загрузится по onLoad событию. Т.е. видео будет постоянно тормозить

Alex
31.08.2018
07:17:42
просто картинками скачивать, зачем в base64 их перегонять. На пустом месте где-то на треть каждая тяжелее станет сразу

а если https://kraken.io/web-interface каким воспользоваться, то сэкономить может получится лучше

Dmitry
31.08.2018
07:20:03
Ок, спасибо народ, буду думать)

просто картинками скачивать, зачем в base64 их перегонять. На пустом месте где-то на треть каждая тяжелее станет сразу
А не подскажешь как мне обычные картинки в массив загнать? С картинками в base64 все понятно. Т.е. если просто получить список URLов ко всем картинкам на сервере и потом по очереди их от туда показывать - не вариант

Alex
31.08.2018
07:24:44
просто ссылку отправляй, пусть браузер сам скачивает

Google
Alex
31.08.2018
07:24:56
в чем не вариант

Dmitry
31.08.2018
07:25:27
Так не пойдет. Картинки быстро сменяются. Каждой картинке нужно время на скачивание

Они даже не будут успевать загружаться

Alex
31.08.2018
07:25:51
в base64 они больше весят)

сам говоришь каждой картинке нужно время на скачивание

Dmitry
31.08.2018
07:26:18
Да там то они скачиваются и когда скачались кладутся в массив в памяти

Alex
31.08.2018
07:26:29
а еще есть кэш браузера

Dmitry
31.08.2018
07:26:36
по событию image.onLoad

Ну вот на кеш надеяться только что картинка успеет скачаться и в кеш упасть...

Все эти картинки на американских серверах лежат и не очень легкие

Нифига не успеет)

Alex
31.08.2018
07:28:08
ну ты прочитай что пишешь) давайте сделаем картинки тяжелее чтобы они быстрее скачивались

когда кэш браузера он второй раз скачивать даже не начнет

Dmitry
31.08.2018
07:30:22
ну ты прочитай что пишешь) давайте сделаем картинки тяжелее чтобы они быстрее скачивались
Вот смотри. Усеет ли там закешироваться в браузере такая картинка? Считай их там 200-300 штук подгружается https://www.thenaturalsapphirecompany.com/5.37ct-ceylon-emerald-cut-blue-sapphire-b10297-/

Alex
31.08.2018
07:31:25
а почему считаешь что не успеет?)

Sergey
31.08.2018
07:33:51
я тоже не понял, как base64 решает эту проблему

Dmitry
31.08.2018
07:37:31
Ну вот если дождаться окончания загрузки видео, то примерно можно прикинуть часосту смены картинок. Картинка допустим весит 300кб. Времени на ее загрузку мало. У людей с поршивым интернетом просто не будет видео. В base64 по onLoad упадет в память и ее можно будет взять из массива загруженных картинок

Если барузер начал закачивать картинку он ее наверняка докачает?

Они тут кстати еще через canvas все показываются

Google
Dmitry
31.08.2018
07:45:05
В девтулс на вкладке нетворк можешь глянуть как картинки прилетают

DimenSi
31.08.2018
07:46:38
Я не гений, но почему эту проблему не скинуть на бекенд, а бек пускай посылает тебе не санные картинки, а один mp4 и все, а ты уже крутишь перемотку

У бека есть доступ же нативным библиотекам, пускай он и склеит картинки в видео.

Alex
31.08.2018
07:47:41
кстати mp4 какой-нибудь из картинок может в сумме весить еще меньше

DimenSi
31.08.2018
07:47:52
Просто же это оверхед решение на фронте склеивать картинки.

Дорогое и жирное

Dmitry
31.08.2018
07:48:24
Я не гений, но почему эту проблему не скинуть на бекенд, а бек пускай посылает тебе не санные картинки, а один mp4 и все, а ты уже крутишь перемотку
Задача така чтобы можно было начинать крутить камень сразу после захода на страницу даже когда еще не все кадры загрузились

DimenSi
31.08.2018
07:48:25
Mp4 10 секунд весит 200-300кб

Оно умеет кусками грузиться.

И видео явно меньше весить будет, чем набор из сотни картинок.

Dmitry
31.08.2018
07:49:57
Ну видео так и работает, нет?
Не знаю) Мне как бы это наследство досталось. Чем то там руководствовались когда делали в base64. Надо с ними обсудить

DimenSi
31.08.2018
07:50:33
+ можно отказаться от base64 в пользу createURLObject

Хотя, стой, с бека приходит в base64?

Dmitry
31.08.2018
07:52:10
Да

DimenSi
31.08.2018
07:53:11
В общем не очень понятно профит от base64, вместо прямого линка на изображение с бека

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

Dmitry
31.08.2018
07:54:49
В общем не очень понятно профит от base64, вместо прямого линка на изображение с бека
Ну вот что-то мне подсказывает что это сделално для того чтобы пользователь при прокрутке видел сразу готовые изображения, а не изображения которые только начинают с сервера скачиваться

DimenSi
31.08.2018
07:55:38
Время же на загрузку этих base64 тоже же тратится учитывая, что base64 увеличивает размер в 3 раза

Google
DimenSi
31.08.2018
07:55:44
Как вы это решаете?

Что делает юзер, пока у него грузится этот долгий base64?

И изображения же можно отдавать с gzip, а base64 нет.

Dmitry
31.08.2018
07:57:41
Время же на загрузку этих base64 тоже же тратится учитывая, что base64 увеличивает размер в 3 раза
Ты ссылку смотрел которую я тебе скидывал? Там видно как это работает. Изображения загружаются в фоне. По событию onLoad скзладываются в массив в формате base64. Потом цикл проходится по этому массиву и передает загруженные картинки в канвас

DimenSi
31.08.2018
07:57:57
Но опять же видео самый дешевый вариант. И наверно стоит рассмотреть потоковое видео как на ютубе или это браузер сам делает (я не знаю).

Dmitry
31.08.2018
07:58:37
Но с таким же успехом видео грузится же, нет?
Не приходилось с видео работать)

Admin
ERROR: S client not available

Dmitry
31.08.2018
07:59:07
Можно было бы попробовать ужать base64

Перед показом картинки декомпрессить. Ресурсозатратное наверное будет дело

DimenSi
31.08.2018
08:00:23
Я не знаю обстоятельства, если тебе не дают возможности изменить формат работы этой штуки, то хуево.

Не спорю, если все переделывать все на mp4, то бек наверно ахует от работы.

Dmitry
31.08.2018
08:03:15
Не спорю, если все переделывать все на mp4, то бек наверно ахует от работы.
Да. Там как обычно все нужно быстро. Просто времени не будет на все эти переделки

Dmitry
31.08.2018
08:03:22
Вообще видео здесь бы прекрасно зашло. Грузится быстрее, рендерится не используя cpu(ну по минимому). Прокрутка вперёд-назад через перемотку

DimenSi
31.08.2018
08:03:35
Я говорю с позиции не рефакторинга, а сделать все с нуля. Это хуево, но я не знаю, что можно сделать с base64

Dmitry
31.08.2018
08:03:36
алсо просмотр кристаликов топыч, так сочно и круто выглядит

Google
Dmitry
31.08.2018
08:04:16
слишком большой оверхед они бахнули чтобы просто показывать уже загруженные картинки.

Dmitry
31.08.2018
08:05:16
Ладно, поговорю с ними на счет видео. Спасибо народ. Лучшее сообщество, всегда поможете!))

DimenSi
31.08.2018
08:05:41
Хотя опять же еще можно изменить работу канваса

Отказаться от большого количества кадров и склеивать модели и уже крутить модели в webgl

Dmitry
31.08.2018
08:06:50
лучше на клиенте не делать такое

DimenSi
31.08.2018
08:06:54
Это как то уменьшит потребление памяти?
Должно, целые игры же делают сейчас на webgl, а тут просто 3д модельку дешево же должно быть, но опять же, я говорю от своего имхо.

Я бы сначала попробывал видео, потом модельку, потом склейка кадров. А не 3,1,2

DimenSi
31.08.2018
08:08:55
Dmitry
31.08.2018
08:08:56
проще будет с видео на бэке, чем лезть в это низкоуровневое апи

DimenSi
31.08.2018
08:09:06
Но опять же к сожалению все наши советы опять уровня, неси все нахуй)

Dmitry
31.08.2018
08:09:37
но вообще, что то, что то требует рефакторинг

хех

DimenSi
31.08.2018
08:10:06
Я их не люблю, но я хз как можно base64 сжать

Может вообще не тот чат?

Dmitry
31.08.2018
08:10:52
Да они решили эту проблему просто отключением видео на IE11 ибо он такое не вывозит )) Фиг знает захотят ли с видео заморачиваться

Dmitry
31.08.2018
08:11:38
видео можно запилить с помощью ffmpeg по идее. Можешь скинуть пачку картинок какого нибудь камня?

Страница 3541 из 3900