Как добавить текст к видео с помощью FFmpeg?

Изысканная студия аудиоредактирования, освещенная холодным голубым светом
Овладение искусством интеграции текста в видеопроекты с помощью Ffmpeg

Transkriptor 2023-04-03

Что такое FFmpeg?

FFmpeg — это бесплатный проект, который предоставляет набор программ для работы с такими данными, как аудио, видео и изображения. Это инструмент, который используется для конвертирования, записи, потоковой передачи и воспроизведения файлов.

FFmpeg поддерживает широкий спектр форматов и кодеков и используется для таких задач, как транскодирование, изменение размеров фильтров, добавление водяных знаков или субтитров , получение аудио из видео, а также объединение нескольких видео или аудио файлов. Также можно создать GIF с помощью FFmpeg и объединить файлы MP4 с помощью FFMPEG в Windows

FFmpeg широко используется в медиаиндустрии и доступен на большинстве операционных систем, включая Windows, macOS, Linux и Unix.

Как использовать FFmpeg?

Вот несколько распространенных примеров использования FFmpeg:

  1. Преобразование видеофайла из одного формата в другой:

Код: ffmpeg -i input_video .mp4 output_video.avi

Эта команда преобразует input_video.mp4 в output_video.avi . FFmpeg автоматически выберет подходящие кодеки для выходного формата.

  1. Изменение размера видео:

Код: ffmpeg -i input_video .mp4 -vf scale=640:480 output_video .mp4

Эта команда изменит размер input_video.mp4 до разрешения 640×480 пикселей и сохранит результат в output_video.mp4 .

  1. Извлечение звука из видео:

Код: ffmpeg -i input_video .mp4 -vn output_audio .mp3

Эта команда извлечет звуковую дорожку из input_video.mp4 и сохранит ее в output_audio.mp3 .

  1. Конкатенируйте два видео:

Код: ffmpeg -i input_video1 .mp4 -i input_video2 .mp4 -filter_complex concat output_video .mp4

Эта команда объединит input_video1.mp4 и input_video2.mp4 и сохранит результат в output_video.mp4 .

  1. Добавьте водяной знак к видео:

Код: 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 для редактирования видео?

  1. Обрезать видео:

Код: 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 .

  1. Добавить изображение или наложение видео на мое видео:

Код: 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 .

  1. Измените разрешение видео:

Код: 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 задает имя выходного файла.

Поделиться публикацией

Преобразование речи в текст

img

Transkriptor

Преобразуйте аудио- и видеофайлы в текст