Installerer ffmpeg på openserver. FFmpeg grunnleggende kommandoer

Ffmpeg er et verktøy som kan hjelpe deg med å konvertere nesten alle lyd- og videofiler fra kommandolinjen. Denne artikkelen forklarer noen nyttige ffmpeg-kommandoer som du bør vite for dette. Ffmpeg er et ekstremt kraftig og allsidig kommandolinjeverktøy for konvertering av lyd- og videofiler. Programmet er gratis og tilgjengelig for Windows, Mac og Linux-maskiner. Enten du vil slå sammen to videofiler, trekke ut lydkomponenter fra videofiler, konvertere en video til en animert GIF, kan ffmpeg gjøre alt dette og mer.

Nyttige Ffmpeg-kommandoer

Ffmpeg støtter alle populære lyd- og videoformater. Eller du kan kjøre kommandoen ./ffmpeg -formater for å få en liste over hvert format som støttes av den installerte versjonen av ffmpeg. Hvis du akkurat har begynt, her er noen få kommandoer som vil gi deg en god ide om mulighetene til dette verktøyet.

1. Klipp en videofil i mindre klipp

Du kan bruke parameteren Time Difference (-SS) til å spesifisere et starttidsstempel i formatet TT:mm:SS.ms. Formatet til a-ss-parameteren for å spesifisere den faktiske varigheten av klippet i sekunder.

2. Del videoen i flere deler

Hvis du ønsker å dele en stor videofil i flere små klipp uten omkoding, kan ffmpeg hjelpe. Denne kommandoen vil dele den originale videoen i 2 deler - en som slutter på 50-tallet fra begynnelsen. og den andre starter ved 50s og slutter ved slutten av inngangsvideosignalet.

3. Konverter video fra ett format til et annet

Du kan bruke vcodec-parameteren til å spesifisere formatkodingen som skal brukes for videoutgang. Videokoding tar lang tid, men du kan fremskynde prosessen ved å tvinge forhåndsinnstillingen til i det minste å forringe kvaliteten på utgangsvideoen.

Ffmpeg -i youtube.flv -c:v libx264 filnavn.mp4 ffmpeg -i video.wmv -c:v libx264 -forhåndsinnstilt ultrarask video.mp4

4. Slå sammen (slå sammen) videofiler

Hvis du har flere lyd- eller videofiler kodet med de samme kodekene, kan du kombinere dem til én fil ved å bruke ffmpeg-kommandoer. Lag en inndatafil med en liste over alle kildefilene du vil slå sammen, og kjør deretter denne kommandoen.

Ffmpeg -f concat -i file-list.txt -c kopi output.mp4

5. Deaktiver video (fjern lydkomponent)

Bruk dette alternativet til å slå av lyddelen av videostrømmen.

Ffmpeg -i video.mp4 -en mute-video.mp4

6. Trekk ut lyd fra video

vn-bryteren trekker ut lydsporet fra videoen og vi bruker -AB-bryteren for å lagre lyden som en 256kbit/MP3-lydfil.

Ffmpeg -i video.mp4 -vn -ab 256 audio.mp3

7. Konverter video til animert GIF-fil

Ffmpeg er et flott verktøy for å konvertere videofiler til animerte GIF-filer, og kvaliteten er ganske bra. Bruk filterskalaen til å angi bredden på GIF-bildet, t-parameteren for en bestemt varighet og r-parameteren for å angi bildefrekvensen (fps).

Ffmpeg -i video.mp4 -vf skala=500:-1 -t 10 -r 10 image.gif

8. Trekk ut rammebilder fra video

Denne kommandoen vil trekke ut en 15s videoramme og lagre den som et 800px bredt JPEG-bilde. Du kan også bruke alternativet s (400x300) for å spesifisere de nøyaktige dimensjonene til bildet i filen, selv om det sannsynligvis vil skape et strukket bilde hvis bildestørrelsen ikke samsvarer med sideforholdet til den originale videofilen.

Ffmpeg -ss 00:00:15 -i video.mp4 -vf skala=800:-1 -vframes 1 image.jpg

9. Konverter videoer til bilder

Du kan bruke ffmpeg til å automatisk trekke ut bilderammer fra en video hvert 'N' sekund og lagre bildene i rekkefølge. Denne kommandoen lagrer rammebilder hvert 4. sekund.

Ffmpeg -i movie.mp4 -r 0,25 frames_%04d.png

10. Slå sammen lyd- og videofiler

Du kan også angi en korteste bryter til sluttkoding når det korteste klippet slutter.

Ffmpeg -i video.mp4 -i audio.mp3 -c:v kopi -c:a aac -streng eksperimentell utgang.mp4 ffmpeg -i video.mp4 -i audio.mp3 -c:v kopi -c:a aac -streng eksperimentell -korteste utgang.mp4

11. Endre størrelse på video

Bruk størrelsesbryteren(e) for å endre størrelsen på videoen mens du beholder størrelsesforholdet.

Ffmpeg -i input.mp4 -s 480x320 -c:a kopi output.mp4

12. Lag en videolysbildeserie fra bilder

Denne kommandoen brukes til å lage en videolysbildefremvisning ved hjelp av en serie bilder, som er navngitt som img001.png, img002.png, osv. Hvert bilde vil ha en varighet på 5 sekunder (-r 1/5).

Ffmpeg -r 1/5 -i img%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p slideshow.mp4

13. Legg til plakatbilder for lyd

Du kan legge til et bilde i en lydfil, og lengden på utgangsvideoen vil være den samme som lydstrømmen for inngangen. Dette kan være nyttig for å laste opp mp3-filer til YouTube.

Ffmpeg -loop 1 -i image.jpg -i audio.mp3 -c:v libx264 -c:a aac -streng eksperimentell -b:a 192k -korteste utgang.mp4

14. Konverter ett bilde til video

Bruk t-parameteren for å spesifisere lengden på videoen.

Ffmpeg -loop 1 -i image.png -c:v libx264 -t 30 -pix_fmt yuv420p video.mp4

15. Legg til undertekster til en film

Denne kommandoen vil lage undertekster med .srt-filer. Ffmpeg kan også dekode de vanligste undertekstformatene.

Ffmpeg -i movie.mp4 -i subtitles.srt -map 0 -map 1 -c copy -c:v libx264 -crf 23 -preset veryrask output.mkv

16. Trim lydfil

Dette vil lage en 30 sekunders lydfil som starter på 90 sekunder fra den originale lydfilen uten omkoding.

17. Endre lydvolumet

Du kan bruke volumfilteret til å endre volumet til en mediefil ved å bruke ffmpeg-kommandoen. Denne kommandoen vil redusere lydfilvolumet med det halve.

Ffmpeg -i input.wav -af "volum=0.5" output.wav

18. Roter video

Denne kommandoen vil rotere videoen 90° med klokken. Du kan sette transponeringen til 2 for å rotere videoen 90° mot klokken.

Ffmpeg -i input.mp4 -filter:v "transpose=1" rotated-video.mp4

Denne kommandoen vil rotere videoen 180° mot klokken.

Ffmpeg -i input.mp4 -filter:v "transpose=2,transpose=2" rotated-video.mp4

19. Gjør videoen raskere eller tregere

Du kan endre videohastigheten ved å bruke setpts-filteret (elektronisk tidsstemplet). Denne kommandoen vil gjøre videoen 8x (1/8) raskere, eller bruk av setpts=4*PTS vil gjøre videoen 4x tregere.

Ffmpeg -i input.mp4 -filter:v "setpts=0.125*PTS" output.mp4

20. Øk eller senk lyden

For å endre lydhastigheten, bruk atempo-lydfilteret. Denne kommandoen utføres med dobbel lydhastighet. For lyd kan du bruke en hvilken som helst verdi mellom 0,5 og 2,0.

Ffmpeg -i input.mkv -filter:a "atempo=2.0" -vn output.mkv

For å komme i gang med ffmpeg, bør du også sjekke ut den offisielle dokumentasjonen på ffmpeg.org og lære om alle de mulige tingene du kan gjøre med ffmpeg.

I denne artikkelen vil vi prøve å forklare "på fingrene" hva FFmpeg er for nybegynnere Linux-brukere (og Windows også). FFmpeg er et populært sett med programmer og biblioteker blant multimedia- og webutviklere. Basert på FFmpeg er det laget mange programmer for å konvertere video fra ett format til et annet. Populariteten til dette programmet er ekstremt høy. Hvorfor er han så populær? Hva brukes den oftest til? Hvordan installere og hvordan kjøre?

Så, hovedtrekkene til FFmpeg som kan tiltrekke seg oppmerksomheten til en uerfaren Linux-bruker som nettopp har begynt å lære Ubuntu:

  • FFMpeg er gratis.
  • Tilgjengelig i alle Linux-distribusjoner.
  • Du kan se hvilken som helst film.
  • Fungerer med alle slags videoformater.
  • Lar deg konvertere video fra ett format til et annet.
  • Støtter parallell koding på flere prosessorer.
  • Akselerert koding på NVidia-kort.
  • Du kan bruke FFmpeg i programmene dine og deretter selge dem.

FFmpeg er tilgjengelig på Linux, Windows, Mac Os. Og det fungerer likt overalt. Så hvis du har lært å jobbe med FFmpeg på Windows, må du kjøre det på samme måte på Linux og omvendt.

FFmpeg absolutt selvforsynt. For å se en film er det ikke nødvendig å søke på Internett, laste ned og installere kodeker. Bare én fil (ffplay.exe) er nok, alle kodeker er inne i denne filen.

FFmpeg - gratis programvare (GPL 2.0- og LGPL 2.1-lisenser) og du kan bruke koden i prosjektene dine, både kommersielle og fritt distribuert.

Som allerede nevnt er FFmpeg en samling programmer. Hva betyr "sett med programmer"? Må jeg laste ned alle programmer, eller kan jeg laste dem ned separat? Hva er inni? Vi skal nå prøve å svare på disse spørsmålene.

Men først, la oss definere begrepet FF mpeg er forkortelse for F ast F eller mot Mpeg. Når vi snakker om FFmpeg som et sett med programmer, må de to første bokstavene "F" være store (FF).

Så, FFmpeg består av følgende verktøy: ffmpeg, ffplay, ffserver, ffprobe(merk at alt er med små bokstaver). For Windows er dette vanlige exe-filer. Dessuten er størrelsen deres veldig imponerende. Saken er at alle video- og lydkodeker allerede er inne i dem. Hvis du trenger å se en film, er det bare å laste ned ffplay.exe fra Internett, ingenting annet er nødvendig. Ingen installatører, ingen kodeker, ingen administratorrettigheter kreves. Lastet ned, pakket ut, kan du begynne å se filmen.

FFmpeg på Windows, størrelsen på hver fil er 38-39Mb, alle kodeker er kompilert og koblet "inne" i den kjørbare filen.

ffmpeg

Med dette programmet kan du konvertere videoer fra ett format til et annet. Sy flere videoer til én. Parse video i separate rammer (bilder), og lim dem deretter sammen igjen. Skru opp/sak ned, zoom, legg til undertekster og flere lydspor. Og 100 500 flere nyttige handlinger.

Listen over tilgjengelige alternativer for denne kommandoen strekker seg over 203 sider:

Imponerende, ikke sant?

ffspill


Brukes til å se filmer. Hvis du begynner å bli kjent med FFmpeg ved å se filmer, så er ffplay det du trenger. I det innledende stadiet kommer hele FFmpeg-pakken for nybegynnere ned til å kun bruke dette programmet.

ffserver


Hvis du plutselig vil lage din egen videovert som ligner på YouTube, bruk ffserver.

ffprobe


Et magisk program som vil fortelle deg alt om filmen du lastet ned (format, varighet, hvor mange lydspor og mye mer). Den vil vise så mye informasjon om filmen at det vil ta en halv dag å lese alt.

I tillegg til de fire programmene inkluderer FFmpeg-pakken også et sett med fritt distribuerte biblioteker (hvorfra de ovennevnte programmene er kompilert):

  • libavutil— et sett med hjelpefunksjoner;
  • libavcodec— lyd/video-kodeker;
  • libavformat— bibliotek for arbeid med containere;
  • libavenhet— arbeide med enheter som leverer medieinnhold;
  • libavfilter— ulike filtre;
  • libswscale— skalering av bibliotek, arbeid med fargerom;
  • libswresample— lydbehandlingsbibliotek.

I prinsippet var det på grunn av disse bibliotekene at hele FFmpeg-prosjektet ble startet, og programmene var allerede en bonus :)

Ved å bruke disse bibliotekene kan du lage dine egne applikasjoner for å jobbe med multimedieinnhold og til og med selge dem. Det er ikke vanskelig å skrive din egen videospiller eller videokonverter. Nettet er fullt av opplæringsprogrammer og instruksjoner om hvordan du bruker FFmpeg-biblioteker.

Historie

Historien til FFmpeg er like rik som innholdet. Etter å ha startet i 2000, fikk det et sterkt sjokk i 2011, da noen utviklere bestemte seg for å lage sitt eget bibliotek for å jobbe med medieinnhold, de kalte det Libav. De forklarte ønsket om å forlate prosjektet med misnøye med organiseringen av FFmpeg-prosjektet, der i hovedsak all makt var i hendene på én person og alle beslutninger ble tatt kun av ham.

Nå går Libav sine egne veier og hører ikke på noen. Koden oppdateres ikke så ofte som FFmpeg. Hver oppdatering blir nøye kontrollert.

FFmpeg forble ikke i gjeld og tar regelmessig, annenhver dag, inn i hullet endringene i koden gjort av Libav-teamet :-)

For øyeblikket fortsetter FFmpeg å utvikle seg aktivt, noe som fremgår av et skjermbilde av kildekodelageret:

Installasjon

FFmpeg er så populær at den er inkludert som standard i mange Linux-distribusjoner. Hvis du av en eller annen grunn ikke installerte det med en gang, kan du gjøre dette senere ved å bruke en pakkebehandling. Installering av FFmpeg for nybegynnere bør ikke by på noen problemer. Avhengig av Linux-distribusjonen din, må du kjøre en rekke standardkommandoer.

Sudo add-apt-repository ppa:mc3man/trusty-media sudo apt-get update sudo apt-get install ffmpeg

Yum -y installer ffmpeg ffmpeg-devel

openSuSe

Glidelås installer ffmpeg

De nyeste versjonene av FFmpeg for Windows kan lastes ned fra:

https://ffmpeg.zeranoe.com/builds/

To typer FFmpeg

Det er to former der FFmpeg kommer til datamaskinen din:

1) statisk konstruksjon— i dette tilfellet er alle kodeker, filtre og verktøy kompilert "inne" ffmpeg.exe (ffprobe.exe, ffplay.exe), og du trenger bare å laste ned en av disse filene for å begynne å se en film (ffplay.exe). I dette tilfellet er størrelsen på den kjørbare modulen kraftig oppblåst (opptil 39 Mb). Men det er veldig praktisk.

2) delt bygge- her er kodeker, filtre og andre hjelpeprogrammer uavhengige separate filer som FFmpeg finner og laster etter behov. I dette tilfellet er størrelsen på den kjørbare modulen bare 190Kb.

Hvis du installerer FFmpeg på Linux, er det en 99,9 % sjanse for at shared-build vil bli installert.

Personlig foretrekker jeg statisk bygging (ingen grunn til å tenke på andre biblioteker). For å få statisk bygging under Linux, må du bygge FFmpeg selv fra kildekoden. For nye Linux-brukere kan dette være vanskelig.

Hvordan se en film?

Alt er klart, men hvordan se filmer? Som nevnt ovenfor er ffplay (ffplay.exe - for Windows) et konsollprogram, det vil si at det ikke har et grafisk grensesnitt. For å se videoen må du kjøre på kommandolinjen:

Ffmpeg.exe film.avi

hvoretter filmen umiddelbart begynner å spille:

For en nybegynner kan denne metoden for å lansere en film virke uvanlig. Men dette er hele kraften til ffplay. Den har det samme enorme antallet alternativer som ffmpeg, som vil hjelpe deg med å tilpasse bildet for de mest krevende filmelskere.

Hvis du føler deg usikker når du arbeider med Windows-kommandolinjen, kan du bruke følgende metode. Ta tak i filmen med musen og dra den til ffplay.exe, filmen vil umiddelbart begynne å spille.

Avspillingskontroll (kort liste over kommandoer):

q,ESC- exit,
f- fullskjerm (dobbeltklikk med venstre museknapp),
s- pause
m- lyd på/av,
9, 0 - volum opp/ned,
t- bytte undertekster,
c- syklusprogram
s— bilde-for-bilde bevegelse gjennom filmen,
venstre/høyre pil— gå 10 sekunder bakover/forover,
pil ned/opp— gå 1 minutt bakover/fremover,
side ned/side opp— gå 10 minutter bakover/fremover.

Det grafiske grensesnittet til ffplay-spilleren ser ganske asketisk ut, eller rettere sagt, det eksisterer ikke i det hele tatt. Det er ingen vanlige skyveknapper, menyer iboende i mediespillere med et grafisk grensesnitt. Når du jobber med ffplay, ser du bare selve filmen og noen rare tall og ord blinke i terminalvinduet, som i filmen "The Matrix". Faktisk er det enkelt og oversiktlig å kontrollere filmen fra tastaturet; etter noen få visninger vil fingrene huske hvilke knapper du skal trykke på.

Flere eksempler på lansering av ffplay med ulike alternativer:

Reduser bildestørrelsen med 4 ganger bredden

Ffplay -vf scale=iw/4:-1 video.avi

Fjern video fra støy

Ffplay -vf hqdn3d=4:3:6:4.5 video.avi

2x akselerasjon

Ffplay -vf setpts=0.5*PTS video.avi

Hvordan omkode?

Konverter mpg til avi

Ffmpeg -i video.mpg video.avi

Trekk ut lyd fra video og ta opp som MP3

Ffmpeg -i video.mp4 -vn -ab 128 audio.mp3

Kombiner lyd og video

Ffmpeg -i audio.wav -i video.avi final_video.mpg

Trekk ut videospor (uten lyd)

Ffmpeg -i video.mp4 -an video_bez_zvuka.mp4

Endre størrelse på video

Ffmpeg -i video.mp4 -s 640x480 -c:a copy video640480.mp4

Kast ut de første 45 sekundene av videoen og la en del som varer i 40 sekunder

Transkode WAV til MP3

Ffmpeg -i audio.wav -b:a 192k audio.mp3

Dekomponer video i rammer (bilder)

Ffmpeg -i video.webm thumb%04d.jpg

Lag en video fra et sett med bilder

Ffmpeg -i frame-%03d.png video.avi

Konklusjon

Denne artikkelen tar sikte på å introdusere leseren til det kraftigste settet med FFmpeg-programmer. En kort beskrivelse av FFmpeg-pakken er gitt. Eksempler på bruken er gitt for å se på video og for å behandle (konvertere) lyd- og videomateriale.

Bare en liten del av mulighetene til FFmpeg-pakken er oppført. Jeg tror det er nok for en første titt. Til venstre bak kulissene er slike FFmpeg-funksjoner som multipass-koding, filtre og filterkjeder, en kombinasjon med Avisynth, og sammenstilling av FFmpeg med tredjepartskodeker.

Hensikten med denne artikkelen var å vise at FFmpeg for nybegynnere Linux-brukere burde være et uunnværlig verktøy når man jobber med medieinnhold. Det er ingen grunn til å være redd for mangelen på GUI. Arbeid med lyd og video fra konsollen kan også være svært effektivt.

P.S. Siden jeg må bruke FFmpeg ofte, bestemte jeg meg for å samle alle de populære bruksteknikkene i en bok.

Og nå prosedyren for installerer ffmpeg på Denwer:

  • Opprett en mappe ffmpeg i katalogen /usr/bin.
  • Kopier følgende filer til den opprettede mappen: ffmpeg.exe, SDL.dll, pthreadGC2.dll.
  • Kopier bibliotek php_ffmpeg.dll til katalogen /usr/local/php5/ext.
  • Kopier alle andre filer til katalogen WINDOWS/system32.
  • Åpen fil /usr/local/php5/php.ini.
  • Finn linjen: " extension=php_bz2.dll".
  • Rett etter den funnet linjen, legg til linjen: " extension=php_ffmpeg.dll".
  • Lagre og lukk php.ini.
  • Start serveren på nytt.

Alle! Installerer ffmpeg på Denwer fullført! Du må imidlertid sørge for dette. For å gjøre dette, skriv følgende skript:

if (extension_loaded("ffmpeg")) echo "Alt fungerer!";
else echo "Dessverre er modulen ikke tilkoblet"; ?>

Kjør dette skriptet, og hvis du plutselig får " Beklager, modulen er ikke tilkoblet", så gjennomgå nøye om du har gjort alt nøyaktig i henhold til punktene. Hvert trinn er av stor betydning. Vær også forsiktig med denne versjonen ffmpeg arbeider under PHP5.3. Det er ikke et faktum at den vil kjøre under en annen versjon PHP.

— Fjern pakkene x264, libx264-dev og ffmpeg hvis de ble installert:

$ sudo apt-get purge ffmpeg x264 libx264-dev libmp3lame-dev

— Hvis automatisk oppdatering av pakker er aktivert på systemet, forbyr vi oppdatering av ffmpeg-pakken:
Hvis filen "/etc/apt/apt.conf.d/50unattended-upgrades" eksisterer, legg deretter til ffmpeg-pakken i delen "Pakke-svarteliste"; hvis filen ikke eksisterer, opprett den:

$ sudo echo -e "Unattended-Upgrade::Package-Blacklist (n "ffmpeg";n);" > /etc/apt/apt.conf.d/50unattended-upgrades

For montering x264 siste versjon kreves yasm. La oss sjekke hvilken versjon som er installert:

$ yasm --versjon yasm 1.2.0 kompilert 20. november 2013.

Hvis versjonene samsvarer, hopper du over neste trinn

$ apt-get remove yasm $ wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz $ tar xvfz yasm-1.2.0.tar.gz $ cd yasm-1.2 .0 $ ./configure --prefix=/usr/local $ make $ sudo make install $ yasm --versjon yasm 1.2.0 kompilert 20. november 2013.

— Vi får de avhengige pakkene som er nødvendige for å installere ffmpeg og x264:

$ sudo apt-get update $ sudo apt-get install build-essential subversion texi2html libfaac-dev libfaad-dev libmp3lame-dev libtheora-dev quilt libsdl1.2-dev libogg-dev libvorbis-dev liba52-dev libdtim-2dev libdtim-2 libraw1394-dev libdc1394-22-dev libtheora-dev libgsm1-dev libfaac-dev libfaad-dev git-core checkinstall yasm libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev-dev libvor-gx libbis-gx dev nasm python-chardet gstreamer1.0-libav gstreamer0.10-ffmpeg

Hvis du under installasjonsprosessen fikk en feilmelding angående avhengigheten til gstreamer0.10-ffmpeg-pakken

legg til et nytt depot og oppdater indekser

Sudo add-apt-repository ppa:mc3man/trusty-media sudo apt-get update

hvoretter vi gjentar prosessen med å installere pakker

— Installer x264 fra kilden

$ mkdir ~/src; cd ~/src $ git clone git://git.videolan.org/x264.git $ cd ./x264/ $ ./configure --prefix=/usr/local --enable-shared $ make $ sudo checkinstall -- pkgname = x264 --pkgversion head -c 7`" --backup = nei --deldoc = ja --fstrans = nei --default sudo checkinstall --pkgname =x264 --pkgversion "2:0.`grep X264_BUILD x264.h -m1 | kutt -d" " -f3`.`git rev-list HEAD | wc -l` +git `git rev-list HEAD -n 1 | hode -c 7`" --backup =no --default $ sudo make install-lib-dev && sudo cp libx264.a /usr/local/lib/

— Installer x264_b10 fra kilden

$ mkdir ~/src; cd ~/src $ git clone git://git.videolan.org/x264.git $ cd ./x264/ $ ./configure --prefix=/usr/local --enable-shared --bit-depth=10 $ gjør $ sudo checkinstall --pkgname=x264_b10 --pkgversion "2:0.`grep X264_BUILD x264.h -m1 | cut -d" " -f3`.`git rev-list HEAD | wc -l`+git`git rev-liste HEAD -n 1 | head -c 7`" --backup = nei --deldoc = ja --fstrans = nei --default $ sudo make install-lib-dev $ sudo cp libx264.a /usr/local/lib/

La oss sjekke hvilken versjon av lame som er installert:

$lame -h LAME 64bits versjon 3.99.5 (http://lame.sf.net)

Hvis du får svar på at versjonen er eldre enn 3.99, hopper du over neste trinn

— Installerer dårlig kodekstøtte

$cd ~/src $ sudo mkdir -p /usr/local/share/doc/lame $ wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz $ tar xzvf lame-3.99.5.tar.gz $ cd lame-3.99.5 $ ./configure --enable-nasm --disable-shared $ make $ sudo checkinstall --pkgname=lame-ffmpeg --pkgversion="3.99 .5" --backup=nei --default --deldoc=ja

— Installer libxvid fra kilden

$ cd ~/src $ wget http://downloads.xvid.org/downloads/xvidcore-1.3.3.tar.gz $ tar xzvf xvidcore-1.3.3.tar.gz $ cd ./xvidcore/build/generic $ ./configure --prefix=/usr/local $ make $ sudo make install apt-get install libopencore-amrnb-dev libopencore-amrwb-dev libgsm1-dev libfaac-dev libtheora-dev libvorbis-dev libx264-dev-libdc239 dev libxext-dev libxfixes-dev

— Installer ffmpeg med x264-kodekstøtte:

$ cd ~/src $ git klone git://git.videolan.org/ffmpeg.git $ cd ffmpeg/ $ ./configure --prefix=/usr/local --enable-gpl --enable-postproc --enable -swscale --enable-pthreads --enable-x11grab --enable-libdc1394 --enable-libfaac --enable-libgsm --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable -libxvid --enable-nonfree --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-shared $ make $ sudo checkinstall --pkgname=ffmpeg --pkgversion="7:$( dato +%Y%m%d%H%M)-git" --backup=no --deldoc=yes --fstrans=no --default $ hash x264 ffmpeg ffplay ffprobe $ldconfig -v

  • installer de nødvendige kodeverktøyene

$ sudo apt-get install mkvtoolnix gpac mencoder dvdrip avidemux

La oss sjekke installasjonen

$ som ffmpeg /usr/local/bin/ffmpeg

$ ffmpeg-kodere| grep-E "mp3|xvid|aac|gsm|amr|x264|theora|vorbis"
ffmpeg versjon N-55691-gca7f637 Copyright 2000—2013 FFmpeg-utviklerne
bygget 21. august 2013 15:44:17 med gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
konfigurasjon: --prefix=/usr/local --enable-gpl --enable-version3 --enable-nonfree --enable-shared --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libfaac - -enable-libgsm --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid
libavutil 52.42.100 / 52.42.100
libavcodec 55.29.100 / 55.29.100
libavformat 55.14.100 / 55.14.100
libavenhet 55.3.100 / 55.3.100
libavfilter 3.82.100 / 3.82.100
libswscale 2.5.100 / 2.5.100
libswresample 0.17.103 / 0.17.103
libpostproc 52.3.100 / 52.3.100
V... libx264 libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 del 10 (kodek h264)
V... libx264rgb libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 del 10 RGB (kodek h264)
V... libxvid libxvidcore MPEG-4 del 2 (kodek mpeg4)
V... libtheora libtheora Theora (kodek theora)
A...X...aac AAC (Avansert lydkoding)
A... libfaac libfaac AAC (Avansert lydkoding) (kodek aac)
A... libopencore_amrnb OpenCORE AMR-NB (Adaptive Multi-Rate Narrow-Band) (codec amr_nb)
A... libgsm libgsm GSM (kodek gsm)
En... libgsm_ms libgsm GSM Microsoft-variant (kodek gsm_ms)
A... libmp3lame libmp3lame MP3 (MPEG lydlag 3) (kodek mp3)
A...X...vorbis Vorbis
A... libvorbis libvorbis (kodek vorbis)

Eksempler på bruk

One pass-koding:

Ffmpeg -i-inngang. avi -acodec libfaac -ab 128k -ac 2 -vcodec libx264 -vpre sakte -crf 22 -tråder 0 utgang. mp4

Jo lavere parameter -crf, jo høyere kvalitet, men jo større fil. Rimelige verdier er fra 18 til 28.

To-pass koding:

Ffmpeg -i-inngang. avi -pass 1 -vcodec libx264 -vpre fast_firstpass -b 512k -bt 512k -threads 0 -f rawvideo -an -y /dev/null && ffmpeg -i input. avi -pass 2 -acodec libfaac -ab 128k -ac 2 -vcodec libx264 -vpre fast -b 512k -bt 512k -threads 0 output. mp4

Omkoding for iPod (640x480):

Ffmpeg -i-inngang. avi -acodec libfaac -aq 100 -ac 2 -vcodec libx264 -vpre sakte -vpre ipod640 -crf 26 -map _meta_data 0 : 0 -vf skala = 640 : -1 -tråder 0 utgang. mp4

1. Få informasjon om en videofil

ffmpeg -i video.avi

2. Gjør om et sett med bilder til en video

ffmpeg -f image2 -i image%d.jpg video.mpg Denne kommandoen vil konvertere alle bilder fra gjeldende katalog (kalt bilde1.jpg, bilde2.jpg, osv.) til en videofil video.mpg (oversetterens merknad: Jeg foretrekker dette formatet: ffmpeg -r 12 -y -i "image_%010d.png" output.mpg her angis bildefrekvensen (12) for videoen, formatet "image_%010d.png" betyr at bilder vil bli søkt i formen image_0000000001.png, image_0000000002.png, osv., det vil si i printf-format)

3. Klipp videoer til bilder

ffmpeg -i video.mpg bilde%d.jpg

Denne kommandoen vil lage filer image1.jpg, image2.jpg, etc., PGM, PPM, PAM, PGMYUV, JPEG, GIF, PNG, TIFF, SGI-formater støttes også.

4. Konverter video til iPod/iPhone-format

ffmpeg -i source_video.avi input -acodec aac -ab 128kb -vcodec mpeg4 -b 1200kb -mbd 2 -flags +4mv+trell -aic 2 -cmp 2 -subcmp 2 -s 320x180 -title X final_video.mp4

Forklaringer:

  • Kilde: source_video.avi
  • Lydkodek: aac
  • Lydbithastighet: 128kb/s
  • Videokodek: mpeg4
  • Videobithastighet: 1200kb/s

5. Konverter videoer til PSP-format

ffmpeg -i source_video.avi -b 300 -s 320x240 -vcodec xvid -ab 32 -ar 24000 -acodec aac final_video.mp4

Forklaringer:

  • Kilde: source_video.avi
  • Lydkodek: aac
  • Lydbithastighet: 32kb/s
  • Videokodek: xvid
  • Videobithastighet: 1200kb/s
  • Videostørrelse: 320 x 180 piksler
  • Mottatt video: final_video.mp4

6. Trekk ut lydspor fra video og lagre til mp3

ffmpeg -i source_video.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 sound.mp3

Forklaringer:

  • Kilde: source_video.avi
  • Lydbithastighet: 192kb/s
  • Utdataformat: mp3
  • Mottatt lydfil: sound.mp3

7. Konverter wav til mp3

ffmpeg -i son_origin.wav -vn -ar 44100 -ac 2 -ab 192 -f mp3 son_final.mp3

8. Konverter .avi til .mpg

ffmpeg -i video_origin.avi video_finale.mpg 

9. Konverter .mpg til .avi

ffmpeg -i video_origin.mpg video_finale.avi 

10. Konverter .avi til .gif (ingen komprimering)

ffmpeg -i video_origin.avi gif_anime.gif

11. Legg til lyd til video

ffmpeg -i son.wav -i video_origin.avi video_finale.mpg

12. Konverter .avi til .flv

ffmpeg -i video_origin.avi -ab 56 -ar 44100 -b 200 -r 15 -s 320x240 -f flv video_finale.flv

13. Konverter .avi til .dv

ffmpeg -i video_origin.avi -s pal -r pal -aspect 4:3 -ar 48000 -ac 2 video_finale.dv

Ffmpeg -i video_origin.avi -target pal-dv video_finale.dv

14. Konverter .avi til mpeg for DVD-spillere

ffmpeg -i source_video.avi -target pal-dvd -ps 2000000000 -aspect 16:9 finale_video.mpeg

Forklaringer:

  • Utdataformat: pal-dvd
  • Maksimal størrelse for utdatafil: 2000000000 (2 Gb)
  • Bredskjermformat: 16:9

15. Komprimer .avi til DivX

ffmpeg -i video_origin.avi -s 320x240 -vcodec msmpeg4v2 video_finale.avi

16. Komprimer OGG Theora til mpeg DVD

ffmpeg -i film_sortie_cinelerra.ogm -s 720x576 -vcodec mpeg2video -acodec mp3 film_termin.mpg

17. Komprimer .avi til SVCD mpeg2

ffmpeg -i video_origin.avi -target ntsc-svcd video_finale.mpg

PAL-format:

Ffmpeg -i video_origin.avi -target pal-svcd video_finale.mpg

18. Komprimer .avi til VCD mpeg2

NTSC-format:

Ffmpeg -i video_origin.avi -target ntsc-vcd video_finale.mpg

PAL-format:

Ffmpeg -i video_origin.avi -target pal-vcd video_finale.mpg

19. Multipass-koding med ffmpeg

ffmpeg -i fichierentree -pass 2 -passlogfile ffmpeg2pass fichiersortie-2

20. Konverter .m4b til .mp3

ffmpeg -i filnavn.m4b -acodec libmp3lame -ar 22050 filnavn.mp3 eller finn -iname "*.m4b" -print0 | xargs -0 -I () ffmpeg -i () -acodec libmp3lame -ar 22050 ().mp3

Oppdater

Fjern tidligere installerte pakker:

Sudo apt-get remove ffmpeg x264 libx264-dev

Vi oppdaterer x264:

Cd ~ /src/x 264 gjør distclean git pull

Vi oppdaterer FFmpeg:

Cd ~ /src/ffmpeg gjør distclean svn-oppdatering

I begge tilfeller, gjenta installasjonsprosedyren FFmpeg Og x264, som beskrevet tidligere, bare fra stedet "./configure la-la-la..."

Kansellerer alle endringer som er gjort i henhold til denne instruksjonen

sudo apt-get remove x264 ffmpeg build-essential subversion git-core checkinstall yasm texi2html libfaac-dev libmp3lame-dev libsdl1.2 -dev libtheora-dev libvorbis-dev libvpx-dev libx11-dev-core-libxdev-libxdev libxdev-1 -rf ~/src/x264 ~/src/ffmpeg

Addisjon

hvis du trenger å installere x264 for å jobbe med 10-bits video. Så ja. Det er verdt å gjøre alt dette. Nå om libx264-biblioteket. ffmpeg i Ubuntu fungerer ikke med x264-kodeken, men direkte med libx264.so.123-kodingsbiblioteket, som ligger i katalogen med arkitekturavhengige biblioteker. For det første, for at en normal x264-konfigurasjon skal fungere sammen med ffmpeg (motta en videostrøm for koding fra ffmpeg), før du starter x264-konfigurasjonen, må du installere følgende pakker: libavformat-dev, libffms2-dev, libgpac-dev, libswscale -dev. Etter å ha installert disse pakkene ved å kjøre ./configure vil vi se følgende:

/scr/x264$ ./configure

plattform: X86_64
system: LINUX
cli: ja
libx264: intern internt libx264-kodingsbibliotek
delt: nei — systembiblioteket libx264.so.*** vil ikke bli bygget. den brukes nemlig av ffmpeg for videokoding og -behandling.
statisk: nei
asm: ja — sammenstilling optimalisert for prosessoren installert på datamaskinen
interlaced: ja — støtte for arbeid med interlaced video er inkludert
avs: nei — støtte for arbeid med avisync er deaktivert på Linux
lavf: ja - aktivert støtte for inndatafiler i alle formater som ffmpeg forstår
ffms: ja — aktiverer også ffmpeg-støtte, jeg vet ikke nøyaktig hva. Det ser ut til å støtte formater som ffmpeg kanskje ikke behandler riktig eller noe sånt.
gpac: ja
gpl: ja
tråd: posix

feilsøking: nei
gprof: nei
stripe: nei
PIC: nei
visualisere: nei
bitdybde: 8 koding til videofiler med kun 8-bits fargedybde
chroma format: alle

Og så ser vi at x264 vil bli bygget med støtte for alt mulig, men ffmpeg vil ikke fungere med det. Hva må nå gjøres for å sikre at ffmpeg fungerer direkte med kodeken vi har satt sammen. For å gjøre dette må du konfigurere x264 med følgende taster:

Prefiks=/usr — alle kompilerte filer vil være plassert i /usr-programkatalogen
- bindir=/usr/bin — vil plassere x264-kodeken i programmappen /usr/bin og ikke i mappen med lokalt kompilerte programmer /usr/local/bin installert som standard.
- libdir=/usr/lib/x86_64-linux-gnu — vil plassere kodingsbiblioteket libx264.so.*** i katalogen til arkitekturavhengige biblioteker (vær oppmerksom på at jeg har et 64-bitssystem, og følgelig brukes katalogen "x86_64-linux-gnu"; for andre arkitekturer, bør en annen katalog brukes)
- aktivere-delt — inkluderer opprettelsen av et dynamisk kodingsbibliotek libx264.so.*** som ffmpeg vil se etter når den er konfigurert med x264-kodekstøtte aktivert (så vidt jeg vet, må det aktiveres med konfigurasjonsnøkkelen, men hvem vet, jeg har har ikke prøvd å kompilere selve ffmpeg ennå, kanskje for ffmpeg-lenken med libx264.so.*** må du inkludere noen andre konfigurasjonsnøkler)
-aktiver-statisk - inkluderer opprettelse av statiske biblioteker libx264.so (merk at ffmpeg fungerer med et dynamisk bibliotek og ikke et statisk bibliotek. Et dynamisk bibliotek har også et versjonsnummer på slutten av filnavnet. Det er derfor etter å ha installert en ny versjon av x264-kodeken for å sikre at ffmpeg fungerer med den (ffmpeg ) hver gang du må bygge den på nytt.
— bitdybde=10 — kodekkonfigurasjonen er aktivert for å sette sammen bare 10-bits video (inkludert biblioteker. Både 8-biters og 10-biters video vil bli spilt, men bare 10-biters video vil bli opprettet av denne kodeken. Hvis dette alternativet ikke er nødvendig, så ikke installer den, og en kodek vil bli satt sammen som vil lage kun 8-bits video.

Dette er hva vi får når vi konfigurerer kodeken med disse nøklene:

/scr/x264$ ./configure --prefix=/usr --bindir=/usr/bin --libdir=/usr/lib/x86_64-linux-gnu --enable-shared --enable-static --bit- dybde=10
fatal: Ikke et git-lager (eller noen av overordnede kataloger): .git
plattform: X86_64
system: LINUX
cli: ja - arbeid på kommandolinjen
libx264: intern — opprettelse av interne biblioteker
delt: ja — opprettelse av dynamiske biblioteker
statisk: ja - opprettelse av statiske biblioteker
asm: ja - optimering for prosessoren (du må installere yasm før du bygger
interlaced: ja — arbeider med interlaced video
avs: nei - avisync på siden
lavf: ja - støtte for ffmpeg-formater
ffms: ja — støtte for andre formater
gpac: ja — optimering av arbeid med OpenSourse Multimedia
gpl: ja
tråd: posix
filtre: endre størrelse på beskjæring select_every
feilsøking: nei
gprof: nei
stripe: nei
PIC: ja
visualisere: nei
bitdybde: 10 — Lag kun 10-biters video (kodingsprofiler High10, High422 og High444
chroma format: alle

Mer detaljert informasjon om x264 kodek konfigurasjonsnøkler kan sees ved å skrive kommandoen ./configure -h i katalogen med x264 kildekoder

I utgangspunktet, her er innholdet:

/scr/x264$ ./configure -h
Bruk: ./configure
Hjelp:
- h, --hjelp med å skrive ut denne meldingen
Standard alternativer:
— prefix=PREFIX installer arkitekturuavhengige filer i PREFIX
— exec-prefix=EPREFIX installer arkitekturavhengige filer i EPREFIX
— bindir=DIR installer binærfiler i DIR
— libdir=DIR installer libs i DIR
— includeir=DIR-installasjon inkluderer i DIR
— extra-asflags=EASFLAGS legg til EASFLAGS til ASFLAGS
— extra-cflags=ECFLAGS legg til ECFLAGS til CFLAGS
— extra-ldflags=ELDFLAGS legg til ELDFLAGS til LDFLAGS
Konfigurasjonsalternativer:
- deaktiver-cli deaktiver cli
— system-libx264 bruk system libx264 i stedet for internt
- aktiver delt bygge delt bibliotek
- Aktiver-statisk bygge statisk bibliotek
- deaktiver-gpl deaktiver bare GPL-funksjoner
- deaktiver-tråd deaktiver flertrådskoding
- enable-win32thread bruk win32threads (kun Windows)
— deaktiver interlaced deaktiver interlaced koding støtte
- aktiver-visualiser aktiver visualisering (kun X11)
— bit-depth=BIT_DEPTH satt utgangsbitdybde (8-10)
— chroma-format=FORMAT utgang chroma-format (420, 422, 444, alle)
Avanserte alternativer:
- deaktiver-asm deaktiver plattformspesifikke monteringsoptimaliseringer
— enable-debug add -g
— enable-gprof add -pg
- enable-strip add -s
- Enable-pic build posisjonsuavhengig kode
Krysskompilering:
— host=HOST bygger programmer som skal kjøres på HOST
— cross-prefix=PREFIX bruk PREFIX for kompileringsverktøy
— sysroot=SYSROOT rot av kryssbygget tre
Ekstern bibliotekstøtte:
— deaktiver-avs deaktiver avisynth-støtte (kun Windows)
— deaktiver-swscale deaktiver swscale-støtte
- deaktiver-lavf deaktiver støtte for libavformat
- deaktiver-ffms deaktiver ffmpegsource-støtte
- deaktiver-gpac deaktiver gpac-støtte

Oversettelsen er ganske skjev, men du kan få en ide om alternativene.

FFMPEG (1) FFMPEG (1)

NAVN

FFmpeg - FFmpeg videokonverter

SYNTAKS

FFmpeg [[Input_file_options] [-i INFILE ]]... ([Output_file_options] OUTFILE) ...

BESKRIVELSE

Som regel brukes parametrene på en hvilken som helst spesifisert fil.

Så rekkefølgen er viktig, du kan bruke det samme alternativet i

Kommandolinje flere ganger. I hvert tilfelle gjelder for

Inn- eller utdatafil.

* For å sette videobithastigheten til utdatafilen til 64 Kbps:

FFmpeg -i input.avi -b 64K output.avi

* For å sette utdatafilens bildefrekvens til 24 fps:

FFmpeg -i input.avi -r 24 output.avi

* For å angi bildefrekvensen til inndatafilen (kun gyldig for råformater)

1 bilde per sekund, og bildefrekvensen til utdatafilen er 24 bilder per sekund:

Ffmpeg -r 1 -i input.m2v -r 24 output.avi

Formatalternativer kan være nødvendige for inndatafiler.

Som standard prøver FFmpeg å konvertere tapsfritt, som et mulig eksempel

Bruker de samme lyd- og videoutgangsparametrene som inngangen.

VALGFRI ALTERNATIVER

*Generelle alternativer*

Disse alternativene er tilgjengelige fra ffmpeg*-verktøyene.

L Vis lisenser.

H, -?,-hjelp, --hjelp.

Vis hjelp.

Versjon

Vis versjon.

Formater

Vis tilgjengelige formater.

Feltene i det forrige formatet har følgende betydninger:

D-dekoding tilgjengelig

E-koding tilgjengelig

kodeker

Vis tilgjengelige kodeker.

Feltene for kodeknavn har følgende betydninger:

D-dekoding tilgjengelig

E-koding tilgjengelig

V/A/S

Video/lyd/tekstingskodek

S-kodeken støtter skiver

D Codec støtter direkte gjengivelse

T-kodeken kan håndtere input-trunkeringer på tilfeldige steder i stedet for

Kun innenfor rammegrenser

Bsfs

Vis tilgjengelige filterbiter.

Protokoller

Vis tilgjengelige protokoller.

Filtre

Vis tilgjengelige libavfilter-filtre.

Pix_fmts

Vis tilgjengelige pikselformater.

LogLevel LogLevel

Angi loggingsnivået som brukes av LogLevel-biblioteket, et tall eller

En streng som inneholder en av følgende verdier:

Stille

Panikk

Fatal

Feil

Advarsel

Info

Utførlig

Feilsøk

Hovedalternativer:

F fmt

Gruppe av formater.

jeg fil

Skriv inn filnavn

U Skriv om utdatafilen.

T Varighet

Begrens transkoding/opptak av videosekvenser med varighet,

Som er angitt i sekunder. "Hh:mm:[.XXX]SS"-syntaks støttes også.

Fs limit_size

Angir filstørrelsesgrensen.

Ss posisjon

Sikt på en gitt øyeblikksposisjon i sekunder. "Hh:mm:[.XXX]SS"-syntaks

Støttes også.

Dens forskyvning

Still inn tidsforskyvningen i sekunder. "[-] tt: mm: ss ". Syntaks

Støttes også. Denne innstillingen påvirker alle inndatafiler som

De som fulgte ham. Etiketter fra inngangen legges til offset

Filer. Å spesifisere en positiv offset betyr at den tilsvarende

Strømmer med en forsinkelse på "kompensasjon" sekunder.

Tidsstempel tid

Sett en etikett.

Metadata Metadataverdi<ключ ="значение">

Setter metadata i et nøkkel/verdi-par.

For eksempel, for å sette tittelen til utdatafilen:

FFmpeg -i in.avi -metadate Tittel = "min tittel" out.flv !}

V-nummer

Still inn registreringsdetaljnivået.

Mål Måltype

Spesifiser målfiltypen ("VCD", "SVCD", "DVD", "DV", "DV50",

"PAL-VCD", "NTSC-SVCD", ...). Alle formatalternativer (bitrate,

Kodeker, bufferstørrelse) settes automatisk. Du kan bare

Spesifiser type:

FFmpeg -i myfile.avi -mål VCD /tmp/vcd.mpg

Du kan imidlertid spesifisere flere parametere som du vet

De er ikke i konflikt med standardene, som i:

FFmpeg -i myfile.avi -mål VCD -bf 2 /TMP/vcd.mpg

Dframes nummer

Angir antall rammer med data som skal registreres.

Codec codec

Codec undertekstgruppe ("kopi" for å kopiere strømmen).

Ny undertittel

Slangkode

Stiller inn ISO 639-språkkoden (3 bokstaver) fra gjeldende linje

Strømme.

Videoalternativer

B bithastighet

Stiller inn videobithastigheten i bps (standard = 200 Kbps).

Vframes nummer

Angir antall videobilder som skal spilles inn.

R fps

Stiller inn bildefrekvensen (Hz-verdier, slag eller forkortelse), (standard =

25).

S størrelse

Stiller inn rammestørrelsen. BxH format (ffserver standard = 160x128, TVM-

Standardinnbindinger = samme som original). Følgende forkortelser

Kjente igjen:

SQCIF

128 x 96

QCIF

176 x 144

352 x 288

4CIF

704 x 576

16cif

1408 x 1152

QQVGA

160 x 120

QVGA

320 x 240

640 x 480

SVGA

800 x 600

1024 x 768

UXGA

1600 x 1200

QXGA

2048 x 1536

SXGA

1280 x 1024

Qsxga

2560 x 2048

Hsxga

5120 x 4096

W.V.G.A.

8520 x 480

WXGA

1366 x 768

WSXGA

1600 x 1024

WUXGA

1920 x 1200

Woxga

2560 x 1600

Wqsxga

3200 x 2048

Wquxga

3840 x 2400

Whsxga

6400 x 4096

whuxga

7680 x 4800

320 x 200

640 x 350

HD480

852 x 480

HD720

1280 x 720

HD1080

1920 x 1080

Aspekt

Stiller inn sideforholdet (4:3, 16:9 eller 1,3333, 1,7777).

Croptop-størrelse

Angi størrelsen på den øverste beskjæringsgruppen (i piksler).

Cropbottom størrelse

Angir størrelsen på den nederste beskjæringsgruppen (i piksler).

Cropleft størrelse

Trim venstre stripe (i piksler).

Korrekt størrelse

Still inn riktig beskjæringsgruppestørrelse (i piksler).

Padtop størrelse

Sett den øverste puten til gruppestørrelsen (i piksler).

Padbottom størrelse

Angi bunnstørrelsen på panelgruppen (i piksler).

Padleft størrelse

Venstre putestørrelse (i piksler).

Padright størrelse

Still inn riktig putegruppestørrelse (i piksler).

Padcolor hex_color

Sett fargen på den lagte stripen. Padfargeforholdet uttrykkes som

Et sekssifret heksadesimalt tall der de to første sifrene representerer

Rødt, de to midterste sifrene grønne og de to siste sifrene blå (standard

000 000 (svart)).

Deaktiver videoopptak.

Bt toleranse

Still inn videobithastigheten (i biter, standard 4000K). Med minimal og

Maksimal verdi: (target_bitrate / target_framerate). I 1-pass modus,

Bitratetoleranse avgjør hvor langt<битпоток>klar til å dele

Med bitrate gjennomsnittsverdien av målet. Dette er ikke relatert til

Min/maks bitrate. Redusert toleranse har for negativ innvirkning

For kvalitet.

Maksrate bitrate

Still inn maksimal videobithastighet (i bit/s). Det kreves det

Bufsize skal angis.

Minrate bitrate

Still inn minimum videobithastighet (i bit/s). Det mest nyttige for å lage koding:

FFmpeg -i myfile.avi -b 4000K -minrate 4000k -maxrate 4000K -bufsize 1835k out.m2v

Det nytter lite ellers.

Buffsize størrelse

Stiller inn videobufferen og verifiserer bufferstørrelsen (i biter).

Vcodec-kodek

Ring videokodek for kodek. Bruk "kopi" for å sette en bestemt verdi med

RAW Codec-data må kopieres som de er.

Sameq

Bruk av videokvalitet som kilde (impliserer VBR).

Pass n

Velg send nummer (1 eller 2). Den brukes til å overføre video

Kodinger. Videostatistikk registreres i den første

Gå til loggfilen (se også -passlogfile-alternativet), og inn

Andre pass er at loggfilen brukes til å lage videoen,

Den nøyaktige bithastigheten som er forespurt. På pass 1 kan du ganske enkelt dempe lyden

Og sett utdata til null, eksempler for Windows og Unix:

FFmpeg -i foo.mov -vcodec libxvid -pass -an -f rawvideo -y NULL

FFmpeg -i foo.mov -vcodec libxvid -pass -an -f rawvideo -y /dev/null

Passlogfil-prefiks

Sett to-pass loggfilnavn til standard filnavnprefiks

Prefiks ``ffmpeg2pass"". Det fulle filnavnet vil være PRE-

FIX-N.log, hvor N er det spesifikke tallet i utdatastrømmen.

Ny video

Legg til en ny videostrøm til gjeldende utdatastrøm.

Vlang-kode

Still inn ISO 639-språkkoden (3 bokstaver) for gjeldende video

Strømme.

Avanserte videofunksjoner

Pix_fmt-format

Angi pikselformat. "liste" brukes som en parameter å vise

Alle støttede pikselformater.

Sws_flags flagg

Sett SwScaler-flagg.

G gop_size

Angi størrelse på gruppebilde.

Intra

Bruk kun innenfor rammen.

Vdtn

Avbryt terskel.

Qscale q

Bruker fast videoskala (VBR).

Qmin q

Minimum videoskala (VBR)

Qmax q

Maksimal videoskala (VBR)

Qdiff q

Maksimal forskjell mellom vektkvantisering (VBR)

Qblur uskarphet

Videokvantiseringsskala-uskarphet (VBR) (område 0,0 - 1,0)

Qcomp-komprimering

Videokomprimeringsskala (VBR) (standard 0,5). Konstant

Lmin lambda

Minimum video Lagrange koeffisient (VBR)

Lmax lambda

Maksimal video Lagrange multiplikator (VBR)

Mblmin lambda

Minimumskala makroblokkkvantisering (VBR)

Mblmax lambda

Makroblokkkvantiserer med maksimal skala (VBR)

Disse fire alternativene (Lmin, Lmax, mblmin, mblmax) for bruk av "lambda"-enheter,

Men du kan bruke konstantverdien QP2LAMBDA for enkelt å konvertere fra "Q"

Enheter:

Ffmpeg -i src.ext-Lmax 21 * QP2LAMBDA dst.ext

Rc_init_cplx kompleksitet

Innledende vanskeligheter med å bestå en koding

B_qfaktor-faktor

Qp-faktor mellom P- og B-ramme

I_qfaktor-faktor

Qp-faktor mellom P- og I-rammer

B_qoffset offset

Qp offset mellom P- og B-ramme

I_qoffset offset

Qp offset mellom P- og I-rammer

Rc_eq-ligninger

Sett kurskontrollligning (standard = "text^qComp").

Rc_override overstyring

Kontroller overstyringshastigheten i bestemte tidsperioder

Me_method metode

Sett metoden for bevegelsesestimat til metoden. Tilgjengelige metoder

(laveste til beste kvalitet):

Null

Prøv en enkel (0, 0) vektor.

Phods

Epzs

(Standardmetode)

Full

Uttømmende søk (sakte og marginalt bedre enn epzs)

Dct_algo-algoritme

Installer DCT-algoritmen. Mulige verdier:

0 FF_DCT_AUTO (standard)

1 FF_DCT_FASTINT

2 FF_DCT_INT

3 FF_DCT_MMX

4 FF_DCT_MLIB

5 FF_DCT_ALTIVEC

Idct_algo-algoritme

Installer IDCT-algoritmen. Mulige verdier:

0 FF_IDCT_AUTO (standard)

1 FF_IDCT_INT

2 FF_IDCT_SIMPLE

3 FF_IDCT_SIMPLEMMX

4 FF_IDCT_LIBMPEG2MMX

5 FF_IDCT_PS2

6 FF_IDCT_MLIB

7 FF_IDCT_ARM

8 FF_IDCT_ALTIVEC

9 FF_IDCT_SH4

10 FF_IDCT_SIMPLEARM

Ern

Angi feiltoleranse n:

1 FF_ER_CAREFUL (standard)

2 FF_ER_COMPLIANT

3 FF_ER_AGGRESSIVE

4 FF_ER_VERY_AGGRESSIVE

Ec bit_mask

Sett feilmaskering til bit_mask. bit_mask masker har

Følgende verdier:

1 FF_EC_GUESS_MVS (standard = aktivert)

2 FF_EC_DEBLOCK (standard = aktivert)

Bf rammer

Bruk "ramme" B-rammer (MPEG-1, MPEG-2 og MPEG-4 støttes).

Mbd-modus

Makroblokkløsninger

0 FF_MB_DECISION_SIMPLE: Bruk mb_cmp (kan ikke endre det ennå i mmpeg).

1 FF_MB_DECISION_BITS: Velg den som krever mindre

Bit.

2 FF_MB_DECISION_RD: signal-til-støy-forhold

Bruk fire bevegelsesvektorer per makroblokk (kun MPEG-4).

Del

Bruke datapartisjonering (kun MPEG-4).

Feilparameter

Omgå koderfeil som ikke oppdages automatisk.

Strenge alvorlighetsgrad

Hvordan følge standarder strengt.

Aktiver utvidet intern koding (h263+).

Aktiver ubegrensede bevegelsesvektorer (h263+)

Deinterlace

Deinterlace bilder.

Ilme

Støttegruppe i kodersammenfletting (kun MPEG-2 og MPEG-4). Bruk

Dette alternativet hvis inndatafilen er interlaced eller du vil lagre

Interlaced format med minimalt tap. Et alternativ er

Deinterlacing inngangsstrømmen med -deinterlace, men deinterlacing

Introduserer tap.

Vstats

Videokodingsdump av statistikk vstats_HHMMSS.log.

Vstats_file-fil

Dump kodingsvideostatistikk til en fil.

Topp N

Øverst = 1/bunn = 0/auto =- 1 felt først

DC nøyaktighet

intra_dc_precision.

Vtag FourCC / tags

Ring videotagger/FourCC.

Qphist

Vis QP-histogrammer.

Vbsf bitstream_filter

Bitstream_filter er:

Dump_ekstra

Remove_extra

Bråk

H264_mp4toannexb

Imxdump

Mjpegadump

*Lydfunksjoner*

Aframes frames

Still inn antall lydopptaksrammer.

Ar-frekvens

Still inn lydsamplingsfrekvensen (standard = 44100 Hz).

Ab bitrate

Still inn lydbithastighet i bps (standard = 64K).

Aq Q

Still inn lydkvaliteten (kodekspesifikk, VBR).

Ac-kanaler

Still inn antall lydkanaler (standard = 1).

En Deaktiver lydopptak.

Acodec-kodek

Lydkodekgruppe for kodek. Bruk "kopier" spesiell betydning for å indikere

At RAW Codec-data må kopieres som de er.

Ny lyd

Legg til et nytt lydspor til utdatafilen. Hvis du vil spørre

Parametrene for å gjøre dette bør være noe sånt som dette: "-newaudio" ("-acodec", "-ab", etc..).

Kartleggingen vil bli gjort automatisk hvis antall utdatastrømmer

Lik antall inndatastrømmer, ellers vil den velges frem til første kamp.

Du kan endre kartleggingen med "-map"

Som vanlig.

Eksempel:

FFmpeg -i file.mpg -vcodec copy -acodec AC3 -ab 384k test.mpg -acodec MP2

Ab 192K -ny lyd

Alang kode

Still inn ISO 639-språkkoden (3 bokstaver) for gjeldende lyd

Strømme.

Avanserte lydalternativer:

Atag FourCC / tags

Group tag audio / FourCC.

Absf bitstream_filter

Bitstream_filter er:

Dump_ekstra

Remove_extra

Bråk

Mp3komp

Tilførte funksjoner:

Scodec

Tekstkodekgruppe ("kopi" for å kopiere strømmen).

Ny undertittel

Legg til en ny undertekststrøm til gjeldende utdatastrøm.

Alang kode

Still inn ISO 639 språkkode (3 bokstaver) fra gjeldende linje

Strømme.

Sn Deaktiverer undertekstopptak.

Sbsf bitstream_filter

Bitstream_filer er:

Mov2textsub

Text2movsub

Ffmpeg -i file.mov -an -vn -sbsf mov2textsub -scodec copy -f rawvideo sub.txt_

*Alternativer for lyd/videoopptak*

Vc kanal

Still inn videoopptakskanal (kun DV1394).

TV-standard

Still inn TV-standarden (NTSC, PAL (SECAM)).

Isync

* Ekstra alternativer:*

Map input_stream_id[:sync_stream_id]

Angi strømkartleggingsinndatastrømmer til utdatastrømmer. Bare enu

Merate inngangsstrømmene er ok, du vil ha dem på utgangen.

Sync_stream_id hvis den angitte inngangsstrømmen er satt til å synkronisere mot.

Map_meta_data UTFIL: INFIL

Overføre metadatainformasjon fra INFILE til OUTFILE.

Feilsøk

Skriv ut spesifikk feilsøkingsinformasjon.

Benchmark

Vis sammenligningsinformasjon på slutten av kodingen. Viser CPU

Tid brukt og maksimalt minneforbruk. Maksimalt minneforbruk,

(støttes ikke på alle systemer). Hvis det ikke støttes, returneres det som 0.

Dump

Dump hver inndatapakke.

Brukes når pakkefall og nyttelastdumper er nødvendig.

Bitexact

Bare litt presise algoritmer brukes til å teste kodeken.

PS størrelse

Angi RTP-nyttelaststørrelse i byte.

Enheter.

Loop_input

Sløyfe for inngangsstrømmen. Foreløpig fungerer det bare for tråder

Bilder. Dette alternativet brukes til å teste ffserver automatisk.

Loop_output number_of_times

Gjentatte utgangsløkker for formater som støtter løkker som f.eks

Aminering av GIF (0 vil gå ut på ubestemt tid).

Tråder teller

Tråder

VSync-parameter

Videosynkroniseringsmetode:

0 Hver ramme og dens etikett overføres fra demultiplekseren til multiplekseren

1 Frames vil bli duplisert og forkastet for å oppnå en konstant bildefrekvens.

2 rammer passerer gjennom merkene eller kastes for å hindre 2x passering

Rammer gjennom ett merke.

1 Velger mellom 1 og 2 avhengig av multiplekserfunksjonene

Du kan velge hvilken strøm etikettene er fra, og det skal de være

Akseptert. Du kan la enten video eller lyd være uendret og synkronisert

De resterende trådene forblir uendret.

Asynkrone samples_per_second

Lydsynkroniseringsmetode. "Utvider/komprimerer" lydstrømmen i en tag-økt,

Verdien av det maksimale antallet samplinger per sekund der lyden endret seg.

Async 1 er et spesielt tilfelle der bare den første lydstrømmen endres uten

Eventuelle senere endringer

Copyts

Kopier etiketter fra input til output.

Korteste

Fullfør kodingen når den korteste inndatastrømmen slutter.

Dts_delta_threshold

Tidsstempel for deltaterskelbrudd.

Muxdelay sekunder

Still inn maksimal demultipleks-dekodingsforsinkelse.

Muxpreload sekunder

Still inn den første demultipleks-dekodingsforsinkelsen.

Gjeldende filer

Den gitte filen inneholder en sekvens av parameter = verdipar, ett for hver

Linjer som indikerer rekkefølgen av alternativer som ville passe vanskelig

På kommandolinjen. Linjer som begynner med et hash-tegn ('#')

Ignorert og brukt til kommentarer. Sjekk ut ffpresets

Katalog i FFmpeg-treet med eksempler.

Gjeldende filer er oppført med "vpre", "apre", "spre" og "fpre"

Alternativer. Alternativet "Fpre" har filnavnet fra forhåndsinnstillingene i stedet

Malnavn som input og kan brukes for alle typer kodeker. Til

"Vpre", "apre" og "spre" alternativer, parametere spesifisert i gitte

Filen brukes på den valgte kodeken av samme type,

Gitt alternativ.

Argument sendt til "vpre", "apre" og "spre" forhåndsinnstilte parametere

Spesifiserer den gitte filen for bruk i henhold til følgende regler:

Først FFmpeg-søk etter en fil kalt arg.ffpreset i kataloger

$HOME/.ffmpeg og DATADIR er definert under konfigurasjonen (vanligvis

Ally PREFIX/share/ffmpeg) i den rekkefølgen. For eksempel hvis argumentet

er "libx264-max", vil den se etter filen libx264-max.ffpreset.

Hvis en slik fil blir funnet, vil FFmpeg se etter en fil med navnet

Codec_name-arg.ffpreset i katalogene ovenfor hvor

Codec_name er navnet på kodeken som filen har forhåndsinnstilte parametere for

Vil gjelde. For eksempel hvis du velger en videokodek

"-Vcodec libx264" og bruk "vpre-max" så vil den søke etter filen

Libx264-max.ffpreset.

@Anchor (FFmpeg formel estimator)

FFmpeg formelestimator

Ved evaluering av hastighetskontrollstrengen bruker FFmpeg interne formler

I takt.

Følgende binære operatorer er tilgjengelige: "+", "-", "*", "/", "^".

Følgende unære operatorer er tilgjengelige: "+", "-", "(...)".

Følgende instruksjoner er tilgjengelige: "LD", "ST", "a".

Følgende funksjoner er tilgjengelige:

Sinh(x)

Cosh(x)

Tanh(x)

Sin(x)

COS (X)

Tan(x)

Atan(x)

Asin(x)

Acos(x)

Exp(x)

Logg(x)

ABC (X)

Squish(x)

Gauss(x)

Mod(x, y)

Maks (x, y)

Min (x, y)

Ekv(x, y)

Gte (x, y)

Gt (x, y)

Lte (x, y)

Lt (x, y)

Bits2qp (bits)

Qp2bits (QP)

Følgende konstanter er tilgjengelige:

ITex

PTex

F-kode

Jeg teller

McVar

Gj.sn. QP

QComp

AvgIITex

AvgPITex

Gj.sn.PPTex

AvgBPTex

Gj.sn.Tex

EKSEMPLER

Video- og lydopptak

FFmpeg kan ta opp video og lyd fra enheter forutsatt at du spesifiserer

Inndataformat og enhet.

Ffmpeg -f OSS -i /dev/DSP -f video4linux2 -i /dev/video0 /tmp/out.mpg

Vær oppmerksom på at du må aktivere videokilde- og kanaltillatelser før

Kjør ffmpeg fra en hvilken som helst TV-seer som XawTV (

Sex.org / XawTV />) Gerd Knorr. Du må også installere lydopptak

ING nivåer riktig fra en standard mikser.

X11-opptak

Ffmpeg -f x11grab -x CIF -i: 0.0 /tmp/out.mpg

Miljøvariabel.

Ffmpeg -f x11grab -x CIF -i: 0,0 +10,20 /tmp/out.mpg

0,0 representerer display.screen-nummeret til din X11-server, samme som DISPLAY

Miljøvariabel. 10, X-offset og 20 Y-offset for

Fangst.

Konvertering av video- og lydfilformat

*FFmpeg kan brukes i alle de støttede filformatene og protokollene som input:

Eksempler:

*Du kan bruke YUV-filer som input:

Ffmpeg -i /tmp/test%d.Y /tmp/out.mpg

Den vil bruke filene:

/Tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,

/Tmp/test1.Y, /tmp/test1.U, /tmp/test1.V osv. ..

Filer bruker dobbelt så høy oppløsning som U- og V-filer. De er råvarer

Filer, ingen overskrift. De kan kalles av alle anstendige videoer

Dekodere. Du må spesifisere bildestørrelsen med S-alternativet if

FFmpeg kan ikke gjette.

*Du kan skrive inn fra råfil YUV420P:

Ffmpeg -i /tmp/test.yuv /tmp/out.avi

Test.yuv er en fil som inneholder rå flat YUV-data. Hver COM-ramme

Plassert i Y-planet følger U- og V-planene halvveis vertikalt

Og horisontal oppløsning.

*Du kan sende ut YUV420P-fil til råmateriale:

Ffmpeg -i mydivx.avi hugefile.yuv

* Du kan angi flere inn- og utdatafiler:

FFmpeg -i /tmp/a.wav -x 640x480 -i /tmp/a.yuv /tmp/a.mpg

Konverterer lyd a.wav-fil og rå video YUV-fil a.yuv til MPEG

Fil a.mpg.

*Du kan også gjøre lyd- og videokonvertering samtidig:

Ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2

Konverterer a.wav til MPEG-lyd med en samplingsfrekvens på 22050 Hz.

*Du kan kode flere formater samtidig og definere et kart-

Ping fra inngangsstrøm til utgangsstrøm:

Ffmpeg -i /tmp/a.wav -ab 64k /tmp/a.mp2 -ab 128 /tmp/b.mp2 -map 0:0, 0:0 -map

Konverterer a.wav til a.mp2 ved 64 kbps og b.mp2 til 128 kbps. '-kart

File:index "indikerer hvilken inngangsstrøm som brukes for hver utgang

Stream, med det formål å definere utdatastrømmer.

* Du kan kode dekrypterte VOB-filer på nytt:

Ffmpeg -i snatch_1.vob -f AVI -vcodec MPEG4 -b 800k -g 300 -bf 2 -acodec libmp3lame -ab 128k snatch.avi

Dette er et typisk eksempel på DVD-ripping; VOB-filinndata,

Send ut AVI-fil med MPEG-4-video og MP3-lyd. Merk at i denne

Kommandoen brukes i B-rammer slik at MPEG-4-strømmen er DivX5-kompatibel, og

GOP-størrelsen er 300, som betyr en innerramme hvert 10. sekund

29,97 fps videoinngang. I tillegg den MP3-kodede lydstrømmen

Du må aktivere LAME-støtte ved å sende "- enable -libmp3lame" til

Melodi. Displayet er spesielt nyttig for DVD-omkoding

Få ønsket lydspråk.

MERK: For å se støttede inndataformater, bruk "ffmpeg-formater".

* Du kan trekke ut bilder fra videoer, eller lage videoer fra mange

Bilder:

Slik trekker du ut bilder fra videoer:

Ffmpeg -i foo.avi -r 1 -s BxH -f -image2 Foo% 03d.jpeg

Dette vil trekke ut ett bilde per sekund fra videoen og vil

Send dem ut i filer som heter Foo-001.jpeg, Foo-002.jpeg, etc. Bilder vil være

Beregnes på nytt for å passe til nye BxH-verdier.

Hvis du bare vil trekke ut et begrenset antall rammer, kan du bruke

Ovenfor kommandoer i kombinasjon med -vframes eller -t alternativ, eller hva som helst-

Binations -ss begynner å hente fra et bestemt tidspunkt.

Slik lager du en video fra mange bilder:

Ffmpeg -f image2 -i -foo -%03d.jpeg -r 12 BxH foo.avi

Syntaksen "foo-03d.jpeg%" indikerer bruken av et desimaltall som består av

Av de tre sifrene er nuller polstret for å uttrykke serienummeret. Dette

Dette er den samme syntaksen som støttes av E C-funksjonen, men bare formatene

Godta normal hel passform.

* Du kan sette mange strømmer av samme type på utgangen:

Ffmpeg -i test1.avi -i test2.avi -vcodec kopi -acodec kopi -vcodec kopi

Acodec copy test12.avi -newvideo -newaudio

I tillegg til de første video- og lydstrømmene, som et resultat av utgivelsen

Test12.avi-filen vil inneholde en andre video og en annen lyd

Finn strømmen i listen over inndatastrømmer.

Alternativene "Newvideo", "-newaudio" og "-newsubtitle" bør være

Spesifisert umiddelbart etter navnet på utdatafilen der du

Ønsker å legge dem til.

OGSÅ

Ffserver (1), ffplay (1) og HTML-dokumentasjon fra FFmpeg.