Автор Гілка: Дискурс додав оптимізатор зображень на основі MozJPEG  (Прочитано 6680 раз)

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3741
  • Карма: +9/-0
  • Програміст
Дискурс створив новий оптимізатор зображень на етапі завантаження на сайт користувачем. Вони скомпілювали MozJPEG та Piston/resize у wasm, та використали їх для оптимізації зображень. Зображення виходять маленького розміру, але високої якості, а також вони сумісні зі старими бібліотеками для декодування JPEG.

Оголошення: https://blog.discourse.org/2021/07/faster-user-uploads-on-discourse-with-rust-webassembly-and-mozjpeg
Приклади: https://meta.discourse.org/t/testing-composer-image-optimization/194841
« Змінено: 2021-07-23 12:00:38 від Володимир Лісівка »
[Fedora Linux]

gdekjifgb

  • Гість
Цитата
The original file is 4032x3024 and weighs 3.7MB, while the compressed one 1920x1440 and weighs 416KB.
Не знаю що таке Дискорд (але здогадуюсь що це якась така типу соцмережа?, яи щось типу цемееса?). Навіть не шукав... поки що.

А стосовно інновацій... Багато (майже всі, або ВСІ) графічних файлів при зменшенні масштабу обов'язково стають меншими на вагу (мб, кб). Не дуже розумію в чому тут прикол, фішка.

Вони зробили оптимізацію картинки перед відправкою на сервер - це головна новина?, чи те що вони досягли значного зменшення ваги картинки?, чи може новина в тому що це на Rust і asm ?


---
без приколів!: я просто не розумію основну суть новини.

« Змінено: 2021-07-23 11:15:17 від gdekjifgb »

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3741
  • Карма: +9/-0
  • Програміст
Дискорд — це щось типу LOU, але для всіх.

Новина в тому, що їм вдалося зробити графічні файли, які типово знімаються на смартфон, на порядок меншими без помітної втрати якості та зі збереженням сумісності зі старими переглядачами чи смартфонами. Ось, напр., файл, який не шкода поставити як заставку на стільницю, але який займає всього 172 кБ, тоді як оригінал — 9МБ.
[Fedora Linux]

gdekjifgb

  • Гість
Дискорд — це щось типу LOU, але для всіх.
вже глянув. Здається воно схоже на discus. Щось типу плагіна до сайту.

Дискорд — це щось типу LOU, але для всіх.
еее, це натяк на те що мені тут не місце? ну фантазія у мене така - мабуть, не правильна?

Новина в тому, що їм вдалося зробити графічні файли, які типово знімаються на смартфон, на порядок меншими без помітної втрати якості та зі збереженням сумісності зі старими переглядачами чи смартфонами. Ось, напр., файл, який не шкода поставити як заставку на стільницю, але який займає всього 172 кБ, тоді як оригінал — 9МБ.

Я забув вище про якість картинок написати.

Ну тепер зрозуміліше. Сам знаю що якщо ресайзити png формат засобами php, то ЗАВЖДИ виходить замилене зображення.

---
і ето... Зараз щось допишу окремим коментом.

gdekjifgb

  • Гість
Ось цей окремий коментар:

Хотілось  би бачити новини на лоу у більш розгорнутому (розжованому) форматі.

На прикладі мене можна уявити  більшість користувачів. Якщо цей не дуже розумний користувач бачить на лоу новину і не може докумекати про що вона, ну і що з цього?, в чому фішка?, і тд... - то такий не дуже розумний іде звідси в свої вканти, фб, твіте, тікитоки...

І лише деякі почємучки, типу мене, задають питання (різні питання  ;D).

---
ПРО ТЕ ЩО ВАМ НЕ ПОТРІБНІ КОРИСТУВАЧІ ЯКІ НЕ В ТЕМІ - я знаю, але новини для старих друзів, в кількості 10 штук, не сприяють розвитку ЛОУ.

---
я так вважаю.
« Змінено: 2021-07-23 11:43:24 від gdekjifgb »

gdekjifgb

  • Гість
незн., може я занадто не розумний, щоб зрозуміти з першого разу.

---
Ось для прикладу https://linux.org.ua/index.php?topic=11777.0

Що з цього всього? плакати?, стрибати від радості?

Ну я то бачу що tech розуміє в чому справа, а інші горекористувачі???
« Змінено: 2021-07-23 12:07:40 від gdekjifgb »

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3741
  • Карма: +9/-0
  • Програміст
Я помилився в назві — це Дискурс, а не Дискорд.

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

Код не виглядає дуже складним: https://github.com/discourse/discourse/pull/13432/files
[Fedora Linux]

gdekjifgb

  • Гість
Я помилився в назві — це Дискурс, а не Дискорд.
Off-topic:
дизасемблювання, ще якась помилка... тепер це

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

Я не знаю що таке "стандартні". Я ресайзю за допомогою createnewpic, createfrom, imagecopyresampled, imagejpeg, imagepng.

Код не виглядає дуже складним: https://github.com/discourse/discourse/pull/13432/files
а оце цікаво. Але я не знаю І НЕ ХОЧУ ВИВЧАТИ яваскрипт.

На клієнті, через яваскрипт, викликаються(?) api(?) браузера і ковбасять (ресайзять) картинку(?).

Якщо дійсно так, то може є сенс заморочитись з прикручуванням цих яваскриптів до власного (мого) чудо сайту. Хоч у мене і без цих заморочок стоїть обмеження 6000х6000 пікселів і 1 мб для картинки, але для пришвидшення аплоаду...(?)
« Змінено: 2021-07-23 16:11:41 від gdekjifgb »

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3741
  • Карма: +9/-0
  • Програміст
Типово, при зміні розмірів зображення використовується або середнє з найближчих пікселів або білінійна інтерполяція (або трикутна), тому що вона проста і швидка, але вона створює візуальні артефакти: смуги на зображенні, тоді як я люблю щонайменше бікубічну інтерполяцію, але краща інтерполяція виконується значно довше.

Piston Resize дозволяє використовувати різні види інтерполяцій, в тому числі дуже непоганий фільтр Корнелія Ланцоша. Можна подивитися порівняння інтерполяцій тут: https://masters.donntu.org/2010/fknt/shekhovtsov/library/article3.htm .

Моїм фаворитом у студентські роки була псевдовипадкова інтерполяція (фільтр), яка не створює помітних візуальних артефактів і працює дуже швидко, але про неї зараз чомусь забули, я бачив згадку про неї може разів 3 за останні 20 років. :-/
[Fedora Linux]