Какво е FFmpeg?
FFmpeg е безплатен проект, който предоставя колекция от програми за обработка на данни като аудио, видео и изображения. Това е инструмент, който се използва за конвертиране, запис, стрийминг и възпроизвеждане на файлове.
FFmpeg поддържа широк набор от формати и кодеци и се използва за задачи като транскодиране, промяна на размера на филтрите, добавяне на водни знаци или субтитри, получаване на звук от видеоклип и обединяване на множество видеоклипове или аудиофайлове. Възможно е също така да създадете GIF с помощта на FFmpeg и да комбинирате MP4 файлове с помощта на FFMPEG в Windows
FFmpeg се използва широко в медийната индустрия и е достъпен за повечето операционни системи, включително Windows, macOS, Linux и Unix.
Как да използвате FFmpeg?
Ето някои общи примери за използване на FFmpeg:
- Конвертиране на видеофайл от един формат в друг:
Код: ffmpeg -i input_video.mp4output_video.avi
Тази команда ще преобразува input_video.mp4
в output_video.avi
. FFmpeg автоматично ще избере подходящите кодеци за изходния формат.
- Промяна на размера на видеоклип:
Код: ffmpeg -i input_video.mp4-vf scale=640:480 output_video.mp4
Тази команда ще промени размера на input_video.mp4
до разделителна способност 640×480 пиксела и ще запише резултата в output_video.mp4
.
- Извличане на звук от видеоклип:
Код: ffmpeg -i input_video.mp4-vn output_audio.mp3
Тази команда ще извлече аудиопистата от input_video.mp4
и ще я запише в output_audio.mp3
.
- Конкатенирайте два видеоклипа:
Код: ffmpeg -i input_video1.mp4-i input_video2.mp4-filter_complex concat output_video.mp4
Тази команда ще конкатенира input_video1.mp4
и input_video2.mp4
и ще запише резултата в output_video.mp4
.
- Добавяне на воден знак към видеоклип:
Код: ffmpeg -i input_video.mp4-i watermark.png -filter_complex „overlay=10:10“ output_video.mp4
Тази команда ще добави изображението watermark.png
към горния ляв ъгъл на input_video.mp4
с отместване от 10 пиксела и ще запише резултата в output_video.mp4
.
Това са само няколко примера за това какво да правите с FFmpeg. Възможно е да използвате FFmpeg и в Android. За повече информация се обърнете към онлайн уроци, видеопотоци или чатботове с изкуствен интелект, като ChatGPT.

Какви са полезните команди за редактиране на видео на FFmpeg?
- Подстригване на видеоклип:
Код: ffmpeg -i input_video.mp4-ss 00:00:05 -t 00:00:10 -c copy output_video.mp4
Тази команда ще отреже input_video.mp4
, за да започне от 5-секундната отметка и да приключи след 10 секунди, и ще запише резултата в output_video.mp4
.
- Добавяне на изображение или видеоклип върху моя видеоклип:
Код: ffmpeg -i input_video.mp4-i overlay_image.png -filter_complex „overlay=10:10“ output_video.mp4
Тази команда ще добави файла overlay_image.png
като наслагване към input_video.mp4
с координати (10, 10) и ще запише резултата в output_video.mp4
.
- Промяна на разделителната способност на видеото:
Код: ffmpeg -i input_video.mp4-vf scale=1280:720 -c:a copy output_video.mp4
Тази команда ще промени разделителната способност на input_video.mp4
на 1280×720 пиксела и ще запише резултата в output_video.mp4
.
- Добавете опциите
textfile
иreload
за drawtext:
Код: ffmpeg -i input.mp4-vf „drawtext=fontfile=/path/to/font.ttf:textfile=text.txt:reload=1:fontcolor=white:fontsize=24:box=1:boxcolor=black@0.5:boxborderw=5:x=(w-text_w)/2:y=(h-text_h)/2“ -codec:a copy output.mp4
Как да добавите текст към видеоклип с FFmpeg?
За да добавите текст към видеоклип с FFmpeg, използвайте филтъра drawtext
. Филтърът drawtext
ви позволява да зададете шрифта, размера, цвета и позицията на текста, както и други параметри.
Ето една основна команда за добавяне на текст към видеоклип с помощта на филтъра drawtext
:
Код: ffmpeg -i input_video.mp4-vf „drawtext=text=’Hello World’:fontfile=/path/to/font.ttf:fontsize=50:fontcolor=white:x=100:y=100“ -codec:a copy output_video.mp4
В тази команда:
-i input_video.mp4
указва входния видеофайл.-vf "drawtext=..."
посочва видеофилтъра, който да се приложи, като в този случай това е филтърътdrawtext
.text='Hello World'
определя текста, който да се добави към видеоклипа.fontfile=/path/to/font.ttf
указва файла с шрифта, който да се използва.fontsize=50
задава размера на шрифта в точки.fontcolor=white
указва цвета на шрифта.x=100:y=100
указва позицията на текста във видеото, като горният ляв ъгъл е (100, 100) пиксела.-codec:a copy
указва копиране на аудиопотока от входния видеоклип към изходния видеоклип, без да се кодира повторно.output_video.mp4
посочва изходния видеофайл.
Какво е Fontfile?
Опцията fontfile
в FFmpeg се използва за задаване на пътя до файл с шрифт, който ще се използва за визуализиране на текст във видеоклип или изображение.
Когато използвате филтъра drawtext
във FFmpeg, за да добавите текст към видеоклип, посочете опцията fontfile
, за да изберете конкретен шрифт, който да използвате за текста.
Как да включите шрифт в командата FFmpeg, без да използвате опцията Fontfile?
За да използвате шрифт в команда FFMPEG, без да посочвате опцията fontfile, използвайте инсталиран от системата шрифт.
Ето една примерна команда, която използва инсталиран от системата шрифт:
Код: ffmpeg -i input_video.mp4-vf „drawtext=text=’Hello World’:fontcolor=white:x=100:y=100:font=Arial“ -codec:a copy output_video.mp4
Какво е GitHub?
GitHub е уеб базирана платформа, която позволява на разработчиците да хостват и управляват своите софтуерни проекти, да си сътрудничат с други потребители и да проследяват и управляват промените в своя код. Той предоставя инструменти за контрол на версиите, проследяване на проблеми, преглед на кода и сътрудничество в екип.
Как да добавите текст „StackOverflow“ с FFmpeg?
Код: ffmpeg -i input_video.mp4-vf „drawtext=text=’StackOverflow’:fontfile=/path/to/font.ttf:fontsize=30:fontcolor=white:x=100:y=100“ -codec:a copy output_video.mp4
Ето какво правят различните опции в тази команда:
-i input_video.mp4
указва входния видеофайл.-vf "drawtext=text='StackOverflow':fontfile=/path/to/font.ttf:fontsize=30:fontcolor=white:x=100:y=100"
настройва видеофилтъра за рисуване на текста. Тази команда рисува текста „StackOverflow“ върху видеото с координати (100, 100), като използва файл с шрифт, разположен на адрес/path/to/font.ttf
, с размер на шрифта 30 и бял цвят на шрифта.-codec:a copy
копира аудиопотока от входния видеоклип към изходния видеоклип, без да го кодира повторно.output_video.mp4
указва името на изходния видеофайл.
Как да показвате времеви кодове или времеви марки с помощта на филтъра Drawtext на FFmpeg?
Код: ffmpeg -i input_video.mp4-filter_complex „drawtext=fontfile=/path/to/font.ttf:text=’%{pts\:hms}’:fontsize=24:fontcolor=white:x=10:y=10“ -codec:a copy output_video.mp4
Ето какво правят различните опции в тази команда:
-i input_video.mp4
указва входния видеофайл.-filter_complex
ви позволява да използвате няколко филтъра в една и съща команда.drawtext
е името на филтъра.fontfile=/path/to/font.ttf
указва пътя до файла с шрифта, който искаме да използваме.text='%{pts\:hms}'
задава текста, който ще се показва.%{pts\:hms}
е заместител, който ще бъде заменен с текущия времеви код във формат часове:минути:секунди.fontsize=24
задава размера на шрифта на 24.fontcolor=white
задава цвета на шрифта на бял.x=10
иy=10
задайте позицията на текста върху видеото.-codec:a copy
копира аудиопотока от входния видеоклип към изходния видеоклип, без да го кодира повторно.output_video.mp4
указва името на изходния файл.