Nesten alle som driver med videoer har kanskje hørt om FFmpeg før. For de som ikke er kjent, er FFmpeg et gratis og åpen kildekode-program som kan konvertere et hvilket som helst videoformat til et annet og endre kodekene.
FFmpeg støtter nesten alle lyd-/videokodeker (H.264, H.265, VP8, VP9, AAC, OPUS og mer), filer formater (MP4, FLV, MKV, TS, WEBM, MP3, etc.), og til og med strømmeprotokoller (HTTP, RTMP, RTSP, HLS, etc.).
Slik kan du installere og bruke FFmpeg til å behandle lyd- og videofiler på Linux.
FFmpeg-installasjon på Linux
FFmpeg er et gratis og åpen kildekodeverktøy tilgjengelig i standardlagrene til nesten alle større Linux-distribusjoner. Du kan også få kildekoden gratis hvis du ønsker å kompilere den selv.
# Debian
sudo apt installere ffmpeg# Fedora
sudo dnf installere https://download1.rpmfusion.org/free/fedora/rpmfusion-free-utgivelse-$(rpm -E %fedora).noarch.rpm
sudo dnf -y installere ffmpeg# RHEL/CentOS
nam installere ffmpeg ffmpeg-devel
# Arch Linux
pacman -S ffmpeg
Hvis alt går bra under installasjonen, bør du kunne se FFmpeg-versjonen når du bruker -versjon argument.
ffmpeg -versjon
Få videoinformasjon med FFmpeg
Det er mulig å se informasjonen om en video som du vil redigere med FFmpeg ved å bruke -Jeg flagg:
ffmpeg-Jegeksempel-video.mp4-skjul_banner
Her, den -skjul_banner parameterens jobb er å skjule unødvendig informasjon. Du kan fjerne denne parameteren og se forskjellen i utgangen.
Som du ser er det mulig å få mye informasjon for eksempel videokodektype, opprettelsesdato, metadata og koderstruktur for eksempelvideoen.
Konvertering av video- eller lydfiler til et annet format
En av de mest nyttige funksjonene til FFmpeg er at den kan konvertere en video eller lyd til et annet format. Du kan gjøre dette med enkle one-liners.
MOV til MP4 Med FFmpeg
Du kan konvertere videofilen i MOV-format til MP4 med FFmpeg ved å bruke kommandoen nedenfor:
ffmpeg-Jeginput-mov-video.movoutput-video.mp4
Først bruker du -Jeg parameter, som står for input video. Deretter skriver du inn filen du vil konvertere. Til slutt skriver du inn formatet du vil konvertere det til. Du kan gi utdataene dine et hvilket som helst navn du vil.
Mens FFmpeg kjører, vil den vise deg endringene den har gjort på kommandoskjermen. Utdatafilen din vil bli lagret i din nåværende arbeidskatalog.
WAV til MP3 Med FFmpeg
I likhet med videoer kan du gjøre de samme konverteringene for lydfiler. For eksempel kan du konvertere en WAV-lydfil til MP3 som følger:
ffmpeg-Jegeksempel-wav.wav-vn-ar 48000 -ac 2 -b:en 256 produksjon.mp3
Denne kommandoen har flere parametere enn videokonverteringsmetoden, men de er ikke vanskelige å forstå. For å forklare disse:
- -vn: Noen ganger har lydfilene du lytter til bilder. Disse bildene stammer vanligvis fra videoer. Hvis du ikke vil ha slike bilder i utdataene, kan du bruke denne parameteren.
- -ar: Denne parameteren lar deg stille inn lydfrekvensen til lydfilen du vil konvertere. Du kan justere lydkvaliteten og frekvensen med verdier som 8kHz, 44,1kHz eller 48kHz.
- -ac: Du har kanskje hørt begrepene mono og stereo før. Denne parameteren kan hjelpe deg med å angi antall lydkanaler.
- -b: a: Denne parameteren lar deg stille inn lydbithastigheten per sekund. Jo høyere kilobit, jo høyere lydkvalitet.
Lydoperasjoner med FFmpeg
FFmpeg kan også skille lyd fra videoer. For dette er det tilstrekkelig å bruke -vn parameter:
ffmpeg-Jegeksempel-video.mp4-vnproduksjon.mp3
Hvis du klarte å skille lyden fra videoen, kan du nå prøve å fjerne lyden fra videoene. Forskjellen her er -en parameter. Du bør huske på denne parameteren hvis du vil deaktivere lyd i en video:
ffmpeg-Jegeksempel-video.mp4-enoutput-mute.mp4
Videostørrelsesbehandling med FFmpeg
Videostørrelser kan noen ganger være ganske irriterende, spesielt når du vil laste dem opp et sted. Du trenger ikke lenger å laste ned programmer for å trimme dem, da FFmpeg kan gjøre dette for deg. Det er imidlertid noen parametere du trenger å vite for dette:
- -ss: Bruk denne parameteren til å angi starttiden for klippet
- -til: Lar deg spesifisere sluttid for klippet
- -c: Still inn kodeken til klippet ditt ved å bruke denne parameteren
- -t: Bruk denne parameteren til å angi varigheten av klippet
Du kan utlede mange eksempler ved å bruke disse parameterne. Hvis du for eksempel vil trimme en video, kan du bruke noe som:
ffmpeg-Jegeksempel-video.mp4-ss 00:02:25-til 00:03:50-ckopiereutgang-trim.mp4
Det er også mulig å beskjære kun bildet inne i videoen og ikke hele videoen. For dette kan du ty til noe som:
ffmpeg -i eksempel-video.mp4 -filter: v "avling=b: h: x: y" output-crop.mp4
Her er parametrene som brukes i den nevnte kommandoen:
- -filter: v: Denne parameteren spesifiserer filtreringsprosessen du vil bruke på videoen
- avling: Denne parameteren er for å spesifisere at en klippeoperasjon skal utføres
- w: h: x: y: Som du kanskje allerede har gjettet, angir w-, h-, x- og y-variablene henholdsvis bredde, høyde og posisjon til beskjæringsboksen
Redigering av videoer på Linux med FFmpeg
Redigering av videoer ender ikke med bare trimming og klipping. Noen ganger må du også endre skalaen på videoen. Følgende kommando vil endre størrelsen på videoen til en størrelse du ønsker:
ffmpeg -i example-video.mp4 -vf scale=1920:1080 output-scale.mp4
- -vf: Denne parameteren fungerer på samme måte som -filter: v argumentet sett ovenfor
- skala: Du kan spesifisere skalastørrelsene du ønsker i utdataene dine med denne parameteren
FFmpeg lar deg også kombinere flere videoer. Tenk deg at du har flere klipp kodet med samme kodek. Skriv inn listen over videoer du vil slå sammen til en .tekst fil. Kjør deretter følgende kommando:
ffmpeg-fconcat-Jegmin-video-listen.tekst-ckopieresum-utgang.mp4
De concat parameter her kombinerer filene dine. Det er også mulig å rotere videoer med FFmpeg:
ffmpeg -i eksempel-video.mp4 -vf "transponere=2" output-rotate.mp4
- transponere=0: Vend vertikalt (standard)
- transponere=1: Roter 90 grader med klokken
- transponere=2: Roter 90 grader mot klokken
- transponere=3: Vend vertikalt
For å rotere videoer 180 grader med klokken, må du spesifisere transponeringsparameteren to ganger:
ffmpeg -i eksempel-video.mp4 -vf "transponere=2, transponere=2" output-rotate.mp4
FPS og GOP operasjoner
Som du vet betyr FPS bilder per sekund. GOP (gruppe av bilder) er avstanden mellom to nøkkelbilder. FFmpeg er også nyttig for å endre noen parametere, inkludert FPS og GOP. Hvis du bruker kommandoen nedenfor, vil FFmpeg endre den originale FPS til verdien du angir:
ffmpeg -i eksempel-video.mp4 -vf "fps=60" output-fps.mp4
For GOP kan du bruke -g parameter og sett verdien til hva du vil. Vær oppmerksom på at å tvinge for mange nøkkelbilder kan være skadelig for enkelte koderes foroveralgoritmer.
ffmpeg-Jegeksempel-video.mp4-g 200 utgang-gop.mp4
Lag animerte GIF-er med FFmpeg
FFmpeg er også ideell for konvertere en video til animerte GIF-er. Du kan bruke en enkel konverteringskommando for å gjøre dette:
ffmpeg-Jegeksempel-video.mp4output-gif.gif
Men noen ganger vil du kanskje tilpasse GIF-en. Du kan bruke de ulike parameterne som er diskutert ovenfor for å oppnå dette:
ffmpeg -ss 00:01:15 -i eksempel-video.mp4 -til 10 -r 10 -vf skala=250:-1 output-gif.gif
De -r parameter her betyr bildefrekvensen. Som du kan se, er mange forskjellige tilpasninger mulige i en enkelt linjekommando.
Trekke ut rammer fra en video med FFmpeg
Bortsett fra å konvertere ett eller flere bilder til video, kan du også trekke ut rammer fra en video. Følgende kommando vil trekke ut ett bilde hvert sekund fra inndatavideoen. Disse utpakkede bildene vil også ha tosifrede navn som 01.jpeg, 02.jpeg, etc. Hvis du ønsker det, kan du også legge til andre parametere du har lært.
ffmpeg-Jegeksempel-video.mp4-r 1 bilde-%02d.jpeg
Du kan også bruke andre formater som PNG og BMP for de utpakkede bildene.
Hvorfor bør du bruke FFmpeg på Linux?
Som du kan se, er FFmpeg veldig fordelaktig på mange måter. Du trenger ikke ha noen teknisk kunnskap eller profesjonell Linux-erfaring for dette. Du kan utføre ulike mediebehandlingsfunksjoner med bare noen få parametere. Hvis du skal gjøre redigeringer som ikke er veldig lange, trenger du ikke dyre dataprogrammer og premium-medlemskap på nett. Dessuten fungerer FFmpeg veldig bra selv på low-end-enheter.
Funksjonene til FFmpeg er heller ikke begrenset til det ovennevnte. Når du leser dokumentasjonen og brukermanualen, kan du se hvor kraftig programvaren faktisk er. Selv bruker --hjelp parameter og Mann kommando, kan du få mer detaljert informasjon om bruk av FFmpeg. Det finnes også andre flotte omformere for Linux for å konkurrere med FFmpeg.