Hvordan man tilføjer tekst til video med FFmpeg?

Et sofistikeret lydredigeringsstudie badet i køligt blåt lys
Mestre kunsten at integrere tekst i dine videoprojekter med Ffmpeg

Transkriptor 2023-04-03

Hvad er FFmpeg?

FFmpeg er et gratis projekt, der indeholder en samling af programmer til håndtering af data som lyd, video og billeder. Det er et værktøj, der bruges til at konvertere, optage, streame og afspille filer.

FFmpeg understøtter en lang række formater og codecs og bruges til opgaver som transkodning, størrelsesændring af filtre, tilføjelse af vandmærker eller undertekster , hentning af lyd fra video og sammenlægning af flere videoer eller lydfiler. Det er også muligt at oprette en GIF ved hjælp af FFmpeg og kombinere MP4-filer ved hjælp af FFMPEG på Windows

FFmpeg er meget udbredt i mediebranchen og er tilgængelig på de fleste operativsystemer, herunder Windows, macOS, Linux og Unix.

Hvordan bruger man FFmpeg?

Her er nogle almindelige eksempler på, hvordan du kan bruge FFmpeg:

  1. Konverter en videofil fra et format til et andet:

Kode: ffmpeg -i input_video .mp4 output_video.avi

Denne kommando vil konvertere input_video.mp4 til output_video.avi . FFmpeg vil automatisk vælge de passende codecs til outputformatet.

  1. Ændre størrelsen på en video:

Kode: ffmpeg -i input_video .mp4 -vf scale=640:480 output_video .mp4

Denne kommando ændrer størrelsen på input_video.mp4 til en opløsning på 640×480 pixels og gemmer resultatet på output_video.mp4 .

  1. Udtrække lyd fra en video:

Kode: ffmpeg -i input_video .mp4 -vn output_audio .mp3

Denne kommando udtrækker lydsporet fra input_video.mp4 og gemmer det på output_audio.mp3 .

  1. Sammenkædning af to videoer:

Kode: ffmpeg -i input_video1 .mp4 -i input_video2 .mp4 -filter_complex concat output_video .mp4

Denne kommando sammenkæder input_video1.mp4 og input_video2.mp4 og gemmer resultatet på output_video.mp4 .

  1. Tilføj et vandmærke til en video:

Kode: ffmpeg -i input_video .mp4 -i watermark.png -filter_complex “overlay=10:10” output_video .mp4

Denne kommando tilføjer billedet watermark.png til øverste venstre hjørne af input_video.mp4 med en forskydning på 10 pixel og gemmer resultatet på output_video.mp4 .

Dette er blot nogle få eksempler på, hvad du kan gøre med FFmpeg. Det er også muligt at bruge FFmpeg på Android. Du kan få flere oplysninger ved at konsultere onlinevejledninger, videostreams eller AI-chatbots som ChatGPT.

ffmpeg-logo

Hvad er FFmpeg nyttige videoredigeringskommandoer?

  1. Klip en video:

Kode: ffmpeg -i input_video .mp4 -ss 00:00:00:05 -t 00:00:00:10 -c copy output_video .mp4

Denne kommando vil trimme input_video.mp4 til at starte ved 5-sekundersmærket og slutte efter 10 sekunder og gemme resultatet på output_video.mp4 .

  1. Tilføj et billede eller en videooverlejring til min video:

Kode: ffmpeg -i input_video .mp4 -i overlay_image.png -filter_complex “overlay=10:10” output_video .mp4

Denne kommando tilføjer filen overlay_image.png som et overlay til input_video.mp4 ved koordinaterne (10, 10) og gemmer resultatet på output_video.mp4 .

  1. Ændre videoopløsning:

Kode: ffmpeg -i input_video .mp4 -vf scale=1280:720 -c:a copy output_video .mp4

Denne kommando ændrer opløsningen på input_video.mp4 til 1280×720 pixels og gemmer resultatet på output_video.mp4 .

  • Tilføj indstillingerne textfile og reload for drawtext:

Kode: 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

Hvordan man tilføjer tekst til video med FFmpeg?

Hvis du vil tilføje tekst til en video med FFmpeg, skal du bruge filteret drawtext . Med filteret drawtext kan du bl.a. angive tekstens skrifttype, størrelse, farve og position.

Her er en grundlæggende kommando til at tilføje tekst til en video ved hjælp af filteret drawtext :

Kode: ffmpeg -i input_video .mp4 -vf “drawtext=text=text=’Hello World’:fontfile=/path/to/font.ttf:fontsize=50:fontcolor=white:x=100:y=100” -codec:a copy output_video .mp4

I denne kommando:

  • -i input_video.mp4 angiver den indgående videofil.
  • -vf "drawtext=..." angiver det videofilter, der skal anvendes, hvilket i dette tilfælde er drawtext -filteret.
  • text='Hello World' angiver den tekst, der skal tilføjes til videoen.
  • fontfile=/path/to/font.ttf angiver den skrifttypefil, der skal anvendes.
  • fontsize=50 angiver skriftstørrelsen i point.
  • fontcolor=white angiver skriftfarven.
  • x=100:y=100 angiver tekstens position i videoen med øverste venstre hjørne på (100, 100) pixel.
  • -codec:a copy angiver, at lydstrømmen skal kopieres fra inputvideoen til outputvideoen uden at omkode den.
  • output_video.mp4 angiver output-videofilen.

Hvad er Fontfile?

Indstillingen fontfile i FFmpeg bruges til at angive stien til en skrifttypefil, der skal bruges til at gengive tekst i en video eller et billede.

Når du bruger filteret drawtext i FFmpeg til at tilføje tekst til en video, skal du angive indstillingen fontfile for at vælge en bestemt skrifttype til teksten.

Hvordan man inkluderer skrifttype i FFmpeg-kommandoen uden at bruge Fontfile-muligheden?

Hvis du vil bruge en skrifttype i en FFMPEG-kommando uden at angive fontfile-indstillingen, skal du bruge en systeminstalleret skrifttype.

Her er et eksempel på en kommando, der bruger en systeminstalleret skrifttype:

Kode: ffmpeg -i input_video .mp4 -vf “drawtext=text=text=’Hello World’:fontcolor=white:x=100:y=100:font=Arial” -codec:a copy output_video .mp4

Hvad er GitHub?

GitHub er en webbaseret platform, der giver udviklere mulighed for at hoste og administrere deres softwareprojekter, samarbejde med andre og spore og administrere ændringer i deres kode. Den indeholder værktøjer til versionsstyring, problemsporing, kodegennemgang og teamsamarbejde.

Hvordan man tilføjer “StackOverflow” tekst med FFmpeg?

Kode: ffmpeg -i input_video .mp4 -vf “drawtext=text=text=’StackOverflow’:fontfile=/path/to/font.ttf:fontsize=30:fontcolor=white:x=100:y=100” -codec:a copy output_video .mp4

Her er, hvad de forskellige muligheder i denne kommando gør:

  • -i input_video.mp4 angiver den indgående videofil.
  • -vf "drawtext=text='StackOverflow':fontfile=/path/to/font.ttf:fontsize=30:fontcolor=white:x=100:y=100" opretter videofiltergrafen til at tegne teksten. Denne kommando tegner teksten “StackOverflow” på videoen ved koordinaterne (100, 100) ved hjælp af en skrifttypefil, der ligger på /path/to/font.ttf , med en skriftstørrelse på 30 og en hvid skrifttypefarve.
  • -codec:a copy kopierer lydstrømmen fra inputvideoen til outputvideoen uden at omkode den.
  • output_video.mp4 angiver navnet på output-videofilen.

Sådan vises TimeCodes eller TimeStamps ved hjælp af FFmpegs Drawtext Filter?

Kode: 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

Her er, hvad de forskellige muligheder i denne kommando gør:

  • -i input_video.mp4 angiver den indgående videofil.
  • -filter_complex giver dig mulighed for at bruge flere filtre i den samme kommando.
  • drawtext er navnet på filteret.
  • fontfile=/path/to/font.ttf angiver stien til den skrifttypefil, vi ønsker at bruge.
  • text='%{pts/:hms}' indstiller den tekst, der skal vises. %{pts/:hms} er en pladsholder, som erstattes af den aktuelle tidskode i formatet timer:minutter:sekunder.
  • fontsize=24 sætter skriftstørrelsen til 24.
  • fontcolor=white sætter skriftfarven til hvid.
  • x=10 og y=10 indstiller tekstens position på videoen.
  • -codec:a copy kopierer lydstrømmen fra inputvideoen til outputvideoen uden at omkode den.
  • output_video.mp4 angiver navnet på outputfilen.

Tale til tekst

img

Transkriptor

Konverter dine lyd- og videofiler til tekst