Почти всеки, който се занимава с видеоклипове, може да е чувал за FFmpeg преди. За тези, които не са запознати, FFmpeg е безплатна програма с отворен код, която може да конвертира всеки видео формат в друг и да променя неговите кодеци.
FFmpeg поддържа почти всички аудио/видео кодеци (H.264, H.265, VP8, VP9, AAC, OPUS и други), файл формати (MP4, FLV, MKV, TS, WEBM, MP3 и др.) и дори протоколи за стрийминг (HTTP, RTMP, RTSP, HLS, и т.н.).
Ето как можете да инсталирате и използвате FFmpeg за обработка на аудио и видео файлове в Linux.
Инсталиране на FFmpeg на Linux
FFmpeg е безплатен инструмент с отворен код, наличен в хранилищата по подразбиране на почти всяка основна Linux дистрибуция. Можете също вземете неговия изходен код безплатно, ако желаете да го компилирате сами.
# Дебиан
sudo apt Инсталирай ffmpeg# Fedora
sudo dnf Инсталирай https://download1.rpmfusion.org/free/fedora/rpmfusion-free-освобождаване-$(rpm -E %fedora).noarch.rpm
sudo dnf -y Инсталирай ffmpeg# RHEL/CentOS
вкусно Инсталирай ffmpeg ffmpeg-devel
# Arch Linux
pacman -S ffmpeg
Ако всичко върви добре по време на инсталацията, трябва да можете да видите версията на FFmpeg, когато използвате -версия аргумент.
ffmpeg -версия
Получаване на видео информация с FFmpeg
Възможно е да видите информацията за видеоклип, който искате да редактирате с FFmpeg, като използвате -и флаг:
ffmpeg-ипример-видео.mp4-hide_banner
Ето, -hide_banner задачата на параметъра е да скрие ненужната информация. Можете да премахнете този параметър и да видите разликата в изхода.
Както можете да видите, възможно е да получите много информация като тип видео кодек, дата на създаване, метаданни и структура на енкодера на примерния видеоклип.
Конвертиране на видео или аудио файлове в друг формат
Една от най-полезните функции на FFmpeg е, че може да конвертира видео или аудио в друг формат. Можете да направите това с прости едноредови.
MOV към MP4 с FFmpeg
Можете да конвертирате вашия видео файл във формат MOV в MP4 с FFmpeg, като използвате командата по-долу:
ffmpeg-иinput-mov-video.movизходно видео.mp4
Първо, използвайте -и параметър, който означава входно видео. След това въведете файла, който искате да конвертирате. Накрая въведете формата, в който искате да го конвертирате. Можете да дадете на изхода си всяко име, което искате.
Докато FFmpeg работи, той ще ви покаже промените, които е направил на командния екран. Вашият изходен файл ще бъде съхранен в настоящата ви работна директория.
WAV към MP3 с FFmpeg
Подобно на видеоклипове, можете да направите същите преобразувания за аудио файлове. Например, можете да конвертирате WAV аудио файл в MP3, както следва:
ffmpeg-ипример-wav.wav-vn-ар 48000 -ac 2 -б:а 256 изход.mp3
Тази команда има повече параметри от метода за конвертиране на видео, но те не са трудни за разбиране. За да ги обясня:
- -vn: Понякога аудио файловете, които слушате, имат снимки. Тези изображения обикновено произхождат от видеоклипове. Ако не искате такива изображения в изхода, можете да използвате този параметър.
- -ар: Този параметър ви позволява да зададете аудио честотата на аудио файла, който искате да конвертирате. Можете да регулирате качеството и честотата на звука със стойности като 8kHz, 44.1kHz или 48kHz.
- -ac: Може да сте чували термините моно и стерео преди. Този параметър може да ви помогне да зададете броя на аудио каналите.
- -b: а: Този параметър ви позволява да зададете аудио битрейта за секунда. Колкото по-висок е килобитът, толкова по-високо е качеството на звука.
Аудио операции с FFmpeg
FFmpeg може също да отделя аудио от видео. За целта е достатъчно да използвате -vn параметър:
ffmpeg-ипример-видео.mp4-vnизход.mp3
Ако сте успели да отделите аудиото от видеото, сега можете да опитате да премахнете аудиото от видеоклиповете. Разликата тук е -ан параметър. Трябва да имате предвид този параметър, ако искате да деактивирате звук във видеоклип:
ffmpeg-ипример-видео.mp4-анизходно заглушаване.mp4
Обработка на размера на видео с FFmpeg
Видео размерите понякога могат да бъдат доста досадни, особено когато искате да ги качите някъде. Вече не е необходимо да изтегляте програми, за да ги изрежете, тъй като FFmpeg може да направи това вместо вас. Все пак има някои параметри, които трябва да знаете за това:
- -сс: Използвайте този параметър, за да зададете началния час на клипа
- -да се: Позволява ви да посочите крайния час на клипа
- -° С: Задайте кодека на вашия клип, като използвате този параметър
- -T: Използвайте този параметър, за да зададете продължителността на клипа
Можете да извлечете много примери, като използвате тези параметри. Например, ако искате да изрежете видеоклип, можете да използвате нещо като:
ffmpeg-ипример-видео.mp4-сс 00:02:25-да се 00:03:50-° Скопиеизходно подрязване.mp4
Също така е възможно да изрежете само изображението във видеото, а не цялото видео. За целта можете да прибегнете до нещо като:
ffmpeg -i example-video.mp4 -filter: v "изрязване=w: h: x: y" изходно изрязване.mp4
Ето параметрите, използвани в гореспоменатата команда:
- -филтър: v: Този параметър определя процеса на филтриране, който ще приложите към видеоклипа
- реколта: Този параметър е за указване, че ще бъде извършена операция за изрязване
- w: h: x: y: Както може би вече се досещате, променливите w, h, x и y означават съответно ширина, височина и позиция на полето за изрязване
Редактиране на видеоклипове на Linux с FFmpeg
Редактирането на видеоклипове не свършва само с изрязване и изрязване. Понякога трябва да промените и мащаба на видеото. Следната команда ще преоразмери видеото до желания от вас размер:
ffmpeg -i example-video.mp4 -vf scale=1920:1080 output-scale.mp4
- -vf: Този параметър работи по същия начин като -филтър: v аргумент, видян по-горе
- мащаб: Можете да укажете размерите на мащаба, които искате във вашия изход, с този параметър
FFmpeg също ви позволява да комбинирате множество видеоклипове. Представете си, че имате няколко клипа, кодирани с един и същи кодек. Въведете списъка с видеоклипове, които искате да обедините в a .текст файл. След това изпълнете следната команда:
ffmpeg-fconcat-иmy-video-list.текст-° Скопиесума-изход.mp4
The concat параметърът тук комбинира вашите файлове. Също така е възможно да завъртите видеоклипове с FFmpeg:
ffmpeg -i example-video.mp4 -vf "транспониране=2" изходно завъртане.mp4
- транспониране=0: Обръщане вертикално (по подразбиране)
- транспониране=1: Завъртете на 90 градуса по часовниковата стрелка
- транспониране=2: Завъртете на 90 градуса обратно на часовниковата стрелка
- транспониране=3: Обърнете вертикално
За да завъртите видеоклиповете на 180 градуса по посока на часовниковата стрелка, трябва два пъти да посочите параметъра за транспониране:
ffmpeg -i example-video.mp4 -vf "транспониране=2, транспониране=2" изходно завъртане.mp4
FPS и GOP операции
Както знаете, FPS означава кадри в секунда. GOP (група от снимки) е разстоянието между два ключови кадъра. FFmpeg също е полезен за промяна на някои параметри, включително FPS и GOP. Ако използвате командата по-долу, FFmpeg ще промени оригиналния FPS на зададената от вас стойност:
ffmpeg -i example-video.mp4 -vf "fps=60" output-fps.mp4
За GOP можете да използвате -g параметър и задайте стойността му на каквато искате. Обърнете внимание, че налагането на твърде много ключови кадри може да бъде вредно за алгоритмите за напред на някои енкодери.
ffmpeg-ипример-видео.mp4-g 200 изход-гоп.mp4
Създавайте анимирани GIF файлове с FFmpeg
FFmpeg също е идеален за конвертиране на видео в анимирани GIF файлове. Можете да използвате проста команда за конвертиране, за да направите това:
ffmpeg-ипример-видео.mp4изход-gif.gif
Но понякога може да искате да персонализирате GIF. Можете да използвате различните параметри, обсъдени по-горе, за да постигнете това:
ffmpeg -ss 00:01:15 -i example-video.mp4 -to 10 -r 10 -vf scale=250:-1 output-gif.gif
The -р параметърът тук означава скоростта на кадрите. Както можете да видите, много различни персонализации са възможни в команда от един ред.
Извличане на кадри от видео с FFmpeg
Освен конвертирането на едно или много изображения във видео, можете също да извличате кадри от видео. Следната команда ще извлича по един кадър всяка секунда от вашето входно видео. Освен това тези извлечени изображения ще имат двуцифрени имена като 01.jpeg, 02.jpegи т.н. Ако желаете, можете да добавите и други параметри, които сте научили.
ffmpeg-ипример-видео.mp4-р 1 образ-%02д.jpeg
Можете също да използвате други формати като PNG и BMP за извлечените изображения.
Защо трябва да използвате FFmpeg на Linux?
Както можете да видите, FFmpeg е много изгоден в много отношения. Не е необходимо да имате технически познания или професионален опит с Linux за това. Можете да изпълнявате различни функции за обработка на медии само с няколко параметъра. Ако ще правите редакции, които не са много дълги, нямате нужда от скъпи компютърни програми и онлайн премиум членства. Освен това FFmpeg работи много добре дори на устройства от нисък клас.
Освен това функциите на FFmpeg не се ограничават до горното. Когато прочетете документацията и ръководството за потребителя, можете да видите колко мощен всъщност е софтуерът. Дори с помощта на --помогне параметър и човек можете да получите по-подробна информация за използването на FFmpeg. Има и други страхотни конвертори за Linux, които да съперничат на FFmpeg.