عربيالفرنسيةالإسبانية

Ad


OnWorks فافيكون

تنسيقات ffmpeg - عبر الإنترنت في السحابة

قم بتشغيل تنسيقات ffmpeg في مزود الاستضافة المجاني من OnWorks عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو تنسيقات الأمر ffmpeg التي يمكن تشغيلها في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


تنسيقات ffmpeg - تنسيقات FFmpeg

الوصف


يصف هذا المستند التنسيقات المدعومة (أجهزة muxers و demuxers) التي يوفرها ملف
مكتبة libavformat.

FORMAT OPTIONS


توفر مكتبة libavformat بعض الخيارات العامة العامة ، والتي يمكن ضبطها على جميع ملفات
muxers و demuxers. بالإضافة إلى ذلك ، قد يدعم كل جهاز muxer أو demuxer ما يسمى بالخاص
الخيارات المحددة لهذا المكون.

يمكن تعيين الخيارات عن طريق تحديد -خيار قيمنا في أدوات FFmpeg ، أو عن طريق ضبط ملف
القيمة بشكل صريح في خيارات "AVFormatContext" أو باستخدام امتداد libavutil / opt.h API لـ
استخدام برمجي.

فيما يلي قائمة الخيارات المدعومة:

com.avioflags الأعلام (المدخلات والمخرجات)
القيم الممكنة:

مباشرة
تقليل التخزين المؤقت.

التحقيق عدد صحيح (إدخال)
قم بتعيين حجم الفحص بالبايت ، أي حجم البيانات المراد تحليلها للحصول على الدفق
معلومة. ستمكن القيمة الأعلى من اكتشاف المزيد من المعلومات في حالة حدوثها
مشتتة في التدفق ، ولكنها ستزيد من وقت الاستجابة. يجب أن يكون عددًا صحيحًا وليس أقل
من 32. هو 5000000 افتراضيًا.

حجم الحزمة عدد صحيح (الناتج)
ضبط حجم الحزمة.

فلاغز الأعلام (المدخلات والمخرجات)
تعيين علامات التنسيق.

القيم الممكنة:

جيجيدكس
تجاهل الفهرس.

فاستسيك
تمكين يسعى سريع ، ولكن غير دقيق لبعض التنسيقات.

الجينات
توليد PTS.

نوفيلين
لا تقم بملء القيم المفقودة التي يمكن حسابها بدقة.

noparse
تعطيل AVParsers ، هذا يحتاج إلى "+ nofillin" أيضًا.

يجرد
تجاهل DTS.

تجاهل الفاسدة
تجاهل الإطارات التالفة.

الفرز
حاول تشذير حزم الإخراج بواسطة DTS.

حفظه
لا تدمج البيانات الجانبية.

لاتم
تفعيل حمولة RTP MP4A-LATM.

نبيل
تقليل زمن الوصول الناتج عن التخزين المؤقت الاختياري

bitexact
اكتب فقط بيانات النظام الأساسي والبناء والمستقلة عن الوقت. هذا يضمن هذا الملف
والمجموعات الاختبارية للبيانات قابلة للتكرار ومطابقة بين الأنظمة الأساسية. استخدامه الأساسي
هو لاختبار الانحدار.

تسعى 2 أي عدد صحيح (إدخال)
السماح بالسعي إلى غير الإطارات الرئيسية على مستوى demuxer عند دعمه إذا تم تعيينه على 1. افتراضي
هو 0.

التحليل عدد صحيح (إدخال)
حدد عدد الميكروثانية التي يتم تحليلها لاستكشاف المدخلات. قيمة أعلى سوف
تمكين اكتشاف معلومات أكثر دقة ، ولكن سيزيد من زمن الوصول. يتم تعيينه افتراضيًا إلى
5,000,000 ميكرو ثانية = 5 ثوان.

كريبتوكي عشري سلسلة (إدخال)
تعيين مفتاح فك التشفير.

com.indexmem عدد صحيح (إدخال)
اضبط الحد الأقصى للذاكرة المستخدمة لفهرس الطابع الزمني (لكل دفق).

com.rtbufsize عدد صحيح (إدخال)
تعيين الحد الأقصى للذاكرة المستخدمة لتخزين الإطارات في الوقت الحقيقي مؤقتًا.

com.fdebug الأعلام (المدخلات والمخرجات)
طباعة معلومات تصحيح أخطاء محددة.

القيم الممكنة:

ts
أقصى_تأجيل عدد صحيح (المدخلات والمخرجات)
عيّن الحد الأقصى لتأخير muxing أو demuxing بالميكروثانية.

الحجم عدد صحيح (إدخال)
تعيين عدد الإطارات المستخدمة لفحص الإطارات في الثانية.

تحميل الصوت عدد صحيح (الناتج)
عيِّن وحدات الميكروثانية التي يجب أن يتم بها تشذير الحزم الصوتية مسبقًا.

Chunk_duration عدد صحيح (الناتج)
تعيين ميكروثانية لكل قطعة.

حجم قطعة عدد صحيح (الناتج)
تعيين الحجم بالبايت لكل قطعة.

Err_detect ، f_err_detect الأعلام (إدخال)
قم بتعيين إشارات اكتشاف الأخطاء. "f_err_detect" مهمل ويجب استخدامه فقط عبر
ال فمبيج الأداة.

القيم الممكنة:

crccheck
تحقق من CRCs المضمنة.

تدفق البت
كشف انحرافات مواصفات تدفق البت.

العازلة
الكشف عن طول تدفق البت غير المناسب.

تفجر
إحباط فك على اكتشاف خطأ طفيف.

حذر
ضع في اعتبارك الأشياء التي تنتهك المواصفات ولم يتم رؤيتها في البرية على أنها
أخطاء.

متوافقة
اعتبر جميع حالات عدم الامتثال للمواصفات على أنها أخطاء.

العدواني
ضع في اعتبارك الأشياء التي لا ينبغي أن يقوم بها برنامج تشفير عاقل على أنها خطأ.

max_interleave_delta عدد صحيح (الناتج)
تعيين الحد الأقصى لمدة التخزين المؤقت للتشذير. يتم التعبير عن المدة بـ
ميكروثانية ، وافتراضية 1000000 (ثانية واحدة).

لضمان تشذير كل التدفقات بشكل صحيح ، سينتظر libavformat حتى يتم ذلك
يحتوي على حزمة واحدة على الأقل لكل تدفق قبل كتابة أي حزم فعليًا إلى
ملف إلاخراج. عندما تكون بعض التدفقات "متفرقة" (أي توجد فجوات كبيرة بينها
الحزم المتتالية) ، يمكن أن يؤدي ذلك إلى التخزين المؤقت المفرط.

يحدد هذا الحقل الحد الأقصى للاختلاف بين الطوابع الزمنية للأول و
الحزمة الأخيرة في قائمة انتظار muxing ، والتي فوقها سيقوم libavformat بإخراج حزمة
بغض النظر عما إذا كان قد وضع حزمة في قائمة الانتظار لجميع التدفقات.

إذا تم التعيين على 0 ، فسيستمر libavformat في تخزين الحزم مؤقتًا حتى تحتوي على حزمة لـ
كل تدفق ، بغض النظر عن الحد الأقصى لاختلاف الطابع الزمني بين المخزن مؤقتًا
الحزم.

use_wallclock_as_timestamps عدد صحيح (إدخال)
استخدم wallclock كطوابع زمنية.

تجنب_السلبية عدد صحيح (الناتج)
القيم الممكنة:

make_non_negative
غيّر الطوابع الزمنية لجعلها غير سلبية. لاحظ أيضًا أن هذا يؤثر فقط
الطوابع الزمنية السلبية البادئة ، وليس الطوابع الزمنية السلبية غير الرتيبة.

جعل_صفر
قم بتغيير الطوابع الزمنية بحيث يكون الطابع الزمني الأول هو 0.

السيارات (افتراضي)
تمكن من التحول عند طلب التنسيق الهدف.

معاق
لإيقاف تحويل الطابع الزمني.

عند تمكين النقل ، يتم إزاحة جميع الطوابع الزمنية للمخرجات بنفس المقدار. صوتي،
يتم الاحتفاظ بإلغاء مزامنة مقاطع الفيديو والعناوين الفرعية والاختلافات النسبية في الطابع الزمني
مقارنة بما كانوا سيصبحون عليه دون تغيير.

Skip_initial_bytes عدد صحيح (إدخال)
قم بتعيين عدد البايتات المطلوب تخطيها قبل قراءة الرأس والإطارات إذا تم تعيينها على 1. الإعداد الافتراضي هو
0.

تصحيح_تس_فائض عدد صحيح (إدخال)
يتم تصحيح تدفقات الطوابع الزمنية الفردية إذا تم ضبطها على 1. الإعداد الافتراضي هو 1.

Flush_packets عدد صحيح (الناتج)
اغسل دفق الإدخال / الإخراج الأساسي بعد كل حزمة. 1 الافتراضي يمكّنه ، ولديه الامتداد
تأثير تقليل الكمون. 0 يعطله وقد يؤدي إلى زيادة طفيفة في الأداء في
بعض الحالات.

input_ts_offset عوض (الناتج)
اضبط وقت الإخراج.

عوض يجب أن يكون تحديد المدة الزمنية ، انظر ال الوقت: مدة الأقامة قسم in ال
ffmpeg- الأدوات(1) كتيب.

تمت إضافة الإزاحة بواسطة muxer إلى الطوابع الزمنية للإخراج.

تحديد إزاحة موجبة يعني أن التدفقات المقابلة قد تأخرت بمقدار
المدة الزمنية المحددة في عوض. القيمة الافتراضية هي 0 (مما يعني عدم وجود إزاحة
مطبق).

format_whitelist قائمة (إدخال)
"،" قائمة منفصلة من demuxers المسموح بها. افتراضيا كل مسموح به.

تفريغ_فاصل سلسلة (إدخال)
يستخدم الفاصل لفصل الحقول المطبوعة في سطر الأوامر حول الدفق
العوامل. على سبيل المثال لفصل الحقول بأسطر جديدة ومسافة بادئة:

ffprobe -dump_separator "
" -أنا ~ / videos / matrixbench_mpeg2.mpg

شكل مجرى المحددات
تسمح محددات دفق التنسيق بتحديد دفق واحد أو أكثر يتطابق مع محدد
خصائص.

الأشكال الممكنة لمحددات التدفق هي:

الفهرس
يطابق الدفق مع هذا الفهرس.

نوع تيار[:الفهرس]
نوع تيار هي واحدة مما يلي: "v" للفيديو ، "a" للصوت ، "s" للترجمة ، "d"
للبيانات ، و "t" للمرفقات. لو الفهرس يتم إعطاؤه ، ثم يطابق
عدد الدفق الفهرس من هذا النوع. خلاف ذلك ، فإنه يطابق كل تيارات هذا
اكتب.

p:معرف البرنامج[:الفهرس]
If الفهرس يتم إعطاؤه ، ثم يطابق التدفق مع الرقم الفهرس في ال
برنامج مع معرف معرف البرنامج. خلاف ذلك ، فإنه يطابق جميع التدفقات في البرنامج.

#معرّف_الدفق
يطابق الدفق بمعرف خاص بالتنسيق.

يتم تحديد الدلالات الدقيقة لمحددات الدفق بواسطة
تم الإعلان عن وظيفة "avformat_match_stream_specifier ()" في ملف libavformat / avformat.h
رأس.

شفاطات


Demuxers هي عناصر تم تكوينها في FFmpeg يمكنها قراءة تدفقات الوسائط المتعددة من ملف
نوع معين من الملفات.

عند تكوين بناء FFmpeg الخاص بك ، يتم تمكين جميع demuxers المدعومة بشكل افتراضي.
يمكنك سرد جميع المتوفرين باستخدام خيار التكوين "--list-demuxers".

يمكنك تعطيل جميع أجهزة إزالة الشفرات باستخدام خيار التكوين "--disable-demuxers" ، و
بشكل انتقائي قم بتمكين demuxer واحد مع الخيار "--enable-demuxer =DEMUXER "أو تعطيل
مع الخيار "--disable-demuxer =DEMUXER ".

سيعرض خيار "- التنسيقات" الخاص بأدوات ff * قائمة بعناصر demuxers الممكّنة.

فيما يلي وصف بعض أدوات demuxers المتوفرة حاليًا.

aa
تنسيق مسموع 2 و 3 و 4 demuxer.

يتم استخدام برنامج demuxer هذا لفك ملفات تنسيق Audible 2 و 3 و 4 (.aa).

تفاحة
برنامج Apple HTTP Live Streaming demuxer.

يعرض هذا demuxer جميع AVStreams من جميع التدفقات المتنوعة. يتم تعيين حقل المعرف إلى
رقم مؤشر متغير معدل البت. من خلال ضبط إشارات الإهمال على AVStreams (بالضغط على "أ"
أو "v" في ffplay) ، يمكن للمتصل تحديد التدفقات المتغيرة التي سيستقبلها بالفعل. ال
إجمالي معدل البت للمتغير الذي ينتمي إليه التدفق متاح في مفتاح البيانات الوصفية
باسم "variant_bitrate".

apng
الرسوم المتحركة demuxer رسومات الشبكة المحمولة.

يتم استخدام برنامج demuxer هذا لتوضيح ملفات APNG. جميع الرؤوس ، ما عدا توقيع PNG ، تصل إلى (لكن
لا تشمل) يتم إرسال مقطع fcTL الأول على هيئة بيانات إضافية. ثم يتم تقسيم الإطارات
باعتبارها جميع الأجزاء بين اثنين من fcTL ، أو بين آخر fcTL و IEND.

-ignore_loop منطقي
تجاهل متغير الحلقة في الملف إذا تم تعيينه.

-الحد الأقصى لإطار في الثانية مادبا
الحد الأقصى لمعدل الإطارات في الإطارات في الثانية (0 بدون حد).

-الافتراضية مادبا
معدل الإطارات الافتراضي في الإطارات في الثانية عندما لا يتم تحديد أي منها في الملف (يعني 0
بأسرع ما يمكن).

محامون بلا حدود
مزيل تنسيق الأنظمة المتقدمة.

يتم استخدام برنامج demuxer هذا لعرض ملفات ASF وتدفقات شبكة MMS.

-no_resync_search منطقي
لا تحاول إعادة المزامنة بالبحث عن رمز بدء اختياري معين.

CONCAT
برنامج demuxer النصي للتسلسل الظاهري.

يقرأ برنامج demuxer هذا قائمة بالملفات والتوجيهات الأخرى من ملف نصي ويزيلها
واحدًا تلو الآخر ، كما لو أن كل عبواتهم قد تم خلطها معًا.

يتم ضبط الطوابع الزمنية في الملفات بحيث يبدأ الملف الأول عند 0 ثم كل التالي
يبدأ الملف حيث ينتهي السابق. لاحظ أنه يتم إجراؤه عالميًا وقد يتسبب في حدوث ذلك
الفجوات إذا لم يكن لكل التدفقات نفس الطول بالضبط.

يجب أن تحتوي جميع الملفات على نفس التدفقات (نفس برامج الترميز ونفس قاعدة الوقت وما إلى ذلك).

تُستخدم مدة كل ملف لضبط الطوابع الزمنية للملف التالي: إذا كان ملف
المدة غير صحيحة (لأنه تم حسابها باستخدام معدل البت أو لأن الملف بتنسيق
مقطوعة ، على سبيل المثال) ، يمكن أن تتسبب في حدوث قطع أثرية. يمكن استخدام التوجيه "المدة" ل
تجاوز المدة المخزنة في كل ملف.

بناء الجملة

البرنامج النصي عبارة عن ملف نصي بتنسيق ASCII الممتد ، مع توجيه واحد لكل سطر. خطوط فارغة
يتم تجاهل المسافات البادئة والأسطر التي تبدأ بـ "#". التوجيه التالي هو
معروف:

"ملف مسار"
مسار الملف للقراءة ؛ يجب تخطي الأحرف والمسافات الخاصة بشرطة مائلة للخلف
أو اقتباسات مفردة.

تنطبق جميع التوجيهات اللاحقة المتعلقة بالملف على هذا الملف.

"ffconcat الإصدار 1.0 "
تحديد نوع البرنامج النصي وإصداره. كما أنه يحدد ملف خزنة الخيار 1 إذا كان عليه
الافتراضي الخاص به -1.

لجعل FFmpeg يتعرف على التنسيق تلقائيًا ، يجب أن يظهر هذا التوجيه تمامًا
كما هي (لا توجد مساحة إضافية أو علامة ترتيب البايت) في السطر الأول من البرنامج النصي.

"المدة الزمنية خشن"
مدة الملف. يمكن تحديد هذه المعلومات من الملف ؛ تحديده
هنا قد يكون أكثر فعالية أو يساعد إذا كانت المعلومات من الملف غير متوفرة
أو دقيق.

إذا تم تعيين المدة لجميع الملفات ، فمن الممكن البحث في الكل
فيديو متسلسل.

"في نقطة الطابع الزمني"
نقطة من الملف. عندما يفتح demuxer الملف فإنه يبحث على الفور عن ملف
الطابع الزمني المحدد. يتم البحث بحيث يمكن تقديم جميع التدفقات بنجاح
في النقطة.

يعمل هذا التوجيه بشكل أفضل مع برامج الترميز داخل الإطار ، لأنه بالنسبة إلى برامج الترميز غير داخل الإطار
ستحصل عادةً على حزم إضافية قبل نقطة الإدخال الفعلية والمحتوى الذي تم فك تشفيره
ستحتوي على الأرجح على إطارات قبل النقطة أيضًا.

لكل ملف ، سيكون للحزم الموجودة قبل الملف In Point طوابع زمنية أقل من ملف
الطابع الزمني المحسوب لبدء الملف (سلبي في حالة الملف الأول) ، و
سيتم تقليل مدة الملفات (إذا لم يتم تحديدها بواسطة توجيه "المدة")
استنادًا إلى النقطة المحددة الخاصة بهم.

بسبب الحزم المحتملة قبل النقطة المحددة ، قد تكون الطوابع الزمنية للحزمة
التداخل بين ملفين متسلسلين.

"نقطة خارجية الطابع الزمني"
نقطة الخروج من الملف. عندما يصل جهاز demuxer إلى الطابع الزمني لفك التشفير المحدد في
أي من التدفقات ، فإنه يتعامل معها كنهاية لشرط الملف ويتخطى التيار
وجميع الحزم المتبقية من كافة التدفقات.

نقطة الإخراج حصرية ، مما يعني أن مزيل الاستخدام لن يقوم بإخراج الحزم ذات الامتداد
الطابع الزمني لفك التشفير أكبر من أو يساوي نقطة الخروج.

يعمل هذا التوجيه بشكل أفضل مع برامج الترميز والتنسيقات داخل الإطار حيث توجد جميع التدفقات
معشق بإحكام. بالنسبة إلى برامج الترميز غير داخل الإطار ، ستحصل عادةً على ملفات إضافية
الحزم مع الطابع الزمني للعرض بعد نقطة الخروج وبالتالي فإن المحتوى الذي تم فك تشفيره
تحتوي على الأرجح على إطارات بعد نقطة الخروج أيضًا. إذا لم يتم إحكام التدفقات الخاصة بك
معشق قد لا تحصل على جميع الحزم من جميع التدفقات قبل Out Point وأنت
قد يكون قادرًا فقط على فك تشفير الدفق الأقدم حتى نقطة الخروج.

ستكون مدة الملفات (إذا لم يتم تحديدها بواسطة توجيه "المدة")
مخفضة بناءً على نقطة الخروج المحددة الخاصة بهم.

"file_packet_metadata مفتاح = القيمة"
البيانات الوصفية لحزم الملف. سيتم تعيين البيانات الوصفية المحددة لكل ملف
رزمة. يمكنك تحديد هذا التوجيه عدة مرات لإضافة بيانات وصفية متعددة
الإدخالات.

"مجرى"
قدم دفقًا في الملف الظاهري. جميع التوجيهات اللاحقة ذات الصلة بالتيار
تنطبق على آخر تيار تم تقديمه. يجب تعيين بعض خصائص التدفقات من أجل
السماح بتحديد التدفقات المتطابقة في الملفات الفرعية. إذا لم يتم تحديد تدفقات في
البرنامج النصي ، يتم نسخ التدفقات من الملف الأول.

"معرّف_تدفق_الدقّة id"
تعيين معرف الدفق. إذا تم إعطاء هذا التوجيه ، فإن السلسلة ذات الامتداد
سيتم استخدام المعرف المقابل في الملفات الفرعية. هذا مفيد بشكل خاص مع MPEG-PS
(VOB) ، حيث لا يمكن الاعتماد على ترتيب التدفقات.

مزيد من الخيارات

يقبل هذا demuxer الخيار التالي:

خزنة
إذا تم التعيين على 1 ، ارفض مسارات الملفات غير الآمنة. يعتبر مسار الملف آمنًا إذا لم يكن كذلك
تحتوي على مواصفات بروتوكول وهي نسبية وتحتوي جميع المكونات فقط
أحرف من مجموعة الأحرف المحمولة (أحرف وأرقام ونقطة وشرطة سفلية و
واصلة) وليس لها نقطة في بداية المكون.

إذا تم التعيين على 0 ، فسيتم قبول أي اسم ملف.

الإعداد الافتراضي هو -1 ، وهو ما يعادل 1 إذا تم فحص التنسيق تلقائيًا و 0
غير ذلك.

تحويل تلقائي
إذا تم التعيين على 1 ، فحاول إجراء تحويلات تلقائية على حزم البيانات لإجراء التدفقات
قابل للتسلسل. الافتراضي هو 1.

حاليًا ، التحويل الوحيد هو إضافة مرشح تدفق البتات h264_mp4toannexb إلى
تدفقات H.264 بتنسيق MP4. هذا ضروري بشكل خاص إذا كان هناك قرار
التغييرات.

FLV
أدوبي فلاش تنسيق الفيديو demuxer.

يستخدم هذا demuxer لعرض ملفات FLV وتدفقات شبكة RTMP.

-flv_metadata منطقي
قم بتخصيص التدفقات وفقًا لمحتوى مصفوفة onMetaData.

libgme
مكتبة Game Music Emu عبارة عن مجموعة من برامج محاكاة ملفات موسيقى ألعاب الفيديو.

نرىhttp://code.google.com/p/game-music-emu/> لمزيد من المعلومات.

بعض الملفات لها مسارات متعددة. سيختار demuxer المسار الأول افتراضيًا. ال
المسار_الفهرس يمكن استخدام الخيار لتحديد مسار مختلف. تبدأ فهارس المسار عند 0. ملف
يقوم demuxer بتصدير عدد المسارات بتنسيق المسارات إدخال البيانات الوصفية.

بالنسبة للملفات الكبيرة جدًا ، فإن ملفات اقصى حجم قد يتعين تعديل الخيار.

libquvi
قم بتشغيل الوسائط من خدمات الإنترنت باستخدام مشروع quvi.

يقبل demuxer ملف شكل خيار لطلب جودة معينة. يتم تعيينه افتراضيًا على
أفضل.

نرىhttp://quvi.sourceforge.net/> لمزيد من المعلومات.

يحتاج FFmpeg إلى أن يتم بناؤه باستخدام "--enable-libquvi" حتى يتم تمكين مزيل الفيديو هذا.

GIF
مزيل الرسوم المتحركة GIF.

يقبل الخيارات التالية:

أدنى_تأجيل
قم بتعيين الحد الأدنى للتأخير الصالح بين الإطارات في مئات من الثواني. النطاق من 0 إلى
6000. القيمة الافتراضية هي 2.

max_gif_delay
قم بتعيين الحد الأقصى للتأخير الصالح بين الإطارات في المائة من الثانية. النطاق من 0 إلى
65535. القيمة المفترضة هي 65535 (ما يقرب من XNUMX دقيقة) ، القيمة القصوى المسموح بها من قبل
المواصفات.

الافتراضي_تأجيل
تعيين التأخير الافتراضي بين الإطارات في مئات من الثواني. النطاق من 0 إلى 6000.
القيمة الافتراضية هي 10.

تجاهل_حلقة
يمكن أن تحتوي ملفات GIF على معلومات لتكرارها لعدد معين من المرات (أو بلا حدود).
If تجاهل_حلقة تم ضبطه على 1 ، ثم سيتم تجاهل إعداد الحلقة من الإدخال و
التكرار لن يحدث. إذا تم التعيين على 0 ، فسيحدث التكرار وسيؤدي إلى تدوير الرقم
من المرات وفقًا لـ GIF. القيمة الافتراضية هي 1.

على سبيل المثال ، باستخدام مرشح التراكب ، ضع صورة GIF متكررة بشكل لا نهائي فوق فيديو آخر:

ffmpeg -i input.mp4 -ignore_loop 0 -i input.gif -filter_complex overlay = أقصر = 1 out.mkv

لاحظ أنه في المثال أعلاه ، يتم استخدام أقصر خيار لمرشح التراكب لإنهاء ملف
إخراج الفيديو بطول أقصر ملف إدخال ، وهو في هذه الحالة المدخلات. mp4 as
يتكرر ملف GIF في هذا المثال بشكل لا نهائي.

image2
demuxer ملف الصورة.

يقرأ برنامج demuxer هذا من قائمة ملفات الصور المحددة بواسطة النمط. بناء الجملة و
يتم تحديد معنى النمط بواسطة الخيار نوع نمط.

قد يحتوي النمط على لاحقة تُستخدم لتحديد تنسيق
الصور الموجودة في الملفات.

يجب أن يكون الحجم وتنسيق البكسل وتنسيق كل صورة هو نفسه لجميع ملفات
الملفات في التسلسل.

يقبل هذا demuxer الخيارات التالية:

فراميراتي
تعيين معدل الإطارات لدفق الفيديو. القيمة الافتراضية هي 25.

حلقة
إذا تم التعيين على 1 ، قم بالتكرار فوق الإدخال. القيمة الافتراضية هي 0.

نوع نمط
حدد نوع النمط المستخدم لتفسير اسم الملف المقدم.

نوع نمط يقبل إحدى القيم التالية.

لا شيء
قم بتعطيل مطابقة النمط ، لذلك سيحتوي الفيديو على النطاق المحدد فقط
صورة. يجب عليك استخدام هذا الخيار إذا كنت لا تريد إنشاء تسلسلات من
صور متعددة وقد تحتوي أسماء الملفات الخاصة بك على أحرف نمط خاصة.

تسلسل
حدد نوع نمط التسلسل ، المستخدم لتحديد سلسلة من الملفات المفهرسة بواسطة
أرقام متسلسلة.

قد يحتوي نمط التسلسل على السلسلة "٪ d" أو "٪ 0"Nd "، الذي يحدد ملف
موضع الأحرف التي تمثل رقمًا متسلسلًا في كل اسم ملف
يقابله النمط. إذا كان النموذج "٪ d0Nd "، السلسلة التي تمثل
الرقم في كل اسم ملف هو 0 مبطن و N هو العدد الإجمالي للأرقام 0 مبطن
يمثل الرقم. يمكن تحديد الحرف الحرفي '٪' في النمط
مع السلسلة "٪٪".

إذا كان نمط التسلسل يحتوي على "٪ d" أو "٪ 0"Nd "، اسم الملف الأول للملف
يجب أن تحتوي القائمة المحددة بواسطة النمط على رقم تم تضمينه بشكل شامل بين
رقم البداية و رقم البداية+start_number_range-1 وجميع الأرقام التالية
يجب أن تكون متتالية.

على سبيل المثال ، سيطابق النمط "img-٪ 03d.bmp" تسلسل أسماء ملفات
النموذج المرفق IMG-001.bmp, IMG-002.bmp، ... ، IMG-010.bmp، إلخ.؛ النمط
سيتطابق "i ٪٪ m ٪٪ g-٪ d.jpg" loading = "lazy" مع سلسلة من أسماء الملفات في النموذج i٪ m٪ g-1.jpg,
i٪ m٪ g-2.jpg، ... ، i٪ m٪ g-10.jpg، الخ.

لاحظ أن النمط يجب ألا يحتوي بالضرورة على "٪ d" أو "٪ 0"Nد "، على سبيل المثال ل
تحويل ملف صورة واحدة img.jpeg يمكنك استخدام الأمر:

ffmpeg -i img.jpeg img.png

الكرة
حدد نوع نمط glob wildcard.

يتم تفسير النمط على أنه نمط "glob ()". يمكن تحديد هذا فقط إذا
تم تجميع libavformat مع دعم متوهج.

glob_sequence (إهمال، سوف be إزالة)
حدد نمط أحرف بدل / تسلسل كروي مختلط.

إذا تم تجميع نسختك من libavformat مع دعم متوهج ، فإن ملف
يحتوي النمط المقدم على حرف تعريف glob واحد على الأقل بين "٪ *؟ [] {}" أي
مسبوقًا بـ "٪" لم يتم تجاوزه ، يتم تفسير النمط على أنه نمط "glob ()" ،
وإلا يتم تفسيره كنمط تسلسلي.

يجب أن تبدأ كل أحرف glob الخاصة "٪ *؟ [] {}" بـ "٪". للهروب أ
حرفيًا "٪" يجب أن تستخدم "٪٪".

على سبيل المثال ، سيطابق النمط "foo -٪ *. jpeg" جميع أسماء الملفات المسبوقة بـ
"foo-" والانتهاء بـ ".jpeg" و "foo -٪؟٪؟٪ ؟. jpeg" سيطابق كل
أسماء الملفات مسبوقة بـ "foo-" ، متبوعة بتسلسل من ثلاثة أحرف ، و
إنهاء بـ ".jpeg".

تم إهمال هذا النوع من النمط لصالح الكرة و تسلسل.

القيمة الافتراضية هي glob_sequence.

تنسيق_البكسل
اضبط تنسيق البكسل للصور على قراءتها. إذا لم يتم تحديد تنسيق البكسل هو
من ملف الصورة الأول في التسلسل.

رقم البداية
عيّن فهرس الملف المطابق بنمط ملف الصورة لبدء القراءة منه.
القيمة الافتراضية هي 0.

start_number_range
اضبط نطاق الفهرس للتحقق عند البحث عن ملف الصورة الأول في ملف
تسلسل يبدأ من رقم البداية. القيمة الافتراضية هي 5.

ts_from_file
إذا تم التعيين على 1 ، فسيتم تعيين الطابع الزمني للإطار على وقت تعديل ملف الصورة. لاحظ أن
لا يتم توفير رتابة الطوابع الزمنية: يتم عرض الصور بنفس الترتيب بدونها
اختيار. القيمة الافتراضية هي 0. في حالة الضبط على 2 ، سيتم تعيين الطابع الزمني للإطار على التعديل
وقت ملف الصورة بدقة نانوثانية.

video_size
اضبط حجم الفيديو للصور على قراءتها. إذا لم يتم تحديد حجم الفيديو يتم تخمينه
من ملف الصورة الأول في التسلسل.

أمثلة

· يستخدم فمبيج لإنشاء فيديو من الصور في تسلسل الملف img-001.jpeg,
img-002.jpeg، ... ، بافتراض معدل إطار إدخال يبلغ 10 إطارات في الثانية:

ffmpeg -framerate 10 -i 'img-٪ 03d.jpeg' out.mkv

· على النحو الوارد أعلاه ، ولكن ابدأ بالقراءة من ملف فهرس 100 في التسلسل:

ffmpeg -framerate 10 -start_number 100 -i 'img-٪ 03d.jpeg' out.mkv

قراءة الصور المطابقة لـ "* .png" loading = "lazy" على نمط glob ، وهذا هو كل الملفات التي تنتهي بـ
تحميل ".png" = لاحقة "كسول":

ffmpeg -framerate 10 -pattern_type glob -i "* .png" loading = "lazy" out.mkv

موف / mp4 / 3gp / كويكتمي
برنامج فك الشفرة Quicktime / MP4.

يقبل هذا demuxer الخيارات التالية:

تمكين المراجع
تمكين تحميل المسارات الخارجية ، معطل افتراضيًا. تمكين هذا يمكن
تتسرب المعلومات نظريًا في بعض حالات الاستخدام.

use_absolute_path
يسمح بتحميل المسارات الخارجية عبر المسارات المطلقة ، معطلة بشكل افتراضي. التمكين
هذا يشكل مخاطرة أمنية. يجب تمكينه فقط إذا كان من المعروف أن المصدر ليس
ضار.

mpegts
مزيل دفق نقل MPEG-2.

يقبل هذا demuxer الخيارات التالية:

إعادة مزامنة الحجم
قم بتعيين حد الحجم للبحث عن مزامنة جديدة. القيمة الافتراضية هي 65536.

fix_teletext_pts
تجاوز قيم PTS و DTS لحزمة النص التليفزيوني بالطوابع الزمنية المحسوبة من
PCR للبرنامج الأول الذي يعد تدفق النص التليفزيوني جزءًا منه ولا يتم تجاهله.
القيمة الافتراضية هي 1 ، اضبط هذا الخيار على 0 إذا كنت تريد حزمة النص التليفزيوني PTS و DTS
القيم التي لم تمسها.

ts_packetsize
خيار الإخراج يحمل حجم الحزمة الأولية بالبايت. إظهار الحزمة الأولية المكتشفة
الحجم ، لا يمكن للمستخدم تحديده.

scan_all_pmts
امسح ودمج جميع اختبارات PMT. القيمة هي عدد صحيح بقيمة من -1 إلى 1 (-1 يعني
الإعداد التلقائي ، 1 يعني ممكّن ، 0 يعني معطل). القيمة الافتراضية هي -1.

الفيديو الخام
مزيل الفيديو الخام للفيديو.

يسمح هذا demuxer للمرء بقراءة بيانات الفيديو الخام. نظرًا لعدم وجود رأس يحدد ملف
معلمات الفيديو المفترضة ، يجب على المستخدم تحديدها حتى يتمكن من فك شفرة
البيانات بشكل صحيح.

يقبل هذا demuxer الخيارات التالية:

فراميراتي
تعيين معدل إطار الفيديو الإدخال. القيمة الافتراضية هي 25.

تنسيق_البكسل
اضبط تنسيق بكسل فيديو الإدخال. القيمة الافتراضية هي "yuv420p".

video_size
اضبط حجم إدخال الفيديو. يجب تحديد هذه القيمة بشكل صريح.

على سبيل المثال لقراءة ملف rawvideo المدخلات مع ffplay، بافتراض تنسيق البكسل
"rgb24" ، وحجم فيديو "320 × 240" ، ومعدل إطارات 10 صور في الثانية ، استخدم
أمر:

ffplay -f Rawvideo -pixel_format rgb24 -video_size 320x240 -framerate 10 input.raw

مجموعة بن لادن
SBaGen النصي demuxer.

يقرأ برنامج demuxer لغة البرنامج النصي المستخدمة بواسطة SBaGenhttp://uazu.net/sbagen/> إلى
توليد ضربات بكلتا الأذنين. يبدو نص SBG كما يلي:

-SE
a: 300-2.5/3 440+4.5/0
b: 300-2.5/0 440+4.5/3
إيقاف: -
الآن == أ
+0: ​​07: 00 == ب
+0: ​​14: 00 == أ
+0: ​​21: 00 == ب
+0: ​​30: 00 قبالة

يمكن أن يخلط نص SBG بين الطوابع الزمنية المطلقة والنسبية. إذا كان البرنامج النصي يستخدم إما فقط
الطوابع الزمنية المطلقة (بما في ذلك وقت بدء النص البرمجي) أو الطوابع النسبية فقط ، ثم
تم إصلاح التنسيق ، والتحويل مباشر. من ناحية أخرى ، إذا كان النص
يمزج بين كلا النوعين من الطوابع الزمنية ، ثم ملف الآن مرجع الطوابع الزمنية النسبية سيكون
مأخوذة من الوقت الحالي من اليوم في وقت قراءة النص وتخطيط البرنامج النصي
سيتم تجميدها وفقًا لذلك المرجع. هذا يعني أنه إذا كان البرنامج النصي مباشرة
تم لعبها ، ستتطابق الأوقات الفعلية مع الطوابع الزمنية المطلقة حتى وحدة التحكم في الصوت
دقة الساعة ، ولكن إذا قام المستخدم بطريقة ما بإيقاف التشغيل مؤقتًا أو طلب ذلك ، فستكون جميع الأوقات كذلك
تبعا لذلك.

Tedcaptions
تم استخدام التسميات التوضيحية لـ JSON لـhttp://www.ted.com/>.

لا يوفر TED روابط للتعليقات التوضيحية ، ولكن يمكن تخمينها من الصفحة. ال
ملف أدوات / bookmarklets.html من شجرة مصدر FFmpeg يحتوي على إشارة مرجعية لعرضها
لهم.

يقبل هذا demuxer الخيار التالي:

وقت البدء
اضبط وقت بدء حديث TED ، بالمللي ثانية. الافتراضي هو 15000 (15 ثانية). إنها
تستخدم لمزامنة التسميات التوضيحية مع مقاطع الفيديو القابلة للتنزيل ، لأنها تتضمن 15 ثانية
مقدمة.

مثال: تحويل التسميات التوضيحية إلى تنسيق يفهمه معظم اللاعبين:

فمبيج -i http://www.ted.com/talks/subtitles/id/1/lang/en talk1-ar.srt

مكسور


Muxers هي عناصر تم تكوينها في FFmpeg والتي تسمح بكتابة تدفقات الوسائط المتعددة إلى ملف
نوع معين من الملفات.

عند تكوين بناء FFmpeg الخاص بك ، يتم تمكين جميع أجهزة muxers المدعومة افتراضيًا. أنت
يمكن سرد جميع أجهزة muxers المتاحة باستخدام خيار التكوين "--list-muxers".

يمكنك تعطيل جميع أجهزة muxers باستخدام خيار التكوين "--disable-muxers" و
قم بتمكين / تعطيل أجهزة Muxers المفردة بشكل انتقائي باستخدام الخيارات "--enable-muxer =مكسر " /
"- تعطيل مكسر =مكسر ".

سيعرض خيار "- التنسيقات" الخاص بأدوات ff * قائمة بأجهزة Muxers الممكّنة.

فيما يلي وصف لبعض أجهزة muxers المتوفرة حاليًا.

أيف
تنسيق ملف تبادل الصوت muxer.

مزيد من الخيارات

يقبل الخيارات التالية:

write_id3v2
قم بتمكين كتابة علامات ID3v2 عند التعيين على 1. الإعداد الافتراضي هو 0 (معطل).

id3v2_version
حدد إصدار ID3v2 للكتابة. حاليًا الإصداران 3 و 4 فقط (ويعرف أيضًا باسم ID3v2.3 و
ID3v2.4) مدعومة. الافتراضي هو الإصدار 4.

اتفاقية حقوق الطفل
تنسيق اختبار CRC (فحص التكرار الدوري).

يحسب هذا muxer ويطبع Adler-32 CRC لجميع إطارات الصوت والفيديو.
بشكل افتراضي ، يتم تحويل إطارات الصوت إلى إطارات صوت وفيديو خام 16 بت موقعة إلى RAW
الفيديو قبل حساب اتفاقية حقوق الطفل.

يتكون خرج muxer من سطر واحد بالشكل: CRC = 0 xلجنة حقوق الطفل، حيث لجنة حقوق الطفل هو
رقم سداسي عشري 0 - مبطن إلى 8 أرقام تحتوي على CRC لجميع المدخلات التي تم فك تشفيرها
الإطارات.

انظر أيضا Framecrc مكسر.

أمثلة

على سبيل المثال لحساب CRC للمدخلات ، وتخزينها في الملف out.crc:

ffmpeg -i الإدخال -f crc out.crc

يمكنك طباعة CRC إلى stdout باستخدام الأمر:

ffmpeg -i المدخلات -f crc -

يمكنك تحديد تنسيق الإخراج لكل إطار باستخدام فمبيج من خلال تحديد الصوت و
ترميز الفيديو وتنسيقه. على سبيل المثال لحساب CRC لمدخل الصوت المحول إلى PCM
8 بت بدون إشارة وتحويل إدخال الفيديو إلى فيديو MPEG-2 ، استخدم الأمر:

ffmpeg -i الإدخال -c: a pcm_u8 -c: v mpeg2video -f crc -

Framecrc
تنسيق اختبار CRC (فحص التكرار الدوري) لكل حزمة.

يحسب هذا muxer ويطبع Adler-32 CRC لكل حزمة صوت وفيديو. بواسطة
يتم تحويل إطارات الصوت الافتراضية إلى إطارات صوت وفيديو خام 16 بت موقعة إلى خام
الفيديو قبل حساب اتفاقية حقوق الطفل.

يتكون إخراج muxer من سطر لكل حزمة صوت وفيديو بالنموذج:

و و و و ، 0x

لجنة حقوق الطفل هو رقم سداسي عشري 0 مبطن إلى 8 أرقام يحتوي على CRC للحزمة.

أمثلة

على سبيل المثال لحساب اتفاقية حقوق الطفل لإطارات الصوت والفيديو بتنسيق INPUT، وتحويلها إلى خام
حزم الصوت والفيديو ، وتخزينها في الملف out.crc:

ffmpeg -i INPUT -f Framecrc out.crc

لطباعة المعلومات إلى stdout ، استخدم الأمر:

ffmpeg -i INPUT -f Framecrc -

بدافع فمبيج، يمكنك تحديد تنسيق الإخراج الذي تكون عليه إطارات الصوت والفيديو
تم ترميزه قبل حساب CRC لكل حزمة عن طريق تحديد برنامج ترميز الصوت والفيديو.
على سبيل المثال ، لحساب CRC لكل إطار صوتي للإدخال تم فك تشفيره تم تحويله إلى PCM
8 بتات بدون إشارة ولكل إطار فيديو دخل تم فك ترميزه وتحويله إلى فيديو MPEG-2 ، استخدم
أمر:

ffmpeg -i INPUT -c: a pcm_u8 -c: v mpeg2video -f Framecrc -

انظر أيضا اتفاقية حقوق الطفل مكسر.

فراميمد 5
تنسيق اختبار MD5 لكل حزمة.

يقوم هذا الجهاز بحساب وطباعة تجزئة MD5 لكل حزمة صوت وفيديو. بشكل افتراضي
يتم تحويل إطارات الصوت إلى إطارات صوت وفيديو خام 16 بت موقعة إلى فيديو خام من قبل
حساب التجزئة.

يتكون إخراج muxer من سطر لكل حزمة صوت وفيديو بالنموذج:

و و و و و

MD5 هو رقم سداسي عشري يمثل تجزئة MD5 المحسوبة للحزمة.

أمثلة

على سبيل المثال لحساب MD5 لإطارات الصوت والفيديو بتنسيق INPUT، وتحويلها إلى خام
حزم الصوت والفيديو ، وتخزينها في الملف out.md5:

ffmpeg -i الإدخال -f Framemd5 out.md5

لطباعة المعلومات إلى stdout ، استخدم الأمر:

ffmpeg -i INPUT -f Framemd5 -

انظر أيضا md5 مكسر.

GIF
GIF المتحركة muxer.

يقبل الخيارات التالية:

حلقة
اضبط عدد مرات تكرار الإخراج. استخدم "-1" لعدم وجود حلقة ، 0 للتكرار
إلى أجل غير مسمى (افتراضي).

نهائي_تأجيل
فرض التأخير (معبرًا عنه بالمئوية ثانية) بعد الإطار الأخير. كل إطار ينتهي بـ
تأخير حتى الإطار التالي. الافتراضي هو "-1" ، وهي قيمة خاصة يجب تحديدها
muxer لإعادة استخدام التأخير السابق. في حالة وجود حلقة ، قد ترغب في التخصيص
هذه القيمة لتمييز وقفة على سبيل المثال.

على سبيل المثال ، لترميز gif looping 10 مرات ، مع تأخير 5 ثوانٍ بين الحلقات:

ffmpeg -i INPUT-loop 10 -final_delay 500 out.gif

ملاحظة 1: إذا كنت ترغب في استخراج الإطارات في ملفات GIF منفصلة ، فأنت بحاجة إلى فرض ملف
image2 مكسر:

ffmpeg -i INPUT -c: v gif -f image2 "out٪ d.gif"

ملاحظة 2: يحتوي تنسيق GIF على قاعدة زمنية صغيرة جدًا: لا يمكن أن يكون التأخير بين إطارين
أصغر من سنتي ثانية.

HLS
Apple HTTP Live Streaming muxer الذي يقطع MPEG-TS وفقًا لـ HTTP Live Streaming
(HLS) المواصفات.

يقوم بإنشاء ملف قائمة تشغيل وملف مقطع واحد أو أكثر. يحدد اسم ملف الإخراج
اسم ملف قائمة التشغيل.

بشكل افتراضي ، ينشئ muxer ملفًا لكل مقطع يتم إنتاجه. هذه الملفات لها نفس الشيء
كقائمة تشغيل ، متبوعًا برقم تسلسلي وامتداد .ts.

على سبيل المثال ، لتحويل ملف إدخال بامتداد فمبيج:

ffmpeg -i in.nut out.m3u8

سينتج هذا المثال قائمة التشغيل ، خارج m3u8و ملفات المقطع: out0.ts, out1.ts,
out2.ts، الخ.

انظر أيضا قطعة muxer ، والذي يوفر تنفيذًا أكثر عمومية ومرونة لملف
المجزأة ، ويمكن استخدامها لأداء HLS التجزئة.

مزيد من الخيارات

يدعم هذا muxer الخيارات التالية:

hls_time ثواني
اضبط طول المقطع بالثواني. القيمة الافتراضية هي 2.

hls_list_size الأحجام
قم بتعيين الحد الأقصى لعدد إدخالات قائمة التشغيل. إذا تم التعيين على 0 ، فسيحتوي ملف القائمة على الكل
الشرائح. القيمة الافتراضية هي 5.

hls_ts_options قائمة الخيارات
عيّن خيارات تنسيق الإخراج باستخدام: - قائمة منفصلة لمعلمات المفتاح = القيمة. قيم
التي تحتوي على ":" يجب تخطي الأحرف الخاصة.

hls_wrap التفاف
قم بتعيين الرقم الذي بعده رقم اسم ملف المقطع (الرقم المحدد في كل منها
ملف الجزء) يلتف. إذا تم الضبط على 0 ، فلن يتم تغليف الرقم أبدًا. القيمة الافتراضية هي 0.

هذا الخيار مفيد لتجنب ملء القرص بالعديد من ملفات المقطع ، والحدود
أقصى عدد من ملفات المقطع التي تمت كتابتها على القرص التفاف.

رقم البداية عدد
بدء رقم تسلسل قائمة التشغيل من عدد. القيمة الافتراضية هي 0.

hls_allow_cache allowcache
حدد بشكل صريح ما إذا كان العميل قد \fIs0(1) أو لا يجبfIs0(0) وسائط التخزين المؤقت
شرائح.

hls_base_url القاعدة
ألحق القاعدة لكل إدخال في قائمة التشغيل. مفيد لإنشاء قوائم التشغيل باستخدام
المسارات المطلقة.

لاحظ أن رقم تسلسل قائمة التشغيل يجب أن يكون فريدًا لكل مقطع وهو ليس كذلك
يجب الخلط بينه وبين رقم تسلسل اسم ملف المقطع والذي يمكن أن يكون دوريًا ، لـ
مثال إذا كان التفاف تم تحديد الخيار.

hls_segment_filename اسم الملف
قم بتعيين اسم ملف المقطع. ما لم يتم تعيين hls_flags single_file اسم الملف يستخدم ك
تنسيق سلسلة برقم المقطع:

ffmpeg in.nut -hls_segment_filename 'file٪ 03d.ts' out.m3u8

سينتج هذا المثال قائمة التشغيل ، خارج m3u8و ملفات المقطع: file000.ts,
file001.ts, file002.ts، الخ.

hls_key_info_file key_info_file
استخدم المعلومات الموجودة في key_info_file لتشفير المقطع. السطر الأول من
key_info_file يحدد عنوان URI الرئيسي المكتوب في قائمة التشغيل. يتم استخدام عنوان URL الرئيسي ل
الوصول إلى مفتاح التشفير أثناء التشغيل. يحدد السطر الثاني المسار إلى ملف
مفتاح الملف المستخدم للحصول على المفتاح أثناء عملية التشفير. تتم قراءة ملف المفتاح بصيغة
صفيف واحد معبأ من 16 ثماني بتات بتنسيق ثنائي. يحدد السطر الثالث الاختياري
متجه التهيئة (IV) كسلسلة سداسية عشرية لاستخدامها بدلاً من
رقم تسلسل المقطع (افتراضي) للتشفير. تغيير الى key_info_file سينتج
في تشفير المقطع باستخدام المفتاح الجديد / IV وإدخال في قائمة التشغيل للمفتاح الجديد
URI / IV.

تنسيق ملف المعلومات الرئيسية:



(اختياري)

مثال على معرّفات URI الرئيسية:

http://server/file.key
/المسار/إلى/file.key
file.key

مثال على مسارات ملفات المفاتيح:

file.key
/المسار/إلى/file.key

المثال الرابع:

0123456789 ABCDEF0123456789 ABCDEF

مثال على ملف المعلومات الرئيسية:

http://server/file.key
/المسار/إلى/file.key
0123456789 ABCDEF0123456789 ABCDEF

مثال على برنامج شل النصي:

#!/ بن / ش
BASE_URL = $ {1: - '.'}
opensl rand 16> file.key
صدى $ BASE_URL / file.key> file.keyinfo
صدى file.key >> file.keyinfo
صدى $ (openssl rand -hex 16) >> file.keyinfo
ffmpeg -f lavfi -re -i testsrc -c: v h264 -hls_flags delete_segments \
-hls_key_info_file file.keyinfo out.m3u8

hls_flags ملف واحد
إذا تم تعيين هذا العلم ، فسيقوم جهاز muxer بتخزين جميع المقاطع في ملف MPEG-TS واحد ، و
سيستخدم نطاقات البايت في قائمة التشغيل. قوائم تشغيل HLS التي تم إنشاؤها بهذه الطريقة سيكون لها
رقم الإصدار 4. على سبيل المثال:

ffmpeg -i in.nut -hls_flags Single_file out.m3u8

سينتج قائمة التشغيل ، خارج m3u8وملف مقطع واحد ، out.ts.

hls_flags delete_segments
يتم حذف ملفات الأجزاء التي تمت إزالتها من قائمة التشغيل بعد فترة زمنية مساوية لـ
مدة المقطع بالإضافة إلى مدة قائمة التشغيل.

منظمة البن الدولية
ملف ICO.

يحتوي تنسيق ملف رمز Microsoft (ICO) على بعض القيود الصارمة التي يجب ملاحظتها:

لا يمكن أن يتجاوز الحجم 256 بكسل بأي بُعد

يمكن تخزين صور BMP و PNG فقط

· في حالة استخدام صورة BMP ، يجب أن تكون أحد تنسيقات البكسل التالية:

عمق بت BMP، تنسيق بكسل FFmpeg
1 بت pal8
4 بت pal8
8 بت pal8
16 بت rgb555le
24 بت bgr24
32 بت bgra

· في حالة استخدام صورة BMP ، يجب أن تستخدم رأس BITMAPINFOHEADER DIB

· في حالة استخدام صورة PNG ، يجب أن تستخدم تنسيق rgba بكسل

image2
ملف الصورة muxer.

يكتب ملف الصورة muxer إطارات الفيديو إلى ملفات الصور.

يتم تحديد أسماء ملفات الإخراج بواسطة نمط يمكن استخدامه لإنتاج بشكل تسلسلي
سلسلة مرقمة من الملفات. قد يحتوي النمط على السلسلة "٪ d" أو "٪ 0"Nد "، هذه السلسلة
يحدد موضع الأحرف التي تمثل الترقيم في أسماء الملفات. إذا كان
شكل "٪ 0Nd "، السلسلة التي تمثل الرقم في كل اسم ملف هي 0-padded to N
أرقام. يمكن تحديد الحرف الحرفي '٪' في النمط ذي السلسلة النصية "٪٪".

إذا كان النقش يحتوي على "٪ d" أو "٪ 0"Nd "، فسيكون اسم الملف الأول لقائمة الملفات المحددة
تحتوي على الرقم 1 ، جميع الأرقام التالية ستكون متسلسلة.

قد يحتوي النمط على لاحقة تُستخدم لتحديد تنسيق
ملفات الصور المراد كتابتها.

على سبيل المثال ، سيحدد النمط "img-٪ 03d.bmp" سلسلة من أسماء الملفات الخاصة بالنموذج
IMG-001.bmp, IMG-002.bmp، ... ، IMG-010.bmp، إلخ. سيحدد النمط "img ٪٪ -٪ d.jpg" loading = "lazy"
تسلسل أسماء ملفات النموذج img٪ -1.jpg, img٪ -2.jpg، ... ، img٪ -10.jpg، الخ.

أمثلة

يوضح المثال التالي كيفية استخدام فمبيج لإنشاء تسلسل من الملفات
img-001.jpeg, img-002.jpeg، ... ، أخذ صورة واحدة كل ثانية من إدخال الفيديو:

ffmpeg -i in.avi -vsync 1 -r 1 -f image2 'img-٪ 03d.jpeg'

لاحظ أن مع فمبيج، إذا لم يتم تحديد التنسيق باستخدام الخيار "-f" والإخراج
اسم الملف يحدد تنسيق ملف صورة ، يتم تحديد muxer image2 تلقائيًا ، لذلك
يمكن كتابة الأمر السابق على النحو التالي:

ffmpeg -i in.avi -vsync 1 -r 1 'img-٪ 03d.jpeg'

لاحظ أيضًا أن النمط لا يجب أن يحتوي بالضرورة على "٪ d" أو "٪ 0"Nد "، على سبيل المثال ل
إنشاء ملف صورة واحد img.jpeg من إدخال الفيديو يمكنك استخدام الأمر:

ffmpeg -i in.avi -f image2 -frames: v 1 img.jpeg

com.strftime يسمح لك الخيار بتوسيع اسم الملف بمعلومات التاريخ والوقت.
تحقق من توثيق الوظيفة "strftime ()" لبناء الجملة.

على سبيل المثال لإنشاء ملفات صور من النمط "strftime ()" "٪ Y-٪ m-٪ d_٪ H-٪ M-٪ S" ،
متابعيك فمبيج يمكن استخدام الأمر:

ffmpeg -f v4l2 -r 1 -i / dev / video0 -f image2 -strftime 1 "٪ Y-٪ m-٪ d_٪ H-٪ M-٪ S.jpg"

مزيد من الخيارات

رقم البداية
ابدأ التسلسل من الرقم المحدد. القيمة الافتراضية هي 0.

تحديث
إذا تم تعيينه على 1 ، فسيتم دائمًا تفسير اسم الملف على أنه مجرد اسم ملف ، وليس كملف
نمط ، والملف المقابل سوف يتم استبداله بشكل مستمر بصور جديدة.
القيمة الافتراضية هي 0.

com.strftime
إذا تم التعيين على 1 ، فقم بتوسيع اسم الملف بمعلومات التاريخ والوقت من "strftime ()".
القيمة الافتراضية هي 0.

يدعم برنامج muxer الصورة تنسيق ملف صورة .YUV. هذا التنسيق خاص في ذلك
يتكون كل إطار صورة من ثلاثة ملفات ، لكل من مكونات YUV420P. لقراءة أو
اكتب تنسيق ملف الصورة هذا ، وحدد اسم ملف ".Y". سوف muxer
فتح ملفات ".U" و ".V" تلقائيًا كما هو مطلوب.

متروسكا
ماتروسكا حاوية muxer.

يطبق هذا muxer مواصفات حاوية matroska و webm.

البيانات الوصفية

إعدادات البيانات الوصفية التي تم التعرف عليها في هذا الجهاز هي:

لقب
تعيين اسم العنوان المقدم إلى مسار واحد.

لغة
حدد لغة المسار في نموذج لغات Matroska.

يمكن أن تكون اللغة إما النموذج الببليوغرافي ISO-3-639 (ISO 2-639 / B) المكون من 2 أحرف
(مثل "fre" للفرنسية) ، أو رمز لغة مختلط برمز البلد للتخصصات
في اللغات (مثل "fre-ca" للفرنسية الكندية).

وضع الاستريو
قم بتعيين تخطيط فيديو استريو ثلاثي الأبعاد لطريقتين في مسار فيديو واحد.

يتم التعرف على القيم التالية:

بالأبيض والأسود
الفيديو ليس ستيريو

يسار يمين
تم ترتيب كلا العرضين جنبًا إلى جنب ، وتكون الرؤية اليسرى على اليسار

قمة القاع
يتم ترتيب كلا العرضين في اتجاه أعلى - أسفل ، عرض العين اليسرى في الأسفل

أسفل العلوي
يتم ترتيب كلا العرضين في الاتجاه العلوي-السفلي ، وتكون الرؤية اليسرى في الأعلى

checkerboard_rl
يتم ترتيب كل منظر في نمط معشق على شكل رقعة الشطرنج ، بحيث تكون الرؤية اليسرى للعين
أول

checkerboard_lr
يتم ترتيب كل منظر في نمط معشق على شكل رقعة الشطرنج ، بحيث تكون رؤية العين اليمنى
أول

Row_interleaved_rl
يتكون كل عرض من خلال تشذير قائم على الصف ، ويكون عرض العين اليمنى هو الصف الأول

Row_interleaved_lr
يتكون كل عرض من خلال تشذير قائم على الصف ، ويكون عرض العين اليسرى هو الصف الأول

col_interleaved_rl
يتم ترتيب كلا العرضين بطريقة تشذير قائمة على العمود ، عرض العين اليمنى هو
العمود الأول

col_interleaved_lr
يتم ترتيب كلا العرضين بطريقة تشذير قائمة على العمود ، وجهة نظر العين اليسرى هي
العمود الأول

anaglyph_cyan_red
جميع الإطارات في تنسيق النقش يمكن عرضها من خلال مرشحات أحمر سماوي

يمين شمال
تم ترتيب كلا العرضين جنبًا إلى جنب ، بينما تكون الرؤية اليمنى على اليسار

anaglyph_green_magenta
جميع الإطارات بصيغة النقش يمكن عرضها من خلال مرشحات خضراء أرجوانية

block_lr
يتم وضع كلتا العينين في قالب واحد ، وتكون الرؤية اليسرى أولاً

block_rl
كلتا العينين مثبتتين في كتلة واحدة ، الرؤية اليمنى هي الأولى

على سبيل المثال ، يمكن إنشاء مقطع WebM ثلاثي الأبعاد باستخدام سطر الأوامر التالي:

ffmpeg -i sample_left_right_clip.mpg -an -c: v libvpx -metadata stereo_mode = left_right -y stereo_clip.webm

مزيد من الخيارات

يدعم هذا muxer الخيارات التالية:

حجز_فهرس_فضاء
بشكل افتراضي ، يكتب muxer هذا الفهرس للبحث (يسمى الإشارات في مصطلحات Matroska) في
نهاية الملف ، لأنه لا يمكن أن يعرف مسبقًا مقدار المساحة التي يجب تركها لملف
الفهرس في بداية الملف. ومع ذلك ، بالنسبة لبعض حالات الاستخدام - مثل التدفق
عندما يكون البحث ممكنًا ولكنه بطيء - من المفيد وضع المؤشر في البداية
من الملف.

إذا تم تعيين هذا الخيار على قيمة غير صفرية ، فسوف يحتفظ muxer بمبلغ معين من
مسافة في رأس الملف ثم حاول كتابة الإشارات هناك عند muxing
التشطيبات. إذا لم تكن المساحة المتوفرة كافية ، فسيفشل التوصيل. حجم آمن لـ
يجب أن تكون معظم حالات الاستخدام حوالي 50 كيلوبايت لكل ساعة من الفيديو.

لاحظ أن الإشارات تتم كتابتها فقط إذا كان الناتج قابلًا للبحث ولن يكون لهذا الخيار
تأثير إذا لم يكن كذلك.

md5
تنسيق اختبار MD5.

يقوم هذا الجهاز بحساب وطباعة تجزئة MD5 لجميع إطارات الصوت والفيديو المدخلة. بواسطة
يتم تحويل إطارات الصوت الافتراضية إلى إطارات صوت وفيديو خام 16 بت موقعة إلى خام
فيديو قبل حساب التجزئة.

يتكون خرج muxer من سطر واحد بالشكل: MD5 =MD5، حيث MD5 هو
رقم سداسي عشري يمثل تجزئة MD5 المحسوبة.

على سبيل المثال لحساب تجزئة MD5 للمدخلات المحولة إلى صوت وفيديو خام ، و
احفظه في الملف out.md5:

ffmpeg -i الإدخال -f md5 out.md5

يمكنك طباعة MD5 إلى stdout باستخدام الأمر:

ffmpeg -i الإدخال -f md5 -

انظر أيضا فراميمد 5 مكسر.

موف ، mp4، ismv
MOV / MP4 / ISMV (التدفق السلس) muxer.

يدعم muxer mov / mp4 / ismv التجزئة. عادةً ما يحتوي ملف MOV / MP4 على جميع ملفات
البيانات الوصفية حول جميع الحزم المخزنة في مكان واحد (يمكن كتابتها في نهاية الملف
إلى البداية لتحسين التشغيل عن طريق الإضافة بداية سريعة إلى موففلاجسأو باستخدام
ال كيو تي-faststart أداة). ملف مجزأ يتكون من عدد من الأجزاء ، حيث الحزم
والبيانات الوصفية حول هذه الحزم يتم تخزينها معًا. كتابة ملف مجزأ له الامتداد
ميزة أن الملف قابل للفك حتى إذا تم مقاطعة الكتابة (بينما ملف
MOV / MP4 غير قابل للفك إذا لم يتم الانتهاء منه بشكل صحيح) ، ويتطلب ذاكرة أقل عندما
كتابة ملفات طويلة جدًا (منذ كتابة ملفات MOV / MP4 عادية ، تخزن معلومات حول كل ملف
حزمة في الذاكرة حتى يتم إغلاق الملف). الجانب السلبي هو أنه أقل توافقًا
مع تطبيقات أخرى.

مزيد من الخيارات

يتم تمكين التجزئة عن طريق تعيين أحد خيارات AVO التي تحدد كيفية قص الملف
إلى شظايا:

-حجم_مووف بايت
يحتفظ بمساحة لـ moov atom في بداية الملف بدلاً من وضع تنسيق
moov atom في النهاية. إذا كانت المساحة المحجوزة غير كافية ، فسيفشل muxing.

-موفلاجز frag_keyframe
ابدأ جزءًا جديدًا من كل إطار رئيسي للفيديو.

-وقت_الرجوع مدة الأقامة
إنشاء الأجزاء التي هي مدة الأقامة ميكروثانية طويلة.

-الحجم الأحجام
قم بإنشاء أجزاء تحتوي على ما يصل إلى الأحجام بايت من بيانات الحمولة.

-موفلاجز frag_custom
اسمح للمتصل باختيار وقت قطع الأجزاء يدويًا عن طريق الاتصال
"av_write_frame (ctx، NULL)" لكتابة جزء بالحزم المكتوبة حتى الآن. (هذه
مفيد فقط مع التطبيقات الأخرى التي تدمج تنسيق libav ، وليس من فمبيج.)

-min_frag_duration مدة الأقامة
لا تقم بإنشاء أجزاء أقصر من مدة الأقامة ميكروثانية طويلة.

إذا تم تحديد أكثر من شرط واحد ، يتم قطع الأجزاء عند تحديد أحد الشروط
تم استيفاء الشروط. الاستثناء لهذا هو "-min_frag_duration" ، والذي يجب أن يكون
مستوفاة لأي من الشروط الأخرى للتطبيق.

بالإضافة إلى ذلك ، يمكن تعديل طريقة كتابة ملف الإخراج من خلال عدد قليل آخر
الخيارات:

-موفلاجز فارغة_مووف
اكتب ذرة مووف أولية مباشرة في بداية الملف ، دون وصف أي منها
عينات فيه. بشكل عام ، تتم كتابة زوج mdat / moov في بداية الملف كملف
ملف MOV / MP4 عادي ، يحتوي على جزء قصير فقط من الملف. مع هذا الخيار
تعيين ، لا توجد ذرة mdat أولية ، وتصف ذرة moov المسارات فقط ولكن
له مدة صفرية.

يتم تعيين هذا الخيار ضمنيًا عند كتابة ملفات ismv (التدفق السلس).

-موفلاجز منفصلة_حركة
اكتب ذرة moof منفصلة (جزء فيلم) لكل مسار. عادة ، الحزم للجميع
تتم كتابة المسارات في ذرة moof (وهي أكثر كفاءة قليلاً) ، ولكن مع هذا
مجموعة الخيارات ، يكتب muxer زوجًا واحدًا من moof / mdat لكل مسار ، مما يجعله أسهل
مسارات منفصلة.

يتم تعيين هذا الخيار ضمنيًا عند كتابة ملفات ismv (التدفق السلس).

-موفلاجز بداية سريعة
قم بتشغيل تمريرة ثانية لتحريك الفهرس (moov atom) إلى بداية الملف. هذه
يمكن أن تستغرق العملية بعض الوقت ، ولن تعمل في مواقف مختلفة مثل مجزأة
الإخراج ، وبالتالي لا يتم تمكينه افتراضيًا.

-موفلاجز com.rtphint
أضف مسارات تلميح RTP إلى ملف الإخراج.

-موفلاجز تعطيل_chpl
تعطيل علامات فصل Nero (chpl atom). عادة ، كل من فصول نيرو و a
تتم كتابة مسار فصل QuickTime في الملف. مع تعيين هذا الخيار ، فقط ملف
ستتم كتابة مسار الفصل QuickTime. يمكن أن تتسبب فصول Nero في حدوث إخفاقات عندما يكون ملف
تتم إعادة معالجة الملف ببرامج وضع علامات معينة ، مثل mp3Tag 2.61a و iTunes 11.3 ،
على الأرجح تتأثر الإصدارات الأخرى أيضًا.

-موفلاجز omit_tfhd_offset
لا تكتب أي base_data_offset مطلق في ذرات tfhd. هذا يتجنب ربط الشظايا
لمواضع البايت المطلقة في الملف / التدفقات.

-موفلاجز default_base_moof
على غرار omit_tfhd_offset ، يتجنب هذا العلم كتابة المطلق
حقل base_data_offset في ذرات tfhd ، لكنه يفعل ذلك باستخدام الافتراضي الجديد base-is-
علم moof بدلاً من ذلك. هذا العلم جديد من 14496-12: 2012. هذا قد يجعل الشظايا
أسهل في التحليل في ظروف معينة (تجنب تحديد موقع جزء المسار الأساسي
الحسابات على النهاية الضمنية لجزء المسار السابق).

مثال

يمكن دفع المحتوى المتدفق السلس في الوقت الفعلي إلى نقطة نشر على IIS باستخدام هذا
مكسر. مثال:

ffmpeg -re < > -movflags isml + frag_keyframe -f ismv http://server/publishingpoint.isml/Streams(جهاز التشفير 1)

نسخة صوتية AAX

ملفات Audible AAX هي ملفات M4B مشفرة ، ويمكن فك تشفيرها بتحديد 4
سر تفعيل البايت.

ffmpeg -activation_bytes 1CEB00DA -i test.aax -vn -c: نسخة الإخراج .mp4

mp3
يكتب muxer MP3 دفق MP3 خام مع الميزات الاختيارية التالية:

رأس بيانات وصفية ID3v2 في البداية (يتم تمكينه افتراضيًا). الإصداران 2.3 و 2.4
مدعومة ، يتحكم الخيار الخاص "id3v2_version" في الخيار المستخدم (3 أو 4).
يؤدي ضبط "id3v2_version" على القيمة 0 إلى تعطيل رأس ID3v2 تمامًا.

يدعم muxer كتابة الصور المرفقة (إطارات APIC) إلى رأس ID3v2. ال
يتم توفير الصور إلى جهاز muxer في شكل دفق فيديو بحزمة واحدة.
يمكن أن يكون هناك أي عدد من تلك التدفقات ، كل منها يتوافق مع إطار APIC واحد.
علامات البيانات الوصفية للدفق لقب و التعليق الخريطة إلى APIC وصف و صورة نوع
على التوالى. ارىhttp://id3.org/id3v2.4.0-frames> لأنواع الصور المسموح بها.

لاحظ أنه يجب كتابة إطارات APIC في البداية ، لذلك سيتم تخزين muxer
إطارات الصوت حتى يحصل على كل الصور. لذلك ينصح بتوفير
الصور في أقرب وقت ممكن لتجنب التخزين المؤقت المفرط.

· إطار Xing / LAME مباشرة بعد رأس ID3v2 (إن وجد). يتم تمكينه افتراضيًا ،
ولكن ستتم كتابتها فقط إذا كان الإخراج قابلاً للسعي. الخيار الخاص "write_xing"
يمكن استخدامها لتعطيله. يحتوي الإطار على معلومات متنوعة قد تكون مفيدة
إلى وحدة فك التشفير ، مثل مدة الصوت أو تأخير برنامج التشفير.

· علامة ID3v1 قديمة في نهاية الملف (معطلة بشكل افتراضي). قد يتم تمكينه
مع الخيار الخاص "write_id3v1" ، ولكن نظرًا لأن إمكانياته محدودة جدًا ، فإن
الاستخدام غير مستحسن.

أمثلة:

اكتب ملف mp3 برأس ID3v2.3 وتذييل ID3v1:

ffmpeg -i INPUT -id3v2_version 3 -write_id3v1 1 out.mp3

لإرفاق صورة بملف mp3 ، حدد كلاً من الصوت ودفق الصورة باستخدام
"خريطة":

ffmpeg -i input.mp3 -i Cover.png -c نسخة -map 0 -map 1
-metadata: s: v title = "غلاف الألبوم" -metadata: s: v comment = "الغلاف (أمامي)" out.mp3

اكتب ملف MP3 "نظيفًا" بدون أي ميزات إضافية:

ffmpeg -i input.wav -write_xing 0 -id3v2_version 0 out.mp3

mpegts
نقل تيار MPEG muxer.

يطبق جهاز muxer هذا المعيار ISO 13818-1 وجزءًا من ETSI EN 300.

إعدادات البيانات الوصفية التي تم التعرف عليها في mpegts muxer هي "service_provider" و
"اسم الخدمة". إذا لم يتم تعيين الإعداد الافتراضي لـ "service_provider" هو "FFmpeg" و
الافتراضي لـ "اسم_الخدمة" هو "Service01".

مزيد من الخيارات

خيارات muxer هي:

-mpegts_original_network_id عدد
قم بتعيين original_network_id (الافتراضي 0x0001). هذا هو المعرف الفريد للشبكة
في DVB. استخدامه الرئيسي هو في التعريف الفريد للخدمة من خلال المسار
Original_Network_ID، Transport_Stream_ID.

-mpegts_transport_stream_id عدد
قم بتعيين معرف مسار النقل (الافتراضي 0x0001). هذا يحدد جهاز الإرسال والاستقبال في DVB.

-mpegts_service_id عدد
قم بتعيين معرف الخدمة (الافتراضي 0x0001) المعروف أيضًا باسم البرنامج في DVB.

- نوع_الخدمة عدد
اضبط نوع البرنامج service_type (الافتراضي تلفزيون رقمي) ، انظر أدناه قائمة محددة مسبقًا
القيم.

-mpegts_pmt_start_pid عدد
عيّن PID الأول لـ PMT (الافتراضي 0x1000 ، الحد الأقصى 0x1f00).

-mpegts_start_pid عدد
قم بتعيين معرف PID الأول لحزم البيانات (الافتراضي 0x0100 ، الحد الأقصى 0x0f00).

-mpegts_m2ts_mode عدد
قم بتمكين وضع m2ts إذا تم تعيينه على 1. القيمة الافتراضية هي -1 التي تعطل وضع m2ts.

-مكسرات عدد
تعيين muxrate ثابت (الافتراضي VBR).

-PCr_period numer
تجاوز وقت إعادة إرسال PCR الافتراضي (الافتراضي 20 مللي ثانية) ، وتجاهله إذا كان متغيرًا
يتم اختيار muxrate.

بات عدد
أقصى وقت بالثواني بين جداول PAT / PMT.

sdt_period عدد
أقصى وقت بالثواني بين جداول SDT.

-pes_payload_size عدد
قم بتعيين الحد الأدنى من حمولة حزمة PES بالبايت.

-mpegts_flags الأعلام
تعيين الأعلام (انظر أدناه).

-mpegts_copyts عدد
احتفظ بالطوابع الزمنية الأصلية ، إذا تم تعيين القيمة على 1. القيمة الافتراضية هي -1 ، والتي ينتج عنها
في تغيير الطوابع الزمنية بحيث تبدأ من 0.

-tables_version عدد
قم بتعيين إصدار PAT و PMT و SDT (الافتراضي 0 ، القيم الصالحة من 0 إلى 31 ، بشكل شامل).
يسمح هذا الخيار بتحديث بنية التدفق بحيث يمكن للمستهلك القياسي اكتشاف
يتغيرون. للقيام بذلك ، قم بإعادة فتح AVFormatContext الناتج (في حالة استخدام API) أو أعد تشغيله
مثيل ffmpeg ، المتغير دوريًا لقيمة table_version:

ffmpeg -i source1.ts -نسخة ترميز -f mpegts -tables_version 0 udp: //1.1.1.1: 1111
ffmpeg -i source2.ts -نسخة ترميز -f mpegts -tables_version 1 udp: //1.1.1.1: 1111

ffmpeg -i source3.ts -نسخة ترميز -f mpegts -tables_version 31 udp: //1.1.1.1: 1111
ffmpeg -i source1.ts -نسخة ترميز -f mpegts -tables_version 0 udp: //1.1.1.1: 1111
ffmpeg -i source2.ts -نسخة ترميز -f mpegts -tables_version 1 udp: //1.1.1.1: 1111


يقبل الخيار mpegts_service_type القيم التالية:

hex_value
أي قيمة سداسية عشرية بين 0x01 إلى 0xff كما هو محدد في المعيار ETSI 300.

تلفزيون رقمي
خدمة التلفزيون الرقمي.

راديو رقمي
خدمة الراديو الرقمي.

السوفت وير
خدمة النص التليفزيوني.

Advanced_codec_digital_radio
خدمة الراديو الرقمي الترميز المتقدم.

mpeg2_digital_hdtv
خدمة MPEG2 Digital HDTV.

Advanced_codec_digital_sdtv
خدمة الترميز المتقدمة SDTV الرقمية.

Advanced_codec_digital_hdtv
خدمة Advanced Codec Digital HDTV.

قد يأخذ الخيار mpegts_flags مجموعة من هذه العلامات:

إعادة إرسال
Reemit PAT / PMT قبل كتابة الحزمة التالية.

لاتم
استخدم حزم LATM لـ AAC.

pat_pmt_at_frames
Reemit PAT و PMT في كل إطار فيديو.

مثال

ffmpeg -i file.mpg -c نسخة \
-mpegts_original_network_id 0x1122 \
-mpegts_transport_stream_id 0x3344 \
-mpegts_service_id 0x5566 \
-mpegts_pmt_start_pid 0x1500 \
-mpegts_start_pid 0x150 \
-metadata service_provider = "بعض الموفر" \
-metadata service_name = "قناة ما" \
- أنا بالخارج

mxf mxf_d10
خلاط MXF.

مزيد من الخيارات

خيارات muxer هي:

store_user_comments منطقي
حدد ما إذا كان يجب تخزين تعليقات المستخدم إذا كانت متوفرة أم لا. لا يسمح IRT D-10
تعليقات المستخدم. وبالتالي ، فإن الإعداد الافتراضي هو كتابتها لـ mxf وليس لـ mxf_d10

فارغة
نول muxer.

لا يُنشئ muxer هذا أي ملف إخراج ، فهو مفيد بشكل أساسي للاختبار أو
أغراض قياس الأداء.

على سبيل المثال لقياس مع فك التشفير فمبيج يمكنك استخدام الأمر:

ffmpeg -benchmark -i INPUT -f null out.null

لاحظ أن الأمر أعلاه لا يقرأ أو يكتب ملف خارج ولكن مع تحديد ملف
مطلوب ملف الإخراج من قبل فمبيج بناء الجملة.

بدلاً من ذلك ، يمكنك كتابة الأمر على النحو التالي:

ffmpeg -benchmark -i INPUT -f null -

بندق
نقاط التزامن الأعلام
تغيير استخدام syncpoint في الجوز:

الافتراضي تستخدم ال عادي اقل عبأ تسعى المعينات.
لا شيء do ليس تستخدم ال نقاط التزامن at الكل، تقليص ال فوق لكن يصنعون ال مجرى
غير قابل للسعي.
لا ينصح باستخدام هذا الخيار ، لأن الملفات الناتجة تكون شديدة التلف
حساسة وتسعى غير ممكن. أيضا بشكل عام النفقات العامة من
نقاط التزامن لا يكاد يذكر. ملاحظة ، -C يمكن استخدام 0 للتعطيل
جميع جداول البيانات المتزايدة ، مما يسمح بتدفقات لا نهاية لها مع ذاكرة محدودة
وبدون هذه العيوب.

وقت مختوم مد ال التزامن مع a الجدار الميدان.

لا شيء و وقت مختوم الأعلام تجريبية.

-كتابة الفهرس منطقي
اكتب الفهرس في النهاية ، الافتراضي هو كتابة فهرس.

ffmpeg -i INPUT -f_ تجريبية صارمة -لا توجد نقاط التزامن - | المعالج

سطين
Ogg حاوية muxer.

-مدة_الصفحة مدة الأقامة
المدة المفضلة للصفحة بالميكروثانية. سيحاول muxer إنشاء صفحات ذات تنسيق
تقريبا مدة الأقامة ميكروثانية طويلة. هذا يسمح للمستخدم بالتنازل
بين البحث التفصيلي والحاوية العلوية. الافتراضي هو 1 ثانية. قيمة 0
سوف تملأ جميع الأقسام ، مما يجعل الصفحات كبيرة بقدر الإمكان. قيمة 1 will
استخدام حزمة واحدة لكل صفحة بشكل فعال في معظم المواقف ، مما يوفر دقة بحث صغيرة
على حساب تكاليف حاوية إضافية.

-serial_offset قيمنا
القيمة التسلسلية التي يتم من خلالها تحديد الرقم التسلسلي للتدفقات. ضبطه على مختلف و
تضمن القيم الكبيرة بشكل كافٍ إمكانية ربط ملفات ogg المنتجة بأمان.

قطعة، تيار_جزء ، قطعة
مجزئ التيار الأساسي.

يخرج جهاز muxer هذا إلى عدد من الملفات المنفصلة ذات المدة الثابتة تقريبًا. انتاج |
يمكن تعيين نمط اسم الملف بطريقة مشابهة لـ image2، أو باستخدام "strftime"
نموذج إذا كان com.strftime تم تمكين الخيار.

"stream_segment" هو متغير من muxer المستخدم للكتابة إلى تنسيقات الإخراج المتدفقة ، على سبيل المثال
التي لا تتطلب رؤوسًا عالمية ، ويوصى بإخراجها على سبيل المثال إلى MPEG
شرائح تيار النقل. "ssegment" هو اسم مستعار أقصر لـ "stream_segment".

يبدأ كل مقطع بإطار رئيسي للتدفق المرجعي المحدد ، والذي تم تعيينه
من خلال مرجع_ تيار الخيار.

لاحظ أنه إذا كنت تريد تقسيمًا دقيقًا لملف فيديو ، فأنت بحاجة إلى عمل مفتاح الإدخال
تتوافق الإطارات مع أوقات التقسيم الدقيقة التي يتوقعها المقسم أو المقطع
سيبدأ muxer المقطع الجديد بالإطار الرئيسي الموجود بعد البداية المحددة
مرة.

يعمل muxer المقطع بشكل أفضل مع فيديو معدل إطارات ثابت واحد.

اختياريًا ، يمكنه إنشاء قائمة بالمقاطع التي تم إنشاؤها ، عن طريق تحديد الخيار
الجزء_القائمة. يتم تحديد نوع القائمة بواسطة نوع_قائمة_القطعة اختيار. الدخول
يتم تعيين أسماء الملفات في قائمة المقطع افتراضيًا على الاسم الأساسي للملف المقابل
تقسيم الملفات.

انظر أيضا HLS muxer ، والذي يوفر تنفيذًا أكثر تحديدًا لـ HLS
تجزئة.

مزيد من الخيارات

يدعم مكسر المقطع الخيارات التالية:

مرجع_ تيار محدد
اضبط التدفق المرجعي ، كما هو محدد بواسطة السلسلة محدد. إذا محدد تم تعيين
إلى "تلقائي" ، يتم اختيار المرجع تلقائيًا. وإلا يجب أن يكون دفقًا
المحدد (راجع فصل `` محددات الدفق '' في دليل ffmpeg) الذي يحدد
تيار المرجع. القيمة الافتراضية هي تلقائي".

تنسيق_قطع شكل
تجاوز تنسيق الحاوية الداخلية ، افتراضيًا يتم تخمينه من خلال اسم الملف
تمديد.

خيارات_تنسيق المقطع قائمة الخيارات
عيّن خيارات تنسيق الإخراج باستخدام: - قائمة منفصلة لمعلمات المفتاح = القيمة. قيم
التي تحتوي على ":" يجب تخطي الحرف الخاص.

الجزء_القائمة الاسم
قم أيضًا بإنشاء ملف قائمة باسم الاسم. إذا لم يتم تحديده ، فلن يتم إنشاء ملف قائمة.

section_list_flags الأعلام
تعيين العلامات التي تؤثر على إنشاء قائمة المقطع.

يدعم حاليًا العلامات التالية:

مخبأ
السماح بالتخزين المؤقت (يؤثر فقط على ملفات قائمة M3U8).

حي
السماح بإنشاء ملف صديق للعيش.

مقطع_قائمة_حجم الأحجام
قم بتحديث ملف القائمة بحيث يحتوي على الأكثر الأحجام شرائح. إذا كان 0 ملف القائمة
سوف تحتوي على جميع المقاطع. القيمة الافتراضية هي 0.

section_list_entry_prefix بادئة
يعلق بادئة لكل إدخال. مفيد لتوليد المسارات المطلقة. افتراضيًا لا توجد بادئة
يتم تطبيق.

نوع_قائمة_القطعة نوع
حدد تنسيق القائمة.

يتم التعرف على القيم التالية:

مسطحة
قم بإنشاء قائمة مسطحة للمقاطع التي تم إنشاؤها ، جزء واحد في كل سطر.

csv ، تحويلة
قم بإنشاء قائمة بالمقاطع التي تم إنشاؤها ، مقطع واحد في كل سطر ، ومطابقة كل سطر
التنسيق (قيم مفصولة بفواصل):

و و

اسم_مقطع_الملف هو اسم ملف الإخراج الذي تم إنشاؤه بواسطة muxer وفقًا
إلى النمط المقدم. يتم تطبيق الهروب بتنسيق CSV (وفقًا لـ RFC4180) إذا كان
مطلوب.

الجزء_الوقت_البدء و الجزء_الجزء_الوقت تحديد وقت بداية المقطع وانتهائه
معبرا عنها في ثوان.

سيحدد ملف القائمة مع اللاحقة ".csv" أو ".ext" هذا التنسيق تلقائيًا.

تحويلة تم إهماله لصالح أو CSV.

ffconcat
قم بإنشاء ملف ffconcat للمقاطع التي تم إنشاؤها. يمكن قراءة الملف الناتج
باستخدام FFmpeg CONCAT ديموكسير.

سيقوم ملف قائمة مع اللاحقة ".ffcat" أو ".ffconcat" بتحديد هذا التنسيق تلقائيًا.

m3u8
قم بإنشاء ملف M3U8 ممتد ، الإصدار 3 ، متوافق مع
<http://tools.ietf.org/id/draft-pantos-http-live-streaming>.

سيقوم ملف قائمة مع اللاحقة ".m3u8" بتحديد هذا التنسيق تلقائيًا.

إذا لم يتم تحديد النوع ، فسيتم تخمينه من قائمة لاحقة اسم ملف القائمة.

الجزء_الوقت الوقت
تعيين مدة المقطع إلى الوقت ، يجب أن تكون القيمة تحديدًا للمدة. تقصير
القيمة "2". انظر أيضا مقطع_أوقات الخيار.

لاحظ أن التقسيم قد لا يكون دقيقًا ، إلا إذا قمت بفرض مفتاح التدفق المرجعي-
إطارات في وقت معين. انظر الإشعار التمهيدي والأمثلة أدناه.

الجزء_ في الساعة 1 | 0
إذا تم ضبطه على "1" ، فقم بتقسيمه على فترات زمنية منتظمة على مدار الساعة تبدأ من الساعة 00:00. ال
الوقت القيمة المحددة في الجزء_الوقت يستخدم لضبط طول الانقسام
فترة.

على سبيل المثال مع الجزء_الوقت ضبط على "900" وهذا يجعل من الممكن إنشاء الملفات في
12:00 ظهرا ، 12:15 ، 12:30 ، إلخ.

القيمة الافتراضية هي "0".

الجزء_الوقت_الجزء دلتا
حدد وقت الدقة عند تحديد وقت البدء لمقطع ، معبرًا عنه بامتداد
مواصفات المدة. القيمة الافتراضية هي "0".

عند تحديد دلتا ، سيبدأ الرتل الرئيسي مقطعًا جديدًا إذا كانت المواد السمية الثابتة الخاصة به تفي بـ
علاقة:

PTS> = start_time - time_delta

يكون هذا الخيار مفيدًا عند تقسيم محتوى الفيديو ، والذي يتم تقسيمه دائمًا عند GOP
الحدود ، في حالة العثور على إطار رئيسي قبل وقت الانقسام المحدد.

على وجه الخصوص يمكن استخدامها بالاشتراك مع فمبيج خيار إطارات_المفتاح_القوة.
أوقات الإطارات الرئيسية المحددة بواسطة إطارات_المفتاح_القوة قد لا يتم تعيينها بدقة بسبب
التقريب ، مع ما يترتب على ذلك من إطار زمني مفتاح قد ينتج قبل ذلك مباشرة
الوقت المحدد. بالنسبة لمقاطع الفيديو ذات معدل الإطارات الثابت ، تبلغ القيمة 1 / (2 *معدل الإطار) ينبغي
معالجة أسوأ حالة عدم تطابق بين الوقت المحدد والوقت المحدد
إطارات_المفتاح_القوة.

مقطع_أوقات مرات
حدد قائمة بالنقاط المنقسمة. مرات يحتوي على قائمة بمدة مفصولة بفواصل
المواصفات بترتيب متزايد. انظر أيضا الجزء_الوقت الخيار.

إطارات_مقاطع إطارات
حدد قائمة بأرقام إطارات الفيديو المنقسمة. إطارات يحتوي على قائمة مفصولة بفواصل
أعداد صحيحة ، بترتيب متزايد.

يحدد هذا الخيار لبدء مقطع جديد عندما يكون إطار مفتاح التدفق المرجعي
تم العثور عليها والرقم المتسلسل (بدءًا من 0) للإطار أكبر أو يساوي
القيمة التالية في القائمة.

مقطع_ التفاف قصر
التفاف حول مؤشر المقطع بمجرد وصوله قصر.

الجزء_البدء_العدد عدد
اضبط رقم التسلسل للمقطع الأول. افتراضات على 0.

com.strftime 1 | 0
استخدم وظيفة "strftime" لتحديد اسم المقاطع الجديدة المراد كتابتها. لو هذا
يجب أن يحتوي اسم جزء الإخراج على قالب وظيفة "strftime".
القيمة الافتراضية هي 0.

Break_non_keyframes 1 | 0
في حالة التمكين ، اسمح للمقاطع بالبدء في إطارات بخلاف الإطارات الرئيسية. هذا يحسن
السلوك على بعض اللاعبين عندما يكون الوقت بين الإطارات الرئيسية غير متسق ، ولكن قد يصل
الأمور أسوأ على الآخرين ، ويمكن أن تسبب بعض الشذوذ أثناء البحث. افتراضات على 0.

إعادة تعيين الطوابع 1 | 0
أعد تعيين الطوابع الزمنية في بداية كل مقطع ، بحيث يبدأ كل جزء به
طوابع زمنية قريبة من الصفر. إنه يهدف إلى تسهيل تشغيل المقاطع التي تم إنشاؤها. قد
لا تعمل مع بعض مجموعات muxers / الترميز. تم ضبطه على 0 افتراضيًا.

الأولي_ الإزاحة عوض
حدد إزاحة الطابع الزمني لتطبيقها على الطوابع الزمنية لحزمة الإخراج. يجب على الحجة
يكون تحديدًا لمدة زمنية ، وافتراضيًا إلى 0.

أمثلة

· Remux محتوى الملف in.mkv إلى قائمة الشرائح خارج 000.nut, خارج 001.nut، وما إلى ذلك،
واكتب قائمة المقاطع التي تم إنشاؤها إلى خارج:

ffmpeg -i in.mkv -نسخة الترميز -خريطة 0 -f مقطع -segment_list out.list out٪ 03d.nut

· إدخال الجزء وتعيين خيارات تنسيق الإخراج لمقاطع الإخراج:

ffmpeg -i in.mkv -f المقطع -segment_time 10 -segment_format_options movflags = + faststart out٪ 03d.mp4

· قسّم ملف الإدخال وفقًا لنقاط الانقسام المحددة بواسطة مقطع_أوقات
الخيار:

ffmpeg -i in.mkv -نسخة ترميز -خريطة 0 -f مقطع -segment_list out.csv -segment_times 1,2,3,5,8,13,21،03،XNUMX،XNUMX،XNUMX،XNUMX،XNUMX out٪ XNUMXd.nut

· استخدم ال فمبيج إطارات_المفتاح_القوة الخيار لفرض الإطارات الرئيسية في الإدخال في
الموقع المحدد ، مع خيار المقطع الجزء_الوقت_الجزء لحساب
تعمل الدورات الممكنة عند تحديد أوقات الإطارات الرئيسية.

ffmpeg -i in.mkv -force_key_frames 1,2,3,5,8,13,21،4،16،0،XNUMX،XNUMX،XNUMX-الترميز: v mpegXNUMX -codec: a pcm_sXNUMXle -map XNUMX \
-f المقطع -segment_list out.csv -segment_times 1,2,3,5,8,13,21،0.05،03،XNUMX،XNUMX،XNUMX،XNUMX -segment_time_delta XNUMX out٪ XNUMXd.nut

لفرض الإطارات الرئيسية على ملف الإدخال ، يلزم تحويل الشفرة.

· قسّم ملف الإدخال بتقسيم ملف الإدخال وفقًا لأرقام الإطارات
التسلسل المحدد ب إطارات_مقاطع الخيار:

ffmpeg -i in.mkv -نسخة كودك -خريطة 0 -f مقطع -segment_list out.csv -segment_frames 100,200,300,500,800،03،XNUMX،XNUMX،XNUMX out٪ XNUMXd.nut

تحويل ملف in.mkv إلى مقاطع TS باستخدام مشفرات "libx264" و "libfaac":

ffmpeg -i in.mkv -map 0 -codec: v libx264 -codec: a libfaac -f ssegment -segment_list out.ts٪ 03d.ts

قسّم ملف الإدخال ، وأنشئ قائمة تشغيل حية M3U8 (يمكن استخدامها كجهاز HLS مباشر
مصدر):

ffmpeg -re -i in.mkv -نسخة ترميز -خريطة 0 -f مقطع -قائمة تشغيل المقطع. m3u8 \
-segment_list_flags + live -segment_time 10 out٪ 03d.mkv

السلس
ينشئ muxer التدفق السلس مجموعة من الملفات (المانيفست ، الأجزاء) المناسبة للتقديم
مع خادم الويب التقليدي.

بحجم النافذه
حدد عدد الأجزاء المحفوظة في البيان. الافتراضي 0 (احتفظ بالجميع).

Extra_window_size
حدد عدد الأجزاء التي يتم الاحتفاظ بها خارج البيان قبل الإزالة من
القرص. الافتراضي 5.

lookahead_count
حدد عدد أجزاء lookahead. الافتراضي 2.

min_frag_duration
حدد الحد الأدنى لمدة الجزء (بالميكرو ثانية). الافتراضي 5000000.

Remove_at_exit
حدد ما إذا كنت تريد إزالة كل الأجزاء عند الانتهاء. الافتراضي 0 (لا تقم بإزالة).

نقطة الإنطلاق
يمكن استخدام tee muxer لكتابة نفس البيانات إلى عدة ملفات أو أي نوع آخر
مكسر. يمكن استخدامه ، على سبيل المثال ، لكل من دفق الفيديو إلى الشبكة وحفظه على
القرص في نفس الوقت.

إنه يختلف عن تحديد العديد من المخرجات لـ فمبيج أداة سطر الأوامر لأن
سيتم تشفير بيانات الصوت والفيديو مرة واحدة فقط باستخدام tee muxer ؛ يمكن أن يكون الترميز
عملية مكلفة للغاية. لا يكون مفيدًا عند استخدام واجهة برمجة تطبيقات libavformat مباشرة لأن
ومن ثم يمكن إطعام نفس الحزم إلى عدة أجهزة muxers مباشرة.

يتم تحديد مخرجات الرقيق في اسم الملف المعطى إلى muxer ، مفصولة بعلامة '|'. لو
يحتوي أي اسم تابع على "|" الفاصل ، المسافات البادئة أو اللاحقة أو أي منها
شخصية خاصة ، يجب أن تهرب (انظر ال "نقلا و الهروب " قسم in ال
ffmpeg- الأدوات(1) كتيب).

يمكن تحديد خيارات Muxer لكل عبد عن طريق وضعها مسبقًا كقائمة مفتاح=قيمنا
أزواج مفصولة بعلامة ":" ، بين قوسين مربعين. إذا كانت قيم الخيارات تحتوي على ملف
حرف أو فاصل ":" ، يجب تجاوزهما ؛ لاحظ أن هذا هو المستوى الثاني
الهروب.

يتم التعرف أيضًا على الخيارات الخاصة التالية:

f حدد اسم التنسيق. مفيد إذا كان لا يمكن تخمينه من لاحقة اسم الإخراج.

bsfs [/المواصفات]
حدد قائمة بعوامل تصفية تدفق البتات لتطبيقها على الإخراج المحدد.

من الممكن تحديد التدفقات التي ينطبق عليها مرشح تيار بتات معين
إلحاق محدد دفق بالخيار المفصول بعلامة "/". المواصفات يجب أن يكون دفقًا
محدد (انظر شكل مجرى المحددات). إذا لم يتم تحديد محدد الدفق ،
سيتم تطبيق مرشحات تدفق البتات على جميع التدفقات في الإخراج.

يمكن تحديد العديد من مرشحات دفق البت ، مفصولة بعلامة "،".

حدد
حدد التدفقات التي يجب تعيينها إلى الإخراج التابع ، المحدد بواسطة التدفق
محدد. إذا لم يتم تحديده ، فسيتم تعيين هذا الإعداد افتراضيًا على جميع تدفقات الإدخال.

أمثلة

تشفير شيء ما وأرشفته في ملف WebM ودفقه كـ MPEG-TS عبر UDP
(يجب تعيين التدفقات بشكل صريح):

ffmpeg -i ... -c: v libx264 -c: a mp2 -f نقطة الإنطلاق -map 0: v -map 0: a
"أرشيف-20121107.mkv | [f = mpegts] udp: //10.0.1.255: 1234 /"

· يستخدم فمبيج لتشفير الإدخال وإرسال الإخراج إلى ثلاث وجهات مختلفة.
يتم استخدام عامل تصفية تدفق البتات "dump_extra" لإضافة معلومات تحويل إلى كافة ملفات
حزم إطارات مفاتيح فيديو الإخراج ، على النحو المطلوب بواسطة تنسيق MPEG-TS. خيار التحديد
ينطبق على خارج. aac لجعله يحتوي على حزم الصوت فقط.

ffmpeg -i ... -map 0 -flags + global_header -c: v libx264 -c: aac -strict تجريبي
-f نقطة الإنطلاق "[bsfs / v = dump_extra] out.ts | [movflags = + faststart] out.mp4 | [select = a] out.aac"

على النحو التالي ، ولكن حدد فقط تيار "a: 1" لإخراج الصوت. لاحظ أن المستوى الثاني
يجب تنفيذ علامة الهروب ، لأن ":" هي حرف خاص يُستخدم لفصل الخيارات.

ffmpeg -i ... -map 0 -flags + global_header -c: v libx264 -c: aac -strict تجريبي
-f نقطة الإنطلاق "[bsfs / v = dump_extra] out.ts | [movflags = + faststart] out.mp4 | [select = \ 'a: 1 \'] out.aac"

ملاحظة: قد تحتاج بعض برامج الترميز إلى خيارات مختلفة اعتمادًا على تنسيق الإخراج ؛ السيارات-
الكشف عن هذا لا يمكن أن يعمل مع نقطة الإنطلاق muxer. المثال الرئيسي هو global_header
العلم.

webm_dash_manifest
WebM DASH Manifest muxer.

يقوم جهاز muxer هذا بتنفيذ مواصفات WebM DASH Manifest لإنشاء بيان DASH
XML. كما أنه يدعم إنشاء البيان لتيارات DASH المباشرة.

لمزيد من المعلومات، راجع:

· مواصفات WebM DASH:
<https://sites.google.com/a/webmproject.org/wiki/adaptive-streaming/webm-dash-specification>

· مواصفات ISO DASH:
<http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014.zip>

مزيد من الخيارات

يدعم هذا muxer الخيارات التالية:

مجموعات التكيف
يحتوي هذا الخيار على الصيغة التالية: "id = x، streams = a، b، c id = y، streams = d، e" حيث x
و y هي المعرفات الفريدة لمجموعات التكيف و a و b و c و d و e هي
مؤشرات تدفقات الصوت والفيديو المقابلة. أي عدد من مجموعات التكيف
يمكن إضافتها باستخدام هذا الخيار.

حي
اضبط هذا على 1 لإنشاء بث مباشر لبيان DASH. الافتراضي: 0.

chunk_start_index
بدء فهرس المقطع الأول. هذا سوف يذهب في رقم البداية سمة من
قالب القطعة عنصر في البيان. الافتراضي: 0.

chunk_duration_ms
مدة كل جزء بالميلي ثانية. هذا سوف يذهب في مدة الأقامة سمة من
قالب القطعة عنصر في البيان. الافتراضي: 1000.

utc_timing_url
عنوان URL للصفحة التي ستعرض الطابع الزمني UTC بتنسيق ISO. هذا سوف يذهب في
قيمنا سمة من UTCiming عنصر في البيان. الافتراضي: لا شيء.

time_shift_buffer_ Deep
أصغر وقت (بالثواني) لتحويل المخزن المؤقت الذي يضمن أي تمثيل
لتكون متاحة. هذا سوف يذهب في الوقت سمة من MPD
عنصر. الافتراضي: 60.

الحد الأدنى_لتحديث_الفترة
أقل فترة تحديث للبيان (بالثواني). هذا سوف يذهب في
الحد الأدنى سمة من MPD عنصر. الافتراضي: 0.

مثال

ffmpeg -f webm_dash_manifest -i video1.webm \
-f webm_dash_manifest -i video2.webm \
-f webm_dash_manifest -i audio1.webm \
-f webm_dash_manifest -i audio2.webm \
-خريطة 0 -خريطة 1 -خريطة 2 -خريطة 3 \
-c نسخة \
-f webm_dash_manifest \
-adaptation_sets "id = 0، streams = 0,1،1 id = 2,3، streams = XNUMX،XNUMX" \
ملف manifest.xml

webm_chunk
ويب إم لايف تشانك موكسر.

يكتب هذا muxer رؤوس WebM وقطعها كملفات منفصلة يمكن استهلاكها بواسطة
العملاء الذين يدعمون تدفقات WebM Live عبر DASH.

مزيد من الخيارات

يدعم هذا muxer الخيارات التالية:

chunk_start_index
فهرس الجزء الأول (الافتراضي إلى 0).

رأس
اسم ملف الرأس حيث ستتم كتابة بيانات التهيئة.

المدة_الصوتية_التغريدية
مدة كل مقطع صوتي بالمللي ثانية (الافتراضي هو 5000).

مثال

ffmpeg -f v4l2 -i / dev / video0 \
-ف السا-أنا: 0 \
-خريطة 0: 0 \
-c: v libvpx-vp9 \
- s 640 × 360 - مفتاح - دقيقة 30 - 30 جرام
-f webm_chunk \
-رئيس webm_live_video_360.hdr \
-فهرس_بدء_التقطيع 1 \
webm_live_video_360_٪ d.chk \
-خريطة 1: 0 \
-c: libvorbis \
-ب: 128 كيلو \
-f webm_chunk \
-رئيس webm_live_audio_128.hdr \
-فهرس_بدء_التقطيع 1 \
-مدة_الصوت 1000 \
webm_live_audio_128_٪ d.chk

METADATA


FFmpeg قادر على تفريغ البيانات الوصفية من ملفات الوسائط إلى نص بسيط يشبه INI بترميز UTF-8
ملف ثم تحميله مرة أخرى باستخدام البيانات الوصفية muxer / demuxer.

تنسيق الملف كما يلي:

1. يتكون الملف من رأس وعدد من علامات البيانات الوصفية مقسمة إلى أقسام ، كل منها
على خطها الخاص.

2. العنوان هو ملف ؛ FFMETADATA سلسلة متبوعة برقم إصدار (الآن 1).

3. تكون علامات البيانات الوصفية من النموذج مفتاح = القيمة

4. مباشرة بعد العنوان يتبع البيانات الوصفية العالمية

5. بعد البيانات الوصفية العالمية ، قد تكون هناك أقسام بها بيانات وصفية لكل تيار / لكل فصل.

6. يبدأ القسم باسم القسم بأحرف كبيرة (مثل STREAM أو CHAPTER) في
اقواس ([, ]) وينتهي بالقسم التالي أو نهاية الملف.

7. في بداية قسم الفصل قد يكون هناك جدول زمني اختياري لاستخدامه
قيم البداية / النهاية. يجب أن يكون في الشكل الوقت =NUM/يوم، حيث NUM و يوم هي أعداد صحيحة.
إذا كانت القاعدة الزمنية مفقودة ، فمن المفترض أن تكون أوقات البدء / الانتهاء بالمللي ثانية.

بعد ذلك ، يجب أن يحتوي قسم الفصل على أوقات بدء الفصل وانتهائه بالشكل ستارت =NUM,
النهاية =NUM، حيث NUM هو عدد صحيح موجب.

8. الأسطر والخطوط الفارغة التي تبدأ بـ ; or # يتم تجاهلها.

9. مفاتيح أو قيم البيانات الوصفية التي تحتوي على أحرف خاصة (=, ;, #, \ وخط جديد) يجب
يتم الهروب بشرطة مائلة للخلف \.

10. لاحظ أن المسافة البيضاء في البيانات الوصفية (على سبيل المثال ، فو = شريط) يعتبر جزءًا من
علامة (في المثال أعلاه المفتاح هو فو ، القيمة
شريط).

قد يبدو ملف ffmetadata على النحو التالي:

؛ FFMETADATA1
العنوان = الدراجة \\ سقيفة
؛ هذا تعليق
فنان = فريق القزم FFmpeg

[الفصل]
القاعدة الزمنية = 1/1000
START = 0
# chapter ينتهي في 0:01:00
النهاية = 60000
العنوان = الفصل \ # 1
[مجرى]
العنوان = متعدد \
خط

باستخدام ffmetadata muxer و demuxer ، من الممكن استخراج البيانات الوصفية من المدخلات
file إلى ملف ffmetadata ، ثم قم بتحويل الملف إلى ملف إخراج بامتداد
تحرير ملف ffmetadata.

استخراج ملف ffmetadata بامتداد فمبيج يذهب على النحو التالي:

ffmpeg -i INPUT -f ffmetadata FFMETADATAFILE

يمكن إعادة إدخال معلومات البيانات الوصفية المحررة من ملف FFMETADATAFILE على النحو التالي:

ffmpeg -i INPUT -i FFMETADATAFILE -map_metadata 1 -إخراج نسخة الترميز

استخدم تنسيقات ffmpeg عبر الإنترنت باستخدام خدمات onworks.net


خوادم ومحطات عمل مجانية

قم بتنزيل تطبيقات Windows و Linux

أوامر لينكس

Ad