اف اف امپگ ffmpeg نرم افزاری چند سکویی (مولتی پلتفرمی)،که راه حلی کاملی را برای ضبط، تبدیل و استریم (پخش زنده) صدا و ویدئو ارائه میدهد.
تبدیل یک فایل هرگز به این راحتی نبوده:
$ ffmpeg -i input.mp4 output.avi
بله به همین راحتی، کافی است کلمه اف اف امپگ ffmpeg به همراه -i را تایپ و فایل ورودی و خروجی را نیز وارد کرده و آن را اجرا کنید.
در تعریف این نرم افزار شاید کلمه چند سکویی یا مولتی پلتفرمی برای شما نا آشنا باشه. نرم افزار های Cross-platform یا multi-platform به نرم افزاری گفته میشه که در چند پلتفرم یا سیستم عامل مختلف قابل استفاده است. به تعریف ساده تر، طوری برنامه نویسی شده که بشه در سیستم عامل های مختلف نظیر ویندوز، لینوکس، macOS، و حتی اندروید از اون استفاده کرد.
در نرم افزار ffmpeg خبری از رابط کاربری نیست و رابط کاربری های موجود در وب، نسخه ی رسمی این نرم افزار نیستند و این یعنی اینکه باید تمام دستورات رو با خط فرمان Command line به نرم افزار داد.
همون طور که بالا گفته شد کافیه فایل یا مبدا ورودی رو با -i ؛ و فایل یا مقصد خروجی رو بعد از تنظیمات دلخواهی که میخواید روی ویدئو اعمال بشه رو در انتها وارد کنید و اون رو اجرا کنید و منتظر بشید که فایل کانورت شده رو بهتون تحویل بده.
قاعده ی کلی ffmpeg به صورت زیر هستش:
بزارید با یه مثال دستور بالا رو براتون توضیح بدم. برای مثال شما فایلی به نام video.mpg دارید که فرمت اون MPEG2 هست و میخواید اون رو به فرمت MP4 و کدک تصویری H.264 و کیفیت و بیت ریت 800kbps و اندازه تصویر HD 1280x720 و کدک صوتی ACC با کیفیت 128kbps تبدیل کنید:
$ ffmpeg -i video.mpg -c:v libx264 -s 1280x720 -b:v 800k -preset fast -profile:v baseline -level 3.0 -c:a aac -b:a 128k output.mp4
برای درک بهتر نحوی کار ffmpeg به تصویر زیر نگاه کنید، این تصویر مربوط به اجرای دستور بالا در سیستم عامل ویندوز میباشد:
در انتها شما فایل خروجی رو با نام output.mp4 میتونید مشاهده کنید.
در مثال بالا دقت کنید که فایل های ویدیویی ورودی، باید در کنار فایل های exe باشند در غیر این صورت باید مسیر فایل را قبل از نام فایل، در دستور بالا وارد کنید.
نصب ffmpeg
همانطور که گفته شد ffmpeg یک نرم افزار مولتی پلتفرمی میباشد که قابلیت اجرا روی سیستم عامل های مختلف رو دارد. این نرم افزار در ویندوز و macOS نیاز به نصب ندارد و شما میتونید از نسخه های builds شده و معرفی شده در صفحه دانلود سایت ffmpeg، بصورت پرتابل portable استفاده کنید.
ویندوز
در سیستم عامل ویندوز کافی است اخرین ورژن stable رو از سایت zeranoe دانلود و آن را از zip خارج کرده و فولدر bin را که حاوی فایل های exe این نرم افزار میباشد را در محلی که میخواهید از آن استفاده کنید قرار دهید. سپس با باز کردن خط فرمان ویندوز یا همان cmd.exe در منوی استارت یا پنجره ی Run، و رفتن به فولدر محل فایل های exe اف اف امپگ آن را اجرا کنید. ویدیوی زیر مربوط به نصب و اجرا ffmpeg در سیستم عامل ویندوز میباشد:
لینوکس
برای نصب ffmpeg در لینوکس شما میتوانید از بسته های آماده موجود استفاده کرده و به راحتی با دستور apt-get install ffmpeg و یا yum install ffmpeg نصب کنید. بهترین توضیع توصیه شده برای ffmpeg لینوکس Ubuntu میباشد. زیرا نرم افزارهای مولتی مدیا برای این توضیع بیشتر توسعه داده شده است.
نصب ffmpeg نسخه 3 روی Ubuntu
نسخه رسمی ffmpeg موجود در مخازن repositories پیش فرض ubuntu ورژن سه این نرم افزار میباشد که با دستور زیر براحتی نصب خواهد شد:
ali@linux$ sudo apt-get install ffmpeg
در پایان برای اطمینان از نصب با دستور زیر ورژن آن را بررسی نمایید:
ali@linux$ ffmpeg -version
ffmpeg version 3.4.4-0ubuntu0.18.04.1 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
نصب ffmpeg نسخه 4 روی Ubuntu
برای استفاده از امکانات بیشتر و جدید تر ffmpeg و همچنین استفاده از decoder و encoder های بیشتر شما میتوانید با اضافه نمودن مخزن Jonathon F’s PPA و نصب ورژن 4 ffmpeg از مزایای نسخه جدید ffmpeg استفاده کنید.
برای اضافه نمودن مخزن Jonathon F’s PPA ابتدا بسته software-properties-common را نصب کنید:
ali@linux$ sudo apt-get install software-properties-common
سپس مخزن فوق را به مخازن موجود اضافه کنید و لیست برنامه ها را آپدیت کنید:
ali@linux$ sudo add-apt-repository ppa:jonathonf/ffmpeg-4
ali@linux$ sudo apt-get update
سپس با دستور زیر ffmpeg را با بسته های کاربردی اضافی نصب کنید:
ali@linux$ sudo apt-get install ffmpeg x264 x265
برای بررسی ffmpeg نصب شده از این دستور استفاده کنید:
ali@linux$ ffmpeg -version
ffmpeg version 2.8.15-0ubuntu0.16.04.1 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609
...
در آینده آموزش های بیشتری از دستورات ffmpeg در وبلاگ قرار خواهم داد.
امیدوارم این مقاله براتون مفید بوده باشه.
با سلام من دارای یک رادیو اینترنتی هستم که در برنامه های تیم تاک و ای رادیو و سایت و اپم هست
که با istkast ران کرده ام هال میخواهم در آپارات بروم دیدم نیاز به نرم افزاری به نام obs نیاز است obs را بر روی سرور نصب کردم ولی به کارت گرافیک سرورم گیر داد لطفا کمکم کنید که بتوانم لایو در آپارات بزارم اگر کمکم کنید ممنون میشم
شما میتوانید توسط ffmpeg این کار را به راحتی و بدون نیاز به کارت گرافیکی انجام دهید
لطفا آموزش گزاشتن لایو با ffm peg در آپارات را بگزارید گفتنی است من میخواهم یک فایل m3u را در آپارات و لحظه نگار بگزارم
لطفا آموزش گزاشتن لایو با ffm peg در آپارات را بگزارید گفتنی است من میخواهم یک فایل m3u را در آپارات و لحظه نگار بگزارم
باتشکر
شما میتوانید به مقاله زیر مراجعه نمایید:
چگونه با ارسال یک استریم به تمامی شبکه های اجتماعی پخش زنده ارسال کنیم؟
سلام و وقت بخیر
مهندس ما یه سرور پخش زنده داریم... وقتی میخوایم با ffmpeg تصاویر رو کانورت کنیم , لود سرور خیلی عجیب میره بالا... این سرور 32thread است و اصلا مشکلی نداشته و چند وقته با این مشکل مواجه شده.در ضمن وب سرور هم لایت اسپیده... به نظر شما چی رو باید چک کنیم؟ آیا مشکل از لایت اسپید یا به صورت کلی وب سرور میتونه باشه؟
لاگ وب سرور هیچ خطایی نمیدهد و فکر کنم کلا ffmpeg به وب سرور کاری نداشته باشد.
ممنون میشم اگر راهنمایی کنید
اگر سیستم عامل شما لینوکس است، با ابزار top یا htop بررسی کنید لود مربوط به کدام پراسس هست.