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

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

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

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

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

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

[تصغير|300بك|مخطط يوضح عدة تطبيقات ([Video Disk Recorder|VDR، إم بلاير، كسن وفيديو لان) تستخدم FFmpeg]]

## المكونات

يتألف المشروع من عدة مكونات، وهي:
* *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
* 
* 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