Hvordan klippe og beskjære en video med FFMPEG

Hvordan klippe og beskjære en video med FFMPEG

Denne opplæringen forklarer hvordan du kutter og beskjærer videoer fra kommandolinjen ved hjelp av FFMPEG.

FFMPEG er en multiplatform, open source suite med verktøy og biblioteker for å redigere multimedia og strømmer fra kommandolinjen. Den støtter koding og avkoding av de fleste multimediaformater, inkludert uvanlige filer. Etter å ha lest denne opplæringen som inkluderer prosedyre og videoskjermbilder, vil du vite hvordan du kutter og beskjærer videoer ved hjelp av FFMPEG.

Installere FFMPEG:

For å installere FFMPEG på Debian-baserte Linux-distribusjoner, bruk kommandoen APT som vist i eksemplet nedenfor.

sudo apt install ffmpeg

For å installere FFMPEG på Redhat / Centos, kjør kommandoene nedenfor:

yum localinstall
yum installer ffmpeg ffmpeg-devel

Hvordan kutte videoer ved hjelp av FFMPEG:

Å kutte videoer med FFMPEG er en ganske enkel, rask og lav ressurskrevende oppgave ved bruk av FFMPEG. Du trenger bare å definere start eller sluttid, eller begge deler om nødvendig og utdatafilen. Jeg skal jobbe med denne Linux -hintvideoen (varighet 00: 03: 280) Jeg har nettopp lastet ned for denne opplæringen.

Kommandoen nedenfor bruker FFMPEG for å kutte videoen fra den andre 00:00:05 spesifisert med Flag -SS; Dette er flagget for å definere et utgangspunkt for den nye videoen din i tilfelle du vil kutte en del av begynnelsen. Hvis du bare vil kutte en del av slutten av videoen, trenger du ikke bruke dette flagget. Som du kan se, må timingformatet være HH: MM: SS (timer, minutter, sekunder). For eksempel, i 2 minutter og 3 sekunders timing, bør du skrive 00:02:03.

-I -flagget som brukes til å spesifisere filen som skal redigeres; I dette tilfellet er filen Linuxhint-VIM.MP4.

Alternativet -t brukes til å spesifisere slutten av den nye filen; I dette tilfellet vil videoen avsluttes 00:02:00. På samme måte som -ss, hvis du ikke vil kutte en del av slutten av videoen, men bare en del av begynnelsen, trenger du ikke bruke dette flagget.

I dette tilfellet brukes -c kopieringsflagget til å definere utgangsfilen; I dette tilfellet er filen redigertvideo.MP4.

ffmpeg -ss 00:00:05 -i Linuxhint -vim.MP4 -T 00:02:00 -C Copy EditedVideo.MP4

Hele operasjonen tok et par sekunder uten å konsumere datamaskinressurser.

Det neste eksemplet viser hvordan du bare kutter en del av slutten av 00:03:28 sekunders video. Dermed utelater jeg alternativet -SS fordi jeg vil beholde utgangspunktet, og jeg kuttet videoen på 00:02:00 ved å implementere -T -flagget.

ffmpeg -i Linuxhint -vim.MP4 -T 00:02:00 -C Copy EditedVideo2.MP4

I motsetning til det forrige eksemplet, kutter kommandoen nedenfor bare en del av videoen som begynner ved å bruke -SS -flagget. I dette tilfellet starter den nye utgangen fra 00:01:30.

ffmpeg -ss 00:01:30 -i Linuxhint -vim.mp4 -c kopier redigertvideo3.MP4

Som du kan se, er det en enkel og rask prosess å kutte videoer med FFMPEG.

Å beskjære svarte grenser ved bruk av FFMPEG:

Denne delen av opplæringen beskriver hvordan du beskjærer videoer med FFMPEG.

Du kan bruke FFMPEG for å prøve å oppdage hvordan du skal beskjære videoen din for å fjerne svarte grenser.

For dette eksemplet vil jeg bruke en 320 × 240 video som ser ut som følgende:

Kommandoen nedenfor vil prøve å oppdage riktige dimensjoner og posisjoner for å beskjære videoen riktig.

ffmpeg -i linux -foundation.mp4 -vf cropDetect -f null -2> & 1 | awk '/ crop/ print $ nf' | hale -1

Som du ser returnerer FFMPEG riktig bredde (320), høyde (208), x og y posisjoner for å beskjære videoen riktig.

X -posisjonen: X -posisjonen definerer det horisontale beskjæringens utgangspunkt fra venstre margin, der venstre margin er 0.

Y -stillingen: Y er det vertikale startpunktet for beskjæring der toppmarginen er 0.

Eksemplet under videoen vil bli beskåret; Du kan se -filteret: V -flagget.

Filterflagget implementerer et filterograf som deler inngangsstrømmen, beskjærer den og overlater den med den andre streaming. Som du kan se, er dimensjonene og posisjonene definert i kommandoen nedenfor gitt av forrige kommando.

Du kan også se at flagget “-C Copy” ble utelatt, og utdatafilnavnet ble skrevet like etter avlingsflagget.

ffmpeg -i linuxfoundation.mp4 -filter: v "avling = 320: 208: 0: 16" utgang.MP4

Som du ser ble de svarte grensene fjernet:

Om beskjæringsvideoer ved hjelp av FFMPEG:

Du kan beskjære hvilken som helst del av en video ved hjelp av den forrige teknikken, ikke bare svarte grenser.

Kommandoen nedenfor vil beskjære den forrige videoen, og returnerer et 200 × 200 -bilde, og starter 200px fra venstre og 0px fra toppmarginer.

fffmpeg -i output.mp4 -filter: v "avling = 200: 200: 200: 0" utgang2.MP4

Og her er den beskårne videoen:

Selvfølgelig kan du definere andre typer tiltak, for eksempel rektangler.

Videoen vi vil jobbe med (samme som den første veiledningsseksjonen) ser ut som bildet nedenfor.

I dette første eksemplet definerer vi bare utgangsdimensjonene, men ikke posisjonen. Hvis du ikke spesifiserer stillingen, vil FFMPEG automatisk beskjære midten av videoen. I eksemplet nedenfor, der bare videohøyden og bredden er definert, men ingen posisjon, vil FFMPEG beskjære videoen og returnere en 500 × 500 beskåret utgang fra midten av videoen.

ffmpeg -i Linuxhint -vim.MP4 -Filter: V "avling = 500: 500" LinuxHintVideo2.MP4

Og vi får den beskjærte 500x500px utgangen:

Om nødvendig kan du bruke kommandoen FFMPEG kombinert med GREP for å lære den opprinnelige videooppløsningen, som vist nedenfor.

ffmpeg -i Linuxhint -vim.MP4 2> & 1 | grep video: | grep -po '\ d 3,5 x \ d 3,5'

Hvis du liker FFMPEG Enkelhet og ytelse, kan du få tilgang til FFMPEG -offisiell dokumentasjon her for å lære om mange flere funksjoner og funksjoner som er tilgjengelige for å redigere media.

Konklusjon:

Å kutte og beskjære medier fra kommandolinjen er ganske enkelt ved hjelp av FFMPEG. En av FFMPEGs viktigste fordeler er det lave ressursforbruket og rask hastighet.
Denne opplæringen viser et hvilket som helst Linux -brukernivå eller noen person uten kunnskap om videoredigering kan profesjonelt redigere videoer i tekstmodus ved å lære noen få kommandoer og en vennlig syntaks. FFMPEG er multiplatform, noe som gjør det til et flott standardverktøy for å redigere video- og lydfiler fra kommandolinjen. FFMPEG er en del av det vilte kjente verktøy som VLC -spiller og ble inkludert i kjerneprosessering for iTunes og YouTube.

Jeg håper denne opplæringen var nyttig. Fortsett å følge Linux -hint for flere Linux -tips og opplæringsprogrammer.