Почти всеки, който се занимава с видеоклипове, може да е чувал за 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

instagram viewer

Ако всичко върви добре по време на инсталацията, трябва да можете да видите версията на FFmpeg, когато използвате -версия аргумент.

ffmpeg -версия

Получаване на видео информация с FFmpeg

Възможно е да видите информацията за видеоклип, който искате да редактирате с FFmpeg, като използвате флаг:

ffmpegпример-видео.mp4-hide_banner

Ето, -hide_banner задачата на параметъра е да скрие ненужната информация. Можете да премахнете този параметър и да видите разликата в изхода.

Както можете да видите, възможно е да получите много информация като тип видео кодек, дата на създаване, метаданни и структура на енкодера на примерния видеоклип.

Конвертиране на видео или аудио файлове в друг формат

Една от най-полезните функции на FFmpeg е, че може да конвертира видео или аудио в друг формат. Можете да направите това с прости едноредови.

MOV към MP4 с FFmpeg

Можете да конвертирате вашия видео файл във формат MOV в MP4 с FFmpeg, като използвате командата по-долу:

ffmpeginput-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-fconcatmy-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.