GNU/Linux >> Znalost Linux >  >> Linux

Jak přiblížit a oddálit videa pomocí FFmpeg

FFmpeg je opensource, výkonný audio a video konvertor. Pomocí FFmpeg můžeme kódovat, dekódovat, transkódovat, muxovat, demuxovat, nahrávat, měnit velikost, streamovat, filtrovat a přehrávat téměř všechny typy mediálních souborů. Nejen to, můžeme také zachytit živý audio/video stream. FFmpeg se dodává se spoustou filtrů pro provádění různých úkolů. Jedním z méně známých, ale užitečných filtrů je zoompan . Pomocí filtru zoompan můžeme snadno přibližovat a oddalovat videa v Linuxu. Dovolte mi ukázat vám, jak to udělat pomocí příkladu příkazu.

Ujistěte se, že jste na svůj Linux nainstalovali FFmpeg. Kroky k instalaci FFmpeg na populární operační systémy Linux jsme zdokumentovali v následujícím odkazu.

  • Jak nainstalovat FFmpeg v Linuxu

Jakmile je FFmpeg nainstalován, přejděte do umístění, kam jste video uložili, a spusťte následující příkaz pro přiblížení a oddálení každých X sekund:

$ ffmpeg -i input.mp4 -vf "zoompan=z='if(lte(mod(time,10),3),2,1)':d=1:x=iw/2-(iw/zoom/2):y=ih/2-(ih/zoom/2):fps=30" output.mp4

Výše uvedený příkaz přiblíží střed videa na 2x přiblížení na první 3 sekundy každých 10 sekund bloku času. Nahraďte input.mp4 s vaším názvem souboru. Upravte také hodnoty podle svých požadavků a nastavte FPS pro filtr tak, aby odpovídala vstupu. Výchozí hodnota je 25.

Podrobnosti o FPS můžete najít mezi dalšími podrobnostmi daného videa pomocí následujícího příkazu:

$ ffmpeg -i input.mp4

Zde je aktuální vstupní video před konverzí:

A zde je převedené (přiblížení a oddálení) video:

Všimli jste si rozdílu? Video se během prvních 3 sekund přiblíží 2X a poté se vrátí do normálu (oddálení). Přesně v 10. sekundě se video znovu přiblíží na první 3 sekundy a cyklus pokračuje, dokud video neskončí.

Můžete také vyzkoušet následující nastavení zoompanu uvedená v nápovědě k filtru zoompan FFmpeg.

Přibližte až 1,5x a současně posuňte na nějaké místo blízko středu obrázku:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='if(gte(zoom,1.5),x,x+1/a)':y='if(gte(zoom,1.5),y,y+1)':s=640x360

Přiblížení až 1,5x a posouvání vždy ve středu obrázku:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

Stejné jako výše, ale bez pauzy:

zoompan=z='min(max(zoom,pzoom)+0.0015,1.5)':d=1:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

Přiblížení 2x do středu obrazu pouze na první sekundu vstupního videa:

zoompan=z='if(between(in_time,0,1),2,1)':d=1:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

Další příklady příkazů FFmpeg naleznete v následující příručce:

  • 20+ FFmpeg příkazů pro začátečníky

Doufám, že to pomůže.


Linux
  1. Jak vypálit obraz ISO na DVD a USB pomocí dd

  2. Jak otočit videa pomocí FFMpeg z příkazového řádku

  3. Jak převést videa m4v a wmv do formátu mp4 pomocí ffmpeg?

  1. Raspberry Pi Firewall:Jak jej nainstalovat a spravovat pomocí UFW

  2. Jak vytisknout řádky číslo 15 a 25 z každých 50 řádků?

  3. Jak programově vytvářet videa?

  1. Jak zjistit a zjistit, že je program v mrtvém bodě?

  2. Stříhání videí na základě času začátku a konce pomocí ffmpeg

  3. Jak přiblížit a oddálit terminálovou konzoli v linuxu