| FFMPEG-FORMATS(1) | راهنمای ابزارهای چندرسانهای | FFMPEG-FORMATS(1) |
نام (NAME)
ffmpeg-formats - قالبهای ورودی، خروجی، ماکسرها و دیماکسرهای FFmpeg
توضیحات (DESCRIPTION)
این سند به توصیف قالبهای پشتیبانیشده (ماکسرها و دیماکسرها) ارائه شده توسط کتابخانه libavformat میپردازد. این کتابخانه پروتکلها و قالبهای ظرف (Container) چندرسانهای گوناگون را پردازش میکند.
گزینههای قالب (FORMAT OPTIONS)
کتابخانه libavformat گزینههای سراسری عمومی را فراهم میکند که میتوانند روی تمامی ماکسرها (Muxers) و دیماکسرها (Demuxers) اعمال شوند. همچنین هر قالب میتواند گزینههای اختصاصی خود را داشته باشد.
گزینهها میتوانند با نحو -option value در ابزارهای FFmpeg یا با مقداردهی ساختار "AVFormatContext" تنظیم گردند.
گزینههای عمومی اصلی عبارتند از:
- avioflags پرچمها (ورودی/خروجی)
- تنظیم پرچمهای ورودی/خروجی سطح پایین؛ شامل مقادیری چون direct برای کاهش بافرینگ حافظه.
- probesize بایت (ورودی)
- حداکثر مقدار بایت ورودی که برای شناسایی خودکار قالب و استریمها کاوش (Probe) میشود. مقدار پیشفرض ۵٬۰۰۰٬۰۰۰ بایت (5MB) است.
- packet_size اندازه (خروجی)
- تنظیم اندازه بسته خروجی به بایت.
- fflags پرچمها (ورودی/خروجی)
- تنظیم پرچمهای اختصاصی فرمت. مقادیر ممکن:
- flush_packets
- تخلیه فوری بستهها در خروجی پس از نوشتن هر بسته.
- ignidx
- نادیده گرفتن فهرست اندیس فریمها در فایل ورودی.
- genpts
- تولید خودکار برچسبهای زمانی PTS در صورت عدم وجود در ورودی.
- nofillin
- عدم پر کردن خودکار مقادیر مفقود برچسبهای زمانی با درونیابی.
- noparse
- غیرفعال کردن پارسر خودکار کدکها.
- igndts
- نادیده گرفتن مقادیر برچسب زمانی رمزگشایی DTS.
- discardcorrupt
- دور انداختن بستههای داده خراب یا مخدوش در جریان ورودی.
- sortdts
- تلاش برای بازآرایی و مرتبسازی بستهها بر اساس برچسب زمانی DTS.
- fastseek
- فعالسازی پرش سریع مبتنی بر بایت در قالبهایی که پشتیبانی میکنند.
- analyzeduration میکروثانیه (ورودی)
- تعیین حداکثر مدت زمانی که برنامه برای بررسی مشخصات جریانها و کدکها تحلیل میکند.
- fpsprobesize تعداد (ورودی)
- تعداد فریمهای مورد استفاده برای تعیین نرخ فریم در استریمهای بدون هدر کامل.
- err_detect, f_err_detect پرچمها (ورودی)
- تنظیم حساسیت تشخیص خطای قالب: crccheck، bitstream، buffer، explode (توقف فوری در صورت بروز هر خطا).
- max_interleave_delta میکروثانیه (خروجی)
- حداکثر اختلاف زمانی در همتنیدگی بستههای صدا و تصویر.
دیماکسرها (DEMUXERS)
دیماکسرها مؤلفههای نرمافزاری هستند که جریان چندرسانهای را از فایل یا استریم کانتینر خوانده و آن را به استریمهای صوتی، تصویری و زیرنویس اولیه تفکیک میکنند.
مهمترین دیماکسرهای در دسترس:
- mov, mp4, m4a, 3gp
- دیماکسر کانتینرهای خانواده QuickTime / ISO Base Media Format (MP4).
- matroska, webm
- دیماکسر قالبهای منعطف و مدرن Matroska (MKV) و WebM بر پایه زبان ساختیافته EBML.
- mpegts
- دیماکسر استریمهای انتقالی MPEG-2 Transport Stream پرکاربرد در پخش دیجیتال تلویزیونی (DVB/ATSC) و استریمهای HLS.
- flv
- دیماکسر فرمت فلش ویدیو (Flash Video) مورد استفاده در پروتکلهای پخش آنلاین مانند RTMP.
- hls
- دیماکسر پروتکل پخش زنده و تقاضامحور چندنرخی Apple HTTP Live Streaming بر پایه لیستهای پخش M3U8.
- image2
- دیماکسر توالی تصاویر تکفریم برای خواندن مجموعهای از فایلهای عکس با الگوی نامگذاری (مانند img%03d.png).
- concat
- دیماکسر اختصاصی الحاق مجازی فایلها بر اساس یک فایل متنی فهرستی ساده بدون نیاز به انکود مجدد.
ماکسرها (MUXERS)
ماکسرها مؤلفههایی هستند که بستههای انکودشده صدا، ویدیو و داده را دریافت کرده و آنها را در قالب یک فایل کانتینر استاندارد با یکپارچگی زمانی ترکیب و بستهبندی میکنند.
مهمترین ماکسرهای در دسترس:
- mp4 / mov
- ماکسر
کانتینرهای
MP4 و QuickTime.
گزینههای اختصاصی پرکاربرد:
- movflags
- شامل پرچمهای مهمی مانند faststart (انتقال جدول اطلاعات موف به ابتدای فایل جهت آغاز پخش بلافاصله پس از شروع دانلود اینترنتی)، frag_keyframe (تقسیم فایل به قطعات مجزا)، و empty_moov برای جریانهای زنده تکهتکه (Fragmented MP4).
- matroska
- ماکسر کانتینر چندمنظوره MKV با پشتیبانی نامحدود از استریمهای موازی صوتی، زیرنویسها و پیوستهای خط و فونت.
- hls
- ماکسر تولید استریمهای قطعهبندیشده HLS شامل تولید خودکار فایل مانیفست M3U8 و فایلهای قطعه TS یا fMP4.
- segment
- ماکسر تقسیم خودکار فایل خروجی به بخشهای کوچک زمانی یا فریمکلیدی با الگوی نامگذاری مشخص.
- tee
- ماکسر ارسال همزمان یک جریان رسانهای کدگذاریشده به چندین مقصد خروجی مجزا (مانند نوشتن روی دیسک همزمان با ارسال زنده به یوتیوب یا توییچ).
فراداده (METADATA)
ابزار FFmpeg قادر است تمامی اطلاعات فراداده (Metadata) یک فایل رسانهای را در قالب یک فایل متنی ساده با ساختار شبیه INI استخراج کند و مجدداً با استفاده از ماکسر فراداده بر روی فایلهای جدید بارگذاری نماید:
ffmpeg -i in.mp4 -f ffmetadata in.txt ffmpeg -i in.mp4 -i in.txt -map_metadata 1 -c copy out.mp4
همچنین ببینید (SEE ALSO)
ffmpeg(1), ffplay(1), ffprobe(1), ffmpeg-utils(1), ffmpeg-scaler(1), ffmpeg-resampler(1), ffmpeg-codecs(1), ffmpeg-bitstream-filters(1), ffmpeg-devices(1), ffmpeg-protocols(1), ffmpeg-filters(1), libavformat(3)
نویسندگان (AUTHORS)
توسعهدهندگان FFmpeg.
برای جزئیات بیشتر به تاریخچه گیت پروژه در https://git.ffmpeg.org/ffmpeg مراجعه نمایید.
| FFmpeg |