AVIFENC(1) راهنمای دستورهای عمومی AVIFENC(1)

avifenc - فشرده‌سازی یک فایل تصویری به یک فایل AVIF

avifenc [options] input.[jpg|jpeg|png|y4m] output.avif

دستور avifenc یک فایل تصویری را به یک فایل AVIF فشرده می‌کند. قالب ورودی می‌تواند JPEG، PNG یا YUV4MPEG2 (Y4M) باشد.

نمایش راهنمای نحوه استفاده.
نمایش شماره نسخه.

کیفیت رنگ در بازه 0..100 که 100 بدون اتلاف است.
کیفیت آلفا (شفافیت) در بازه 0..100 که 100 بدون اتلاف است.
سرعت رمزگذار در بازه 0..10 که 0 کُندترین و 10 سریع‌ترین است. یا مقدار “default” یا “d” برای پیش‌فرض‌های داخلی کدک. (پیش‌فرض: 6).

تعداد وظایف (نخ‌های پردازشیِ کارگر)، یا “all” برای استفاده احتمالی از حداکثر هسته‌های ممکن پردازنده. (پیش‌فرض: all).
هرگز بر روی فایل خروجی موجود بازنویسی نشود.
استفاده از این نام فایل به جای آخرین نام فایل داده‌شده به عنوان خروجی.
تنظیم تمام مقادیر پیش‌فرض برای رمزگذاری بدون اتلاف، و صدور هشدار در صورتی که تنظیمات یا ورودی اجازه چنین کاری را ندهند.
متغیر D عمق بیت خروجی برای هر کانال است. مقدار D باید 8، 10 یا 12 باشد. (فقط برای JPEG/PNG؛ در y4m: مقدار D باید با عمق بیت ورودی مطابقت داشته باشد، و EXTENSION پشتیبانی نمی‌شود). در صورت تعیین، EXTENSION یک تصویر رمزگذاری‌شده پنهان با عمق بیت EXTENSION به همان فایل تصویر اصلی اضافه می‌کند تا در زمان رمزگشایی به عمق 16 بیتی دست یابد. برای مشاهده ترکیب‌های پشتیبانی‌شده به avifSampleTransformRecipe مراجعه کنید (8,8 و 12,4 و 12,8).
قالب خروجی، یکی از مقادیر “auto” (پیش‌فرض)، 444، 422، 420 یا 400. برای y4m نادیده گرفته می‌شود (قالب y4m حفظ می‌گردد).

برای JPEG، مقدار auto در صورت امکان از قالب داخلی JPEG پیروی می‌کند. برای PNG با مقیاس خاکستری (grayscale)، مقدار auto به طور پیش‌فرض 400 است.

برای تمام موارد دیگر، مقدار auto به طور پیش‌فرض 444 است.

پیش‌ضرب کردن رنگ در کانال آلفا و درج اعلان آن در فایل AVIF.
استفاده از تبدیل دقیق و واضح RGB به YUV420 (در صورت پشتیبانی). برای y4m یا در حالتی که خروجی 420 نباشد نادیده گرفته می‌شود.
خواندن ورودی از stdin به جای مسیرهای فایل. هیچ ورودی دیگری مجاز نیست. قالب ورودی y4m فرض می‌شود مگر اینکه --input-format مشخص شده باشد. مسیر فایل خروجی همچنان باید ارائه شود.
قالب فایل داده‌های ورودی. یکی از مقادیر: jpeg/png/y4m/auto. (پیش‌فرض: auto، به جز برای stdin که در آن auto پشتیبانی نمی‌شود و پیش‌فرض y4m است).
تنظیم مقادیر CICP (باکس nclx colr) (۳ عدد خام، برای تنظیم پرچم محدوده از -r استفاده کنید).
•
P = رنگ‌های اصلی (color primaries)
•
T = مشخصه‌های انتقال (transfer characteristics)
•
M = ضرایب ماتریس (matrix coefficients)

برای هر موردی که می‌خواهید نامشخص بماند از 2 استفاده کنید.

محدوده YUV، یکی از مقادیر “limited” یا “l”، و “full” یا “f”. (فقط برای JPEG/PNG، پیش‌فرض: full؛ برای y4m، محدوده حفظ می‌شود).
تنظیم اندازه هدف فایل به بایت (تا ۷ برابر کُندتر).
تنظیم خودکار پارامترها برای رمزگذاری یک تصویر لایه‌ای ساده با قابلیت رندر تدریجی (progressive) از یک تک‌فریم ورودی.
رمزگذاری یک فایل AVIF لایه‌ای. هر ورودی به عنوان یک لایه رمزگذاری می‌شود و حداکثر ۴ لایه می‌توانند رمزگذاری شوند.
رمزگذاری یک AVIF شبکه‌ای تک‌تصویری با M ستون و N سطر. یا باید MxN تصویر با W/H/D یکسان ارائه دهید، یا یک تصویر تکی که بتوان آن را به طور یکنواخت به شبکه MxN تقسیم کرد و محدودیت‌های تصویر شبکه‌ای AVIF را رعایت کند. شبکه از نمایه رنگی نخستین تصویر ارائه‌شده استفاده خواهد کرد.
کدک مورد استفاده.

مقادیر ممکن به کدک‌های فعال‌شده در زمان ساخت بستگی دارد (برای مشاهده کدک‌های موجود به --help یا --version مراجعه کنید). پیش‌فرض به طور خودکار از میان کدک‌های موجود انتخاب می‌شود.

مقادیر ممکن عبارتند از:
•
aom
•
rav1e
•
svt
ارائه یک بار داده متاداده Exif برای پیوند با آیتم اصلی (مستلزم اعمال --ignore-exif است).
ارائه یک بار داده متاداده XMP برای پیوند با آیتم اصلی (مستلزم اعمال --ignore-xmp است).
ارائه یک بار داده نمایه ICC برای پیوند با آیتم اصلی (مستلزم اعمال --ignore-profile است).
مقیاس زمانی برای توالی‌های تصویری. اگر طول همه فریم‌ها ۱ مقیاس زمانی باشد، این گزینه معادل فریم در ثانیه خواهد بود. (پیش‌فرض: 30) اگر نه duration و نه timescale تنظیم نشده باشند، avifenc در صورت وجود سعی خواهد کرد از نرخ فریم ذخیره‌شده در سرایند y4m استفاده کند.
حداکثر فاصله فریم کلیدی (keyframe) برای توالی‌های تصویری (هر مجموعه‌ای از INTERVAL فریم پیاپی حداقل یک فریم کلیدی خواهد داشت). برای غیرفعال کردن روی 0 تنظیم کنید (پیش‌فرض).
اگر فایل ورودی حاوی متاداده توکار Exif باشد، آن را نادیده بگیر (در صورت عدم وجود، بدون اثر).
اگر فایل ورودی حاوی متاداده توکار XMP باشد، آن را نادیده بگیر (در صورت عدم وجود، بدون اثر).
اگر فایل ورودی حاوی نمایه رنگی توکار باشد، آن را نادیده بگیر (در صورت عدم وجود، بدون اثر).
اگر فایل ورودی حاوی gain map توکار باشد، آن را نادیده بگیر (در صورت عدم وجود، بدون اثر).
کیفیت gain map در بازه 0..100 که در آن 100 بدون اتلاف است.
افزودن ویژگی pasp (نسبت ابعاد). H=فاصله‌گذاری افقی، V=فاصله‌گذاری عمودی.
افزودن ویژگی clap (روزنه تمیز یا clean aperture)، اما محاسبه‌شده از روی یک مستطیل برش (crop).
افزودن ویژگی clap (روزنه تمیز). عرض، ارتفاع، جابه‌جایی افقی، جابه‌جایی عمودی (به صورت جفت‌های صورت/مخرج).
افزودن ویژگی irot (چرخش) در بازه 0..3. چرخشی معادل (90 * ANGLE) درجه در جهت پادساعت‌گرد ایجاد می‌کند.
افزودن ویژگی imir (آینه‌ای کردن). 0=بالا به پایین، 1=چپ به راست.
افزودن ویژگی clli (اطلاعات سطح روشنایی محتوا).
تعداد دفعاتی که یک توالی تصویر متحرک تکرار خواهد شد، یا “infinite” برای تکرار بی‌نهایت. (پیش‌فرض: infinite).
--
اعلام پایان گزینه‌ها. هر چیزی پس از این به عنوان نام فایل تفسیر می‌شود.

گزینه‌های زیر می‌توانند به صورت اختیاری دارای یک پسوند :u (یا :update) مانند -q:u Q باشند، تا تنها بر روی فایل‌های ورودی ظاهرشده پس از این گزینه اعمال گردند:

کیفیت رنگ در بازه 0..100 که 100 بدون اتلاف است.
کیفیت آلفا در بازه 0..100 که 100 بدون اتلاف است.
کیفیت gain map در بازه 0..100 که 100 بدون اتلاف است.
لگاریتم بر مبنای ۲ تعداد سطرهای کاشی (tile) در بازه 0..6. (پیش‌فرض: 0). در صورت تعیین، به کاشی‌کاری دستی تغییر می‌یابد.
لگاریتم بر مبنای ۲ تعداد ستون‌های کاشی در بازه 0..6. (پیش‌فرض: 0). در صورت تعیین، به کاشی‌کاری دستی تغییر می‌یابد.
تنظیم خودکار --tilerowslog2 و --tilecolslog2. در صورت تعیین، به کاشی‌کاری خودکار تغییر وضعیت می‌دهد. دستور avifenc در حالت کاشی‌کاری خودکار آغاز به کار می‌کند.
تنظیم حالت مقیاس‌بندی فریم (لایه) به صورت کسر داده‌شده. در صورت حذف، مخرج به طور پیش‌فرض 1 خواهد بود. (پیش‌فرض: 1/1).
مدت زمان فریم (بر حسب مقیاس‌های زمانی) (پیش‌فرض: 1). این گزینه با یا بدون پسوند :u همواره بر روی ورودی‌های بعدی اعمال می‌شود.
ارسال مستقیم یک جفت‌رشته کلید/مقدارِ پیشرفته و مختص کدک به کدک. دستور avifenc برای هر موردی که توسط کدک استفاده نشود هشدار خواهد داد.

1.
عبارت <key>=<value> هم بر صفحات رنگ (YUV) و هم بر صفحه آلفا (در صورت وجود) اعمال می‌شود.
2.
عبارت color:<key>=<value> یا c:<key>=<value> تنها بر صفحات رنگ (YUV) اعمال می‌شود.
3.
عبارت alpha:<key>=<value> یا a:<key>=<value> تنها بر صفحه آلفا (در صورت وجود) اعمال می‌شود. از آنجا که صفحه آلفا به صورت یک تصویر تک‌رنگ (monochrome) رمزگذاری می‌شود، گزینه‌هایی که به صفحات کروما (chroma) اشاره دارند، مانند enable-chroma-deltaq=B، نباید همراه با صفحه آلفا استفاده شوند. علاوه بر این، بعید است که گزینه‌های film grain برای صفحه آلفا کاربردی داشته باشند.

هنگام استفاده به همراه libaom نسخه 3.0.0 یا جدیدتر، هر جفت کلید-مقداری که توسط تابع aom_codec_set_option() پشتیبانی شود می‌تواند استفاده گردد. هنگام استفاده با libaom نسخه 2.0.x یا قدیمی‌تر، جفت‌های کلید-مقدار زیر می‌توانند به کار روند:

حالت کوانتیزاسیون تطبیقی. 0=غیرفعال (پیش‌فرض)، 1=واریانس، 2=پیچیدگی، 3=تازه‌سازی دوره‌ای.
سطح کیفیت ثابت/مقید (Constant/Constrained Quality) در بازه 0..63، مقدار end-usage باید بر روی cq یا q تنظیم شده باشد.
فعال‌سازی کوانتیزاسیون دلتا در صفحات کروما. 0=غیرفعال (پیش‌فرض)، 1=فعال.
حالت کنترل نرخ، یکی از مقادیر “vbr”، “cbr”، “cq” یا “q”.
تمایل به وضوح و تیزی بلوک‌ها در بهینه‌سازی نرخ-اعوجاج (rate-distortion optimization) ضرایب تبدیل در بازه 0..7. (پیش‌فرض: 0).
میزان‌سازی رمزگذار برای معیار اعوجاج، یکی از مقادیر “psnr” یا “ssim”. (پیش‌فرض: psnr).
بردارهای آزمون film grain در بازه 0..16. 0=هیچ‌کدام (پیش‌فرض)، 1=test1، 2=test2، ... 16=test16.
مسیر فایل حاوی پارامترهای film grain.

فشرده‌سازی یک فایل PNG به یک فایل AVIF:
$ avifenc input.png output.avif

باگ‌ها را می‌توان در گیت‌هاب در نشانی زیر گزارش کرد:
https://github.com/AOMediaCodec/libavif/issues

avifdec(1)

2025-04-11 libavif 1.4.2