إف إف إم بي إي جي

إف إف إم بي جي  هو برنامج حاسوب يستطيع أن يسجل، يحول ويبث صوت وصورة رقمييان بأنساق متعددة. البرنامج عبارة عن أداة تعمل في سطر الأوامر ويتألف من مجموعة من مكاتب حرة ومفتوحة المصدر. تتضمن مكتبة اسمها لافك وهي مكتبة ترميز للصوت والفيديو تستخدم من قبل عدة مشاريع، وكذلك تتضمن مكتبة libavformat الذي يقوم بضم وفك الحاويات الرقمية للصوت والفيديو. اسم المشروع يأتي من أحرف إم بي إي جي وهي مجموعة تضع المعايير لنسق فيديو مشهور بالأضافة إلى أحرف "FF" وهي مختصر "fast forward" وتعني بالعربية «إلى الأمام بسرعة».

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

تم تطوير البرنامج تحت نظام لينوكس، لكن بالإمكان ترجمته تحت معظم الأنظمة مثل ماك أو.أس عشرة، مايكروسوفت ويندوز وأميغا أو إس. وهي أيضاً تدعم معظم منصات الحاسوب ومعماريات المعالجات الدقيقة مثل إكس 86 (أي إيه-32 وإكس86-64)، باور بي سي، عائلة معالجات إرم، DEC Alpha، سبارك وMIPS.

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

هنالك ترميزان للفيديو وحاوية رقمية للفيديو تم اختراعهم في هذا المشروع أثناء تطويره. الترمزيان هما "FFV1" و"Snow codec" الذي يحمل النسخة 1.0 وما زال قيد التطوير، والمحتوى الرقمي هو "NUT" وهو حالياً تحت تطوير مكثف.

المكونات 

يتألف المشروع من عدة مكونات، وهي:
 ffmpeg هو أداة تعمل في سطر الأوامر لتحويل نسق فيديو إلى اخر. ويمكنه أيضاً جلب وترميز الفيديو من بطاق تلفاز أثناء البث.
 ffserver هو خادم بث حي يستعمل لبث الفيديو على الهواء مباشرة، ويستطيع أيضاً تزحيف وقت البث الحي لفترة زمنية، الخادم يستعمل بروتوكول نقل النص الفائق وبروتوكول سريان المعلومات في الزمن الحقيقي.
 ffplay مشغل وسائط بسيط يعتمد على مكتبة SDL ومكتبات المشروع.
 libavcodec مكتبة تحتوي كل المرمزات وفك المرمزات التي يحتاج لها ffmpeg. معضم الترميزات مطورة من الصفر لضمان الحصول على أفضل أداء وكذلك للحصول على كود قابل لأعادة الاستخدام.
 libavformat هي مكتبة تحتوي مجمعات ومفرقات تستخدم في الحاويات الرقمية للفيديو والصوت.
 libavutil هي مكتبة مساعدة تحتوي على ملحقات مساعدة لمختلف اجزاء المشروع، وتتضمن adler32، اختبار التكرار الدوري، إم دي5، sha1، فتح ضغط من نسقlzo، ترميز\ فك ترميز لشفرة الأساس 64، ترميز\ فك ترميز لشفرة des، ترميز\ فك ترميز لشفرة rc4 وترميز\ فك ترميز لشفرة AES.
 libpostproc مكتبة تحوي اجراءات ما بعد معالجة الفيديو.
 libswscale مكتبة تحوي اجراءات تعديل حجم الصورة في الفيديو.
 libavfilter بديل لمكتبة vhook التي تسمح بالتعديل وفحص الفيديو بين المرمز وفاتح الترميز.

المرمزات، الانساق والبروتوكولات المدعومة

الأنساق

المرمزات 

مرمزات انشأت ضمن المشروع:
 Snow
 FFV1
قام مطورو المشروع بأدخال هذه المرمزات أيضاً بالأضافة للبقية:
 ATRAC3
 H.261، H.263 وH.264/MPEG-4 AVC
 Indeo 2 و3
 QDesign Music Codec 2, تستخدم من قبل عدة أفلام من نوع QuickTime قبل ظهور QuickTime 7.
 Smacker video
 Sorenson 3 Codec تستخدم من قبل عدة أفلام من نوع كويك تايم
 ثيورا (together with فربس makes a base for the.أوغ format)
 Truespeech
 TXD
 VP5 وVP6
 فربس
 نظام ويندوز الصوتي
 بعض من مرمزات ويندوز ميديا فيديو مثل WMV1, WMV2 وWMV3
 AVID DNxHD

المرمز القياسي من نوع إم بي إي جي - 4 استخدم من قبل المشروع لتشفير FourCC.

الأنساق 
 ASF
 AVI
 BFI
 IFF
 RL2
 فلاش فيديو
 MXF, Material eXchange Format, SMPTE 377M
 ماتروسكا
 سيم سيتي 3000
 MSN Webcam stream
 تيار النقل
 TXD
 OMA
 GXF, General eXchange Format, SMPTE 360M

البروتوكولات 
 بروتوكول نقل النص الفائق
 RTP
 RTSP
 TCP
 UDP
 غوفر

مشاريع تستخدم FFmpeg 
البرنامج هذا مستخدم من قبل العديد من المشاريع المفتوحة المصدر مثل VLC، MPlayer، Handbrake، Google Chrome وغيرها كثير.

أطارات عمل متعددة الوسائط تستخدم FFmpeg 
 دايركت شو/VFW
 ffdshow (مشروع خارجي)
 كويك تايم
 Perian (مشروع خارجي)
 جي ستريمر
 جي ستريمر (مشروع خارجي)

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

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

انظر أيضًا 

 إم بلاير، مشغل وسائط أغلبية شفرته المصدرية تأتي من ffmpeg
 مينكودر، برنامج لترميز الفيدوات، شبيه بمشروع ffmpeg
 في إل سي مديا بلاير، يستخدم مرمزات ffmpeg بالدرجة الأساس

مراجع

وصلات خارجية 

 
 
 صفحة المشروع
 صفحة التعليمات الخاصة بالمشروع
 قائمة بالأنساق المدعومة في هذا المشروع

برامج موسيقى حرة
أدوات ومكتبات برمجة حرة
برمجيات مايكروسوفت ويندوز
برمجيات تستخدم رخصة جنو العمومية الصغرى
برمجيات تستخدم رخصة جنو العمومية
برمجيات حرة بلغة سي
برمجيات حرة متعددة المنصات
برمجيات سطر الأوامر
برمجيات مكتوبة بلغة التجميع
برمجيات يونكس
مكتبة السي
منتجات عرضت في 2000
برمجيات تستخدم إف إف إم بي إي جي