فایل WEBP چیست؟
WebP که توسط گوگل معرفی شده است، یک فرمت فایل تصویری وب شطرنجی مدرن است که بر اساس فشرده سازی بدون اتلاف و اتلاف است. کیفیت تصویر یکسان را ارائه می دهد و در عین حال اندازه تصویر را به میزان قابل توجهی کاهش می دهد. از آنجایی که بیشتر صفحات وب از تصاویر به عنوان نمایش موثر داده ها استفاده می کنند، استفاده از تصاویر WebP در صفحات وب منجر به بارگذاری سریعتر صفحات وب می شود. به گفته گوگل، تصاویر بدون اتلاف WebP در مقایسه با PNGs از نظر اندازه 26٪ کوچکتر هستند، در حالی که تصاویر با اتلاف WebP 25-34٪ کوچکتر از تصاویر قابل مقایسه JPEG هستند. تصاویر بر اساس شاخص تشابه ساختاری (SSIM) بین WebP و سایر فرمتهای فایل تصویری مقایسه میشوند. WebP یک پروژه خواهر با فرمت ظرف چند رسانه ای WebM است.
مروری بر ویژگی های WebP
تصاویر WebP از فرآیند فشرده سازی بر اساس پیش بینی پیکسل ها از بلوک های اطراف خود استفاده می کنند و در نتیجه پیکسل ها چندین بار در یک فایل واحد مورد استفاده قرار می گیرند. از تصاویر متحرک پشتیبانی می کند و انتظار می رود در آینده از ویژگی های بیشتری پشتیبانی کند. Google کد منبع online را برای رمزگذار و رمزگشای خود در دسترس قرار داده است تا در صورت لزوم از آن استفاده شود. تصویر WebP از موارد زیر پشتیبانی می کند:
فشرده سازی با اتلاف: فشرده سازی با تلفات بر اساس رمزگذاری فریم کلیدی VP8 است. VP8 یک فرمت فشرده سازی ویدیویی است که توسط On2 Technologies به عنوان جانشین فرمت های VP6 و VP7 ایجاد شده است.
فشرده سازی بدون ضرر: فرمت فشرده سازی بدون اتلاف توسط تیم WebP توسعه داده شده است.
شفافیت: کانال آلفای 8 بیتی برای تصاویر گرافیکی مفید است. کانال آلفا را می توان همراه با RGB با اتلاف استفاده کرد، ویژگی که در حال حاضر با هیچ فرمت دیگری در دسترس نیست.
** انیمیشن: ** از تصاویر متحرک با رنگ واقعی پشتیبانی می کند.
فراداده: ممکن است دارای ابرداده EXIF و XMP باشد (مثلاً توسط دوربین ها استفاده می شود).
نمایه رنگ: ممکن است نمایه ICC تعبیه شده داشته باشد.
فشردهسازی Lossy WebP از کدگذاری پیشبینیکننده برای رمزگذاری تصویر استفاده میکند، همان روشی که کدک ویدیویی VP8 برای فشردهسازی فریمهای کلیدی در ویدیوها استفاده میکند. کدگذاری پیشبینیکننده از مقادیر موجود در بلوکهای همسایه پیکسلها برای پیشبینی مقادیر یک بلوک استفاده میکند و سپس تنها تفاوت را رمزگذاری میکند.
فشردهسازی بدون اتلاف WebP از قطعات تصویری که قبلاً دیده شدهاند برای بازسازی دقیق پیکسلهای جدید استفاده میکند. همچنین میتواند از یک پالت محلی استفاده کند اگر مطابقت جالبی پیدا نشد.
فرمت فایل
فرمت فایل WebP بر اساس فرمت سند RIFF (فرمت فایل تبادل منابع) است. کانتینر WebP از ویژگیهای بیشتر و بالاتر پشتیبانی میکند، نه تنها شامل یک تصویر واحد که به عنوان یک قاب کلید VP8 کدگذاری شده است. عنصر اصلی یک فایل RIFF یک تکه است که شامل موارد زیر است:
فیلد | توضیحات |
---|---|
Chunk FourCC: 32 بیت | کد چهار نویسه ASCII برای شناسایی تکه استفاده می شود |
Chunk Size: 32 bits (uint32) | The size of the chunk not including this field, the chunk identifier or paddi-fang |
Chunk Payload: Chunk Size bytes | محموله داده. اگر اندازه قطعه فرد باشد، یک بایت بالشتکی ~-~- که باید 0 ~-~- باشد اضافه می شود |
ChunkHeader (‘ABCD’) | برای توصیف هدر FourCC و اندازه قطعه تک تک تکه ها استفاده می شود، که در آن ‘ABCD’ FourCC برای تکه است. اندازه این عنصر 8 بایت است. |
سربرگ WebP
هدر فایل WebP به صورت زیر است:
سربرگ RIFF - 32 بیت نشان دهنده کاراکترهای ASCII ‘R’ ‘I’ ‘F’ ‘F’
اندازه فایل - 32 بیت (uint32) که نشان دهنده اندازه فایل در بایت با شروع افست 8 است. حداکثر مقدار این فیلد 2^32 منهای 10 بایت است و بنابراین حجم کل فایل حداکثر 4 گیگابایت منهای 2 بایت است. .
‘WEBP’ - 32 بیت نشان دهنده کاراکترهای ASCII ‘W’ ‘E’ ‘B’ ‘P’
فرمت فایل از دست رفته
تصاویر WebP از فرمت فایل با اتلاف استفاده می کنند اگر تصویر مبتنی بر رمزگذاری با اتلاف باشد و به هیچ ویژگی پیشرفته/بسط یافته ای مانند شفافیت، متحرک سازی، آلفا و غیره نیاز نداشته باشد.
فایل WebP در این مورد شامل موارد زیر است:
12 بایت هدر فایل WebP
قطعه VP8
VP8 Data Format and Decoding Guide مشخصات فرمت جریان بیت VP8 را نشان می دهد.
فرمت فایل بدون از دست دادن
این طرح زمانی استفاده می شود که تصویر بر اساس رمزگذاری بدون اتلاف باشد و نیازی به ویژگی های پیشرفته ارائه شده توسط فرمت خارجی نباشد. اگرچه ممکن است برنامه های قدیمی تر نتوانند چنین فایل هایی را بخوانند.
فایل WebP در این مورد شامل موارد زیر است:
12 بایت هدر فایل WebP
قطعه VP8L