ربما لم يسمع العديد من الأصدقاء عن FFmpeg، ولكن لا بد أنك استخدمت أحد هذه البرامج: Baofeng Yingyin، QQ Yingyin، KMP، GOM Player، PotPlayer (2010)، KMPlayer. FFmpeg هو برنامج مفتوح المصدر، ويجب أن يكون البرنامج الذي يستخدم FFmpeg وفقًا للاتفاقية مفتوح المصدر أيضًا، ومع ذلك، لا تتوافق برامج الصوت والفيديو هذه مع الاتفاقية، لذلك تم وضعها في "القائمة السوداء" لـ FFmpeg.

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

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

برنامج تحويل وضغط تنسيقات الفيديو والصوت المجاني والمفتوح المصدر FFmpeg - كيفية تحويل التنسيقات وضغط مقاطع الفيديو

لمزيد من أدوات مشرفي المواقع وبرامج مشرفي المواقع، هنا:

  1. المهارات الأساسية لمشرفي المواقع لإضافة علامات مائية إلى الصور على دفعات - طرق معالجة الدفعات XnView وMeitu XiuXiu
  2. أفضل محرر لـ WordPress: تثبيت واستخدام Windows Live Writer (Windows 10)
  3. التقط لقطات شاشة بدون قلق باستخدام Yisoft: أداة لقطة الشاشة ShareX - يمكن للمهام التلقائية القصيرة والموجزة والمليئة بالوظائف التقاط الصور ومقاطع الفيديو المتحركة.

1. تثبيت برنامج FFmpeg

موقع إلكتروني:

  1. الموقع الرسمي: https://ffmpeg.zeranoe.com/builds/
  2. التنزيل البديل: https://wzfou.com/down/ffmpeg64 (64 بت)

بعد الدخول إلى الموقع، حدد الإصدار الذي تريد تثبيته، والذي يدعم Windows 7 وMac OS X 10.10 وما فوق.

قم بفك ضغط الحزمة المضغوطة التي تم تنزيلها للحصول على المجلد ffmpeg-xxx-win64-static، وأعد تسميته إلى ffmpeg، ثم ضع المجلد ffmpeg في مجلد البرنامج، على سبيل المثال، مسار موضع wzfou.com هو: C:.

افتح صفحة إعدادات متغير البيئة: Explorer > هذا الكمبيوتر > انقر بزر الماوس الأيمن - خصائص > إعدادات النظام المتقدمة > متغيرات البيئة. انقر نقرًا مزدوجًا فوق عنصر المسار للدخول إلى صفحة التحرير، وحدد جديد، ثم الصق المسار C:ffmpegbin في مربع الإدخال وأكد الحفظ. (اضغط للتكبير)

الآن افتح CMD، وأدخل ffmpeg واضغط على Enter للتنفيذ. إذا رأيت رسالة إرجاع، فهذا يعني أنك قمت بتثبيت FFmpeg بنجاح.

2. الاستخدام السريع لـ FFmpeg

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

2.1 تنسيق التحويل

الأمر الأبسط والأكثر استخدامًا لتحويل تنسيق FFmpeg هو:

ffmpeg -i input.xxx output.xxx

لتحويل صيغ mp4 و flv، يكون الأمر كما يلي:

ffmpeg -i input.flv output.mp4
#或者
ffmpeg -i input.mp4 output.flv

لتحويل تنسيقات mp4 وwebm، يكون الأمر كما يلي:

ffmpeg -i input.mp4 output.webm
#或者
ffmpeg -i input.webm output.mp4

2.2 الفيديو المضغوط

أوامر FFmpeg لضغط الفيديو هي كما يلي:

ffmpeg -i input.mp4 -r 10 -b:a 32k output.mp4 #对它降低fps和音频码率的方法大大压缩文件大小,而清晰度不变。
#或者
ffmpeg -i input.mp4 -vcodec libx264 -crf 20 output.mp4 #采用H.264视频压缩算法和AAC音频压缩算法,视频帧率10fps,音频码率32k
#或者是
ffmpeg -i wzfou.mp4 -crf 20 wzfou.mp4
ffmpeg -i wzfou1.flv -crf 20 wzfou1.mp4
ffmpeg -i wzfou1.mp4 -crf 30 wzfou30.mp4
ffmpeg -i 480p.mp4 480p.webm

2.3 تحويل GIF

لتحويل الفيديو إلى GIF، يكون الأمر كما يلي:

#把视频的前 30 帧转换成一个 Gif
ffmpeg -i input_video.mp4 -vframes 30 -y -f gif output.gif

#将视频转成 gif 将输入的文件从 (-ss) 设定的时间开始以 10 帧频率,输出到 320x240 大小的 gif 中,时间长度为 -t 设定的参数。
ffmpeg -ss 00:00:00.000 -i input.mp4 -pix_fmt rgb24 -r 10 -s 320x240 -t 00:00:10.000 output.gif

3. تشغيل الفيديو FFmpeg

معلمات أمر FFmpeg هي كما يلي:

التعليمات ذات الصلة:

-crt: سيؤثر هذا الخيار بشكل مباشر على معدل بت الفيديو الناتج بعد تعيين هذه المعلمة، لن يتم تفعيل الإعداد -b لتحديد معدل البت، ويكون نطاق قيمة crt هو 0-50، 0 هو ترميز خالٍ من التشوه يوصى به 18-28.

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

بعد تنفيذ أمر تحويل الشفرة، اضبط قيمة المعلمة -crf على 19 و20 و28 و51 على التوالي، وأعد تحويل الإخراج إلى ملفات MP4 مختلفة. سجل البيانات وقارنها كما يلي:

المصدر                الملف الحجم      نسبة التخفيض
crf = 18       46.3 < x2>            21%
crf = 19  < x2>    36.7            <x2 > 33%
crf = 20       31.2       < x2>      43%
crf = 28       26.5               83%
crf = 51        1.25              97 %

3.1 تحديد تنسيق التحويل

بشكل عام، سيحدد FFmpeg تنسيق الحاوية وتنسيق الترميز الأكثر ملاءمة بناءً على تنسيق الملف، أو يمكنك أيضًا تحديده يدويًا. على سبيل المثال:

ffmpeg -i out.ogv -vcodec h264 out.mp4
ffmpeg -i out.ogv -vcodec mpeg4 out.mp4
ffmpeg -i out.ogv -vcodec libxvid out.mp4
ffmpeg -i out.mp4 -vcodec wmv1 out.wmv
ffmpeg -i out.mp4 -vcodec wmv2 out.wmv

-i متبوعًا باسم ملف الإدخال. -vcodec يتبعه تنسيق الترميز، h264 هو الأفضل، لكنه غير مثبت افتراضيًا على أنظمة Windows. إذا كنت تريد إدراج فيديو ppt، فمن الأنسب اختيار wmv1 أو wmv2.

هناك أيضًا خيارات إضافية: يحدد -r معدل الإطارات، ويحدد -s الدقة، ويحدد -b معدل البت في نفس الوقت يمكن تعديل قناة الصوت Transcoding، -acodec يحدد تشفير الصوت، -ab يحدد معدل بت الصوت، -ac يحدد عدد القنوات، على سبيل المثال :

ffmpeg -i out.ogv -s 640x480 -b 500k -vcodec h264 -r 29.97 -acodec libfaac -ab 48k -ac 2 out.mp4

تحويل التنسيق كما هو، أي الاحتفاظ بتنسيق ترميز الفيديو والصوت الأصلي، الأمر كما يلي:

ffmpeg -i input.flv -vcodec copy -acodec copy out.mp4 #-vcodec copy 和 -acodec copy 表示所使用的视频和音频编码格式,为原样拷贝。

3.2 دمج مقاطع فيديو MP4

يمكن لـ FFmpeg دمج مقاطع فيديو متعددة، فمن الأفضل تحويل mp4 إلى ts بجودة لا تفقدها أولاً ثم دمجها. الأمر كما يلي:

ffmpeg -i 1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 1.ts
ffmpeg -i 2.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 2.ts
ffmpeg -i "concat:1.ts|2.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4

3.3 تغيير حجم الدقة

إذا كنت تريد ضبط دقة الفيديو، يمكنك استخدام الأمر التالي:

ffmpeg -i input.mp4 -filter:v scale=1280:720 -c:a copy output.mp4
# or
ffmpeg -i input.mp4 -s 1280x720 -c:a copy output.mp4

إذا كنت تريد ضبط نسبة العرض إلى الارتفاع للفيديو الخاص بك، فيمكنك استخدام الأمر التالي:

ffmpeg -i input.mp4 -aspect 16:9 output.mp4
#常见的宽高比:16:9、4:3、16:10、5:4

3.4 تحويل معدل البت للفيديو

المعلمات الرئيسية المتعلقة بمعدل بت ffmpeg هي -minrate، maxrate، -b:v، الأوامر هي كما يلي:

ffmpeg -i input.mp4 -b:v 2000k output.mp4

#把原始视频转换成 2 Mbps 码率视频。ffmpeg 官方建议,在设置 -b:v 时,同时加上 -bufsize 用于设置码率控制缓冲器大小,让整体码率更加趋近于希望的值,减少波动。
ffmpeg -i input.mp4 -b:v 2000k -bufsize 2000k output.mp4

# -minrate 和 -maxrate 比较简单,设置码率不要低于或者超过某一个阈值
ffmpeg -i input.mp4 -b:v 2000k -bufsize 2000k -maxrate 2500k output.mp4

3.5 تحرير واقتصاص مقاطع الفيديو

إذا كنت تريد تغيير اعتراض جزء من الفيديو أو الاحتفاظ بجزء معين من الفيديو فالأمر كالتالي:

ffmpeg -i a.mov -ss 00:00:21 -t 00:00:10 -acodec aac -vcodec h264 -strict -2 out.mp4
#其中 -ss 00:00:21 表示开始剪辑的位置(时间点),-t 00:00:10 表示剪辑的长度,即 10 秒钟

ffmpeg -i a.mov -strict -2 -vf crop=1080:1080:0:420 out.mp4
#将竖向的视频 1080 x 1920,保留中间 1080×1080 部分,其中的 crop=1080:1080:0:420 才裁剪参数,具体含义是 crop=width:height:x:y,其中 width 和 height 表示裁剪后的尺寸,x:y 表示裁剪区域的左上角坐标。比如当前这个示例,我们只需要保留竖向视频的中间部分,所以 x 不用偏移,故传入0,而 y 则需要向下偏移:(1920 – 1080) / 2 = 420

4. عملية الصورة

4.1 دمج الصور في مقاطع الفيديو

أولاً، ضع الصور التي تريد دمجها في مجلد، ثم أعد تسميتها على النحو التالي: img001.png, img002.png, img003.png، لذا .

وأخيرًا، قم بتنفيذ الأمر لدمج الصور في مقاطع الفيديو:

ffmpeg -framerate 24 -i img%03d.png output.mp4
#或者
ffmpeg -r 0.5 -i  img%03d.jpg  video.avi

4.2 تحويل الصور والفيديو

الأمر كما يلي:

#将图片序列合成视频
ffmpeg -f image2 -i image%d.jpg video.mpg

#将视频分解成图片序列
ffmpeg -i video.mpg image%d.jpg

#截取一张352x240尺寸大小的,格式为jpg的图片:
ffmpeg -i test.asf -y -f image2 -t 0.001 -s 352x240 a.jpg

#把视频的前30帧转换成一个Animated Gif :
ffmpeg -i test.asf -vframes 30 -y -f gif a.gif

#在视频的第8.01秒处截取 352*240 的缩略图
ffmpeg -i test2.asf -y -f image2 -ss 08.010 -t 0.001 -s 352x240 b.jpg
ffmpeg -r 0.5 -i d:/tmpImg/image%04d.jpg -i d:/time.mp3 -vcodec mpeg4 d:/video5.avi

5. أوامر FFmpeg شائعة الاستخدام

فيما يلي الأوامر الشائعة لتحويل تنسيق ffmpeg وضغط الفيديو ودمج مقاطع الفيديو وقصها:

# 去掉视频中的音频
ffmpeg -i input.mp4 -vcodec copy -an output.mp4
// -an: 去掉音频;-vcodec:视频选项,一般后面加copy表示拷贝

# 提取视频中的音频
ffmpeg -i input.mp4 -acodec copy -vn output.mp3
// -vn: 去掉视频;-acodec: 音频选项, 一般后面加copy表示拷贝

# 音视频合成
ffmpeg -y –i input.mp4 –i input.mp3 –vcodec copy –acodec copy output.mp4
// -y 覆盖输出文件

#剪切视频
ffmpeg -ss 0:1:30 -t 0:0:20 -i input.mp4 -vcodec copy -acodec copy output.mp4
// -ss 开始时间; -t 持续时间

#视频截图
ffmpeg –i test.mp4 –f image2 -t 0.001 -s 320x240 image-%3d.jpg
// -s 设置分辨率; -f 强迫采用格式fmt;

# 视频分解为图片
ffmpeg –i test.mp4 –r 1 –f image2 image-%3d.jpg
// -r 指定截屏频率

# 将图片合成视频
ffmpeg -f image2 -i image%d.jpg output.mp4

#视频拼接
ffmpeg -f concat -i filelist.txt -c copy output.mp4

#将视频转为gif
ffmpeg -i input.mp4 -ss 0:0:30 -t 10 -s 320x240 -pix_fmt rgb24 output.gif
// -pix_fmt 指定编码

#将视频前30帧转为gif
ffmpeg -i input.mp4 -vframes 30 -f gif output.gif

#旋转视频
ffmpeg -i input.mp4 -vf rotate=PI/2 output.mp4

#缩放视频
ffmpeg -i input.mp4 -vf scale=iw/2:-1 output.mp4
// iw 是输入的宽度, iw/2就是一半;-1 为保持宽高比

#视频变速
ffmpeg -i input.mp4 -filter:v setpts=0.5*PTS output.mp4

#音频变速
ffmpeg -i input.mp3 -filter:a atempo=2.0 output.mp3

#音视频同时变速,但是音视频为互倒关系
ffmpeg -i input.mp4 -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" output.mp4


# 视频添加水印
ffmpeg -i input.mp4 -i logo.jpg -filter_complex [0:v][1:v]overlay=main_w-overlay_w-10:main_h-overlay_h-10[out] -map [out] -map 0:a -codec:a copy output.mp4
// main_w-overlay_w-10 视频的宽度-水印的宽度-水印边距;

# 截取视频局部
ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4

# 截取部分视频,从[80,60]的位置开始,截取宽200,高100的视频
ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4

# 截取右下角的四分之一
ffmpeg -i in.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy out.mp4

# 截去底部40像素高度
ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4

6. تأثيرات برنامج FFmpeg

فيما يلي عرض توضيحي لتأثير الفيديو المضغوط FFmpeg (حجم الفيديو أقل من 1.3 ميجابايت):

فيما يلي صورة متحركة تم تحويلها بواسطة FFmpeg إلى WebP (أقل من 700 كيلو بايت، انقر لمشاهدة الرسوم المتحركة):

7. ملخص

FFmpeg عبارة عن أداة لتحويل التنسيق، على الرغم من أنها ليست ملائمة للاستخدام مثل العميل، طالما أنك تتقن بعض الأوامر الأساسية، يمكنك إكمال التحويل وضغط الصوت لتنسيقات MP4 وFLV وGif وWebP وغيرها شائع على منصات Windows و Linux.

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

اترك رد