r   e   k   l   a   m   a
r   e   k   l   a   m   a

Lepsza kompresja zdjęć bez rewolucji: Mozilla pracuje nad własnym enkoderem JPEG

Strona główna AktualnościOPROGRAMOWANIE

Ulepszanie Webu można przeprowadzać na dwa sposoby: rewolucyjnie albo ewolucyjnie. Ten pierwszy sposób to przede wszystkim droga Google – firma z Mountain View gdy widzi problem, to zwykle opracowuje innowacyjne rozwiązania techniczne, które czasem zostają przyjęte też przez konkurentów, częściej jednak budzą niechęć i opory. Ten drugi sposób jest znacznie bliższy Mozilli, która stara się przede wszystkim ulepszać już istniejące techniki, zachowując zgodność z istniejącymi rozwiązaniami. By nie być gołosłownym, wystarczy z jednej strony przypomnieć google'owego Native Clienta, z drugiej strony asm.js Mozilli. Taka sama sytuacja czekać nas może w dziedzinie webowych zdjęć.

Google, niezadowolone z możliwości istniejących kodeków i formatów dla grafiki rastrowej, pokazało w 2010 roku swój własny format, WebP, bazujący na algorytmie kompresji ramek, wykorzystywanych w kodeku wideo VP8. Pozwolił on odczuwalnie zmniejszyć rozmiar plików graficznych, bez zauważalnej utraty jakości – nawet do 40%, w porównaniu do JPG czy PNG. Wprowadzenie na rynek zupełnie nowego formatu graficznego nie jest jednak łatwe, formaty takie nie istnieją w próżni, by zyskać popularność wymagają całego zestawu współpracujących z nimi narzędzi. Kto zaś będzie przygotowywał narzędzia do formatu, z którego prawie nikt jeszcze nie korzysta?

Mimo upływu niemal czterech lat od debiutu WebP, wciąż nie zdołał podbić on Sieci, większość programów klienckich zapewnia jego obsługę jedynie poprzez zewnętrzne wtyczki czy biblioteki. Nieśmiałe próby implementacji podjęły takie serwisy internetowe jak Facebook, Memecenter czy rosyjski odnoklassniki.ru, ale i one asekurują się serwowaniem obrazków w klasycznych formatach, jeśli napotkają przeglądarkę nie obsługującą WebP.

r   e   k   l   a   m   a

Do problemu rozmiarów zdjęć w Internecie podeszła teraz Mozilla, i jak można się spodziewać, nie zamierza wymyślać nowego formatu. Rozpoczęła prace nad enkoderem mozjpeg, który ma być wydajnym i efektywnym narzędziem kompresji najpopularniejszego na świecie formatu zdjęć JPEG.

Zdaniem deweloperów Mozilli w dziedzinie enkoderów JPEG od lat panuje stagnacja, a próby zastąpienia tego formatu czymś innym rozbijają się o okres przejściowy, w trakcie którego nowy format cierpi na kiepską kompatybilność z powszechnie stosowanym oprogramowaniem. Tymczasem stary i znany format nie osiągnął do tej pory wszystkich swoich możliwości – nawet przy założeniu wymogu zachowania najściślejszej kompatybilności ze stosowanymi dekoderami, można znacznie ulepszyć to, co oferują powszechnie dostępne biblioteki kompresji JPEG.

mozjpeg 1.0 dopiero co zadebiutował na GitHubie, i z tego co widać, w wersji 1.0 jest forkiem biblioteki libjpeg-turbo, którą połączono z algorytmem jpgcrush. Wyszukuje on takie konfiguracje progresywnego kodowania, które wykorzystują najmniejszą liczbę bitów. Dzięki temu rozmiar plików zostaje zmniejszony o 2-10%, choć jak programiści Mozilli podkreślają, zaobserwowano także większe poziomy kompresji. W kolejnym etapie prac mozjpeg ma zostać wzbogacony o algorytm kwantyzacji Trellis, który poszukuje optymalnej kwantyzacji dla każdego bloku obrazu. W tym celu obliczana jest różnica między skompresowanym obrazem a oryginałem i liczba bitów wymaganych do opisu bloku w każdym wariancie kwantyzacji. Następnie wybierany jest wariant, w którym suma tych wartości jest najmniejsza.

Zmieniająca się webowa moda doprowadziła do sytuacji, w której rośnie i liczba i wielkość zdjęć wykorzystywanych na stronach internetowych, tak więc nawet te kilka procent, zapewniane przez wersję 1.0 enkodera, to w perspektywie globalnego ruchu sieciowego (którego znaczną część stanowią przecież zdjęcia skompresowane JPEG-iem) bardzo dużo. Co zaś najważniejsze, nie wymaga to od nikogo bawienia się w nowe wtyczki do przeglądarek czy biblioteki JavaScriptu na strony WWW, jak to jest w wypadku wydajniejszego WebP.

© dobreprogramy

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.