Бележки от екипа за майсторството, форматите и малките решения зад добрия резултат.
Картината на съвместимостта на AVIF през 2026 г.
Поддръжката на AVIF в браузърите достигна около 94,3 процента от глобалните браузъри до 2026 г., но поддръжката в браузъра не е цялата картина. Голям дял от употребата на изображения се случва извън браузърите: пощенски клиенти, които изобразяват вградени изображения, инструменти за дизайн, които отварят файлове за редактиране, системи за съдържание, които проверяват и преработват качвания, потоци за доставка на изображения, редактори на документи, които вграждат елементи, и социални платформи, които обработват изображения при качване. В повечето от тези небраузърни системи поддръжката на AVIF изостава доста зад приемането в браузърите. Gmail, Outlook и повечето корпоративни пощенски клиенти още прекарват изображенията през по-стари потоци, които отказват AVIF. Adobe Creative Cloud добави поддръжка на AVIF едва във версиите от края на 2024 г. Много конфигурации на WordPress с по-стари приставки за изображения още блокират AVIF при качване. WebP, обратно, е приет в почти всички тези платформи от години. Преобразуването на AVIF към WebP е мостът за съвместимост за тази небраузърна инфраструктура.
Защо преобразуването е бързо и от двете страни
Предимството в скорост на AVIF към WebP спрямо обратната посока идва от устройството на средствата. Разчитането на AVIF се поема от вграден декодер на браузъра, който работи с хардуерно ускорение на съвременните устройства. Записването на WebP използва вградените средства на браузъра за WebP, също с хардуерно ускорение на повечето платформи. Никоя операция не трябва да зарежда тежка част, което е тясното място за записването на AVIF. Частта за изхода AVIF е голяма и се нуждае от около секунда, за да се инициализира на сесия. Преобразуването на AVIF към WebP пропуска всичко това. Потокът е разчитане и после записване по вградени пътища, а цялото пътуване за снимка от 2 мегапиксела приключва доста под секунда на всеки съвременен настолен или преносим браузър. Това прави преобразуването на AVIF към WebP подходящо за интерактивни процеси, където потребителят очаква отговор за под секунда.
Колко всъщност струва презаписването
Преобразуването на AVIF към WebP включва една стъпка на презаписване. AVIF е бил първоначално записан с известна степен на загубена компресия. Разчитането му дава стойности на детайли, които отразяват този загубен източник. Записването на WebP после прилага собствената си компресия върху тези детайли при почти беззагубена настройка, нагласена за качество 85. При тази настройка изходът измерва около 44 dB PSNR на типично снимково съдържание. За зрител, който гледа снимка при нормален размер на показване, разликата между източника AVIF и изхода WebP не се вижда. За графики с много фин текст при малки размери, икони с точни детайли или цветови блокове с остри ръбове кумулативният ефект от два загубени прохода може да покаже фини разлики при близко разглеждане. Преди да се ангажираш с пълно преобразуване на библиотека, изпробвай представителна извадка при пълно увеличение върху най-чувствителните си към качество елементи.
Пътуването на алфа в детайл
Прозрачността в AVIF се кодира в отделен слой, който браузърът декодира заедно с цветното съдържание при четене на файла. Когато браузърът разчита AVIF, той създава както цветов буфер, така и маска на прозрачността. Преобразуването съчетава и двете при пълна прозрачност, запазвайки всеки частично прозрачен детайл. Записването на WebP после записва загубен WebP с отделен прозрачност, кодиран чрез беззагубения алгоритъм на WebP специално за слой прозрачността. Резултатът е, че маска на прозрачносттата в изхода WebP се съхранява беззагубно спрямо разчетените алфа стойности от AVIF. Меките преходи и пернатите ръбове оцеляват. Единственото влошаване на алфа, което присъства, е това, което оригиналното кодиране на AVIF е въвело. Ако източникът AVIF има чисти алфа ръбове, изходът WebP също ще ги има, със същата маска, готова за наслагване над всеки фон.
Сравнение на изхода с алтернативите
Когато трябва да направиш AVIF съвместим със система, която не чете AVIF, имаш три реалистични възможности: преобразуване към WebP, преобразуване към PNG или преобразуване към JPG. JPG е грешен избор за всеки елемент с прозрачност, защото JPG няма прозрачност и я сплесква до плътен цвят. PNG създава най-големия файл, обикновено от три до десет пъти размера на AVIF, и е правилният избор само когато ти трябва беззагубен междинен формат или местоназначението изисква именно PNG. WebP стои по средата: дава универсална съвременна съвместимост, запазва прозрачността и създава файл обикновено с 20 до 25 процента по-голям от AVIF, вместо с 300 до 1000 процента по-голям като PNG. За всяко преобразуване за съвместимост, което не изисква беззагубен изход, WebP е правилният междинен формат.
Едно самотно в браузъра, партиди на сървър
Тази двойка върви по два пътя според задачата. Един самотен AVIF се декодира и запазва наново като WebP изцяло във вашия браузър по вградени пътища, така че за един файл няма никакво качване, потвърдено с нула изходящи заявки след зареждането на страницата. Това е правилният път за нещо бързо и за поверителна клиентска работа, собствени продуктови снимки или документи, които предпочитате да държите на машината си. Конвертирането на няколко файла наведнъж се прави на нашия сървър, защото групирането, пакетирането и доставянето на комплект е работата, която сървър върши добре: файловете се качват, кодират, пакетират и връщат като едно изтегляне, което се изтрива за около 2 часа, без акаунт и без дълготрайно съхранение. На практика: едно самотно преобразуване никога не напуска устройството, а партида се обработва отдалечено, но се държи само краткия прозорец, който отнема изтеглянето.