FFMPEG attēlu uz video pamācība

Ffmpeg Images Video Tutorial



Tātad jūs interesē video izveidošana, pamatojoties uz attēliem? Arī Linux programmatūra var jums palīdzēt šajā uzdevumā, it īpaši viena: ffmpeg.

Ja jūs to vēl nezināt, ffmpeg ir programmatūra, kas veic video un audio konvertēšanu un rediģēšanu, izmantojot filtrus. Tas ir tas, kas atbalsta lielāko skaitu dažādu kodeku. Ja jūs jau izmantojāt VLC, tad jūs zināt mazliet ffmpeg: VLC izmanto ffmpeg, lai atšifrētu pēc iespējas vairāk videoklipu.







Bet pirms videoklipu veidošanas man jums jāpasaka daži jēdzieni, lai jūs nepazustu.



Nav patiešām grūti integrēt attēlus videoklipā. Un tam ir iemesls: videoklipu pamatā ir attēlu sērija. Ļauj man paskaidrot.



Videoklips (pat YouTube videoklips) ir nekustīgu attēlu komplekts, kas ātri mainās. Kinoteātros un kinoteātros starp katru attēlu ir melns attēls, jo mehānismam ir jāmaina kadrs un tas bija pārāk lēns. Bet cilvēka acīs tas nav pamanāms, jo mehānisms ir pietiekami ātrs un optiskās ilūzijas dēļ.





Bet datoriem šīs problēmas nav. LCD ekrāni turpina rādīt pēdējo attēlu. Jebkurā gadījumā jūs faktiski varat iegūt neatkarīgu attēlu no katra videoklipa attēla. Ja attēls nāk no videoklipa, to sauc par rāmis . Tieši to redzat, apturot videoklipa darbību - un, ja jūs to darāt, sejas parasti neizskatās labi!

Parasti videoklipi no Amerikas Savienotajām Valstīm satur 30 kadri sekundē - mazliet apzinies. Tas ir 1800 kadri minūtē, 54 000 kadri video pusstundā vai 108 000 kadru stundā . Tas ir daudz, un tāpēc jūs dažreiz brīnāties, kā viens attēls var nosvērt 1 MiB, bet viena minūte 1080p video var nosvērt tikai 15 MiB.



Attēlu skaitu sekundē sauc par kadru ātrums . Ar ātrumu 30 kadri sekundē jūs maināt attēlu katru reizi 33 milisekundes . Tātad, ja vēlaties izveidot vienu minūti video, pamatojoties tikai uz jūsu attēliem, jums ir jābūt 1800 JPG vai PNG failiem minūtē.

Tas ir noderīgi, ja vēlaties veikt papildu video rediģēšanu, neizmantojot video rīkus: jums vienkārši jāizveido attēli katram kadram ar saviem efektiem un pēc tam varat to apvienot videoklipā. Bet dažreiz jūs vēlaties, lai nekustīgs attēls ilgst, jo, labi, jūs vēlaties nekustīgu attēlu videoklipā.

Labi, tagad ir laiks instalēt ffmpeg.

Instalējiet ffmpeg operētājsistēmā Linux

Atkarībā no izplatīšanas ffmpeg instalēšana var būt vienkārša vai neliela viltīgs . Tā ir bezmaksas programmatūra ar publiski pieejamu avota kodu, taču, tā kā tā var atšifrēt vai kodēt patentētus formātus, piemēram, MP4, daži izplatījumi to izslēdz no saviem krātuvēm. Piemēram, Red Hat Enterprise Linux, CentOS un Fedora, jums ir nepieciešama RPMFusion patentu dēļ. Turklāt visas Debian versijas un Ubuntu pirms 16.04 izplata nepatiesu ffmpeg versiju, kuras pamatā ir nelikumīga dakša.

Bet, pirms steidzaties ar tās instalēšanu, varbūt pareizā versija jau ir instalēta? Pārbaudīsim:

$ffmpeg -versija
ffmpegversija X.XXXXXXXX Autortiesības(c) 2000-2018. gadsFFmpeg izstrādātājiem

Ja pēc autortiesībām redzat FFmpeg izstrādātājus, jums ir FFMpeg sākotnējā versija, jums nekas nav jādara. Tomēr, ja redzat:

$ffmpeg -versija
ffmpegversija X.XXXXXXXX Autortiesības(c) 2000-2018. gadsLibav izstrādātājiem

Tad tas nozīmē, ka izmantojat a dakša no ffmpeg sauc Libav. Debian un vecākas Ubuntu versijas klusējot aizstāt FFMpeg ar Libav. Ja tas norāda, ka tas ir novecojis, lūdzu, ignorējiet to, tas ir maldinoši. Ja jums ir uzstādīta dakša, ir pienācis laiks noņemt nepatiesas ffmpeg versiju un pēc tam izpildiet tālāk sniegtos norādījumus, lai instalētu pareizo versiju. Droši vien šādi:

$sudo apt-get noņemt ffmpeg

Tāpēc tagad jūs, iespējams, vēl neesat to instalējis vai jums ir nepareiza versija, ir laiks to instalēt!

Fedora, Red Hat Enterprise Linux (RHEL) un CentOS, dodieties uz https://rpmfusion.org/Configuration un iespējojiet savā datorā bezmaksas RPMFusion krātuvi. Pēc tam, ja atrodaties Fedorā, rīkojieties šādi:

$sudodnfuzstādīt ffmpeg

CentOS un Red Hat Enterprise Linux:

$sudo yum instalēt ffmpeg

Tas viss ir uz Fedora un Red Hat balstītām sistēmām, tas ir instalēts.

Visās Debian (un visu atvasinājumu) un Ubuntu versijās pirms 16.04 jums ir jāiegūst FFMpeg statiskā būve no oficiālās vietnes. Iet uz https://ffmpeg.org/download.html#build-linux un zemāk Linux statiskā būve , klikšķiniet uz 32 bitu un 64 bitu kodolam 2.6.32 un jaunākām versijām . Tad, zemāk izlaidums: X.X.X , lejupielādējiet atbilstošo arhīvu, izvelciet to un varat palaist izpildāmos failus, kas atrodas izvilktā mapē, izmantojot CLI.

Tiem, kas izmanto Ubuntu 16.04 un jaunākas versijas, ir vieglāk, vienkārši rīkojieties šādi:

$sudo apt-get instalēt ffmpeg

Fau! Beidzot mums vajadzētu labi iet! Pirms turpināt, pēdējo reizi pārbaudiet, izmantojot:

$ffmpeg -versija

ffmpeg versija X.XXXXXXXX Autortiesības (c) 2000-2018 FFmpeg izstrādātāji

Izveidojiet videoklipus no daudziem attēliem

Tātad, mūsu pirmajam piemēram, mēs izveidosim video no attēliem, kur katrs attēls attēlo rāmi, kas tiks parādīts 33 milisekundēs. Ļaujiet man vispirms parādīt komandu.

** MP4 un H.264 ir patentēti kodeki, lūdzu, pārbaudiet, vai jums ir tiesības ar to kodēt. **

$ffmpeg-r: v30 -i 'Pingvīni - %05d.png'-kods: v libx264-iepriekš iestatītsļoti lēni
-pix_fmt yuv420p-krf 28 -an 'Pingvīni.mp4'

Labi, kā tas darbojas? Lai šī komanda darbotos, jums ir jābūt daudziem kadriem, kur katrs rāmis ir fails, piemēram, Penguins - 00043.png. Šī komanda pēc tam apvienos visus kadrus secībā ar ātrumu 30 FPS. Tātad, Penguins - 00043.png ir pirms Penguins - 00044.png videoklipā, un ffmpeg to ievēros. Tātad, ja jums ir 120 kadri, jūsu video ilgums būs 4 sekundes.

Rāmju darbībai ir dažas prasības attiecībā uz formātu, platumu un augstumu. Ja neievērojat šos noteikumus, ffmpeg var ignorēt dažus attēlus vai atcelt video izveides procesu. Tātad:

  • Visiem viena videoklipa kadriem ir jābūt kopīgotiem:
    • Platums augstums
    • Krāsu dziļums
  • Rāmjiem jābūt standarta video izmērā, piemēram:
    • 640 ✕ 360 (360p)
    • 853 ✕ 480 (480p)
    • 1280–720 (720p)
    • 1920–1080 (1080p)
    • 4096 ✕ 2306 (4K)
  • Dodiet priekšroku PNG, nevis JPG kadriem
  • Izvairieties no pārredzamības vai alfa formāta PNG formātā

Pēc tam komanda prasīs zināmu laiku, lai pārvērstu video, optimizētu tā veiktspēju un padarītu jūs par MP4 failu ar nosaukumu Penguins.mp4.

Tagad, iespējams, vēlēsities, lai nekustīgs attēls paliktu ilgāks par 33 milisekundēm. Šajā gadījumā jūsu videoklips ir vairāk slaidrāde, un tā nav viena un tā pati lieta. Lai to izdarītu, vispirms ievadīšanai varat piešķirt lēnāku kadru nomaiņas ātrumu un pēc tam norādīt ffmpeg, lai izvadē dublētu kadrus. Nē, YouTube un Vimeo īsti nenovērtēs 0,5 FPS videoklipu, pat ja maināt attēlu ik pēc 2 sekundēm.

Drīzāk darīsim tā:

$ffmpeg-r: v1/5 -i 'Pingvīni - %05d.png'-r: v30-kods: v libx264-iepriekš iestatītsļoti lēni
-pix_fmt yuv420p-krf 28 -an 'Pingvīni.mp4'

Tur mēs ejam! ffmpeg padarīs jūsu attēlus redzamus 5 sekundes, bet 30 FPS video. Neuztraucieties par dublēto kadru brīdinājumu: tas ir tas, ko vēlaties.

Secinājums

Tagad tu esi - jaunais Spīlbergs - spēja izveidot savus videoklipus. Jūs varat veikt vienkāršu slaidrādi vai sagatavot video kadru pa kadram, izmantojot attēlu redaktoru, piemēram, GIMP, taču varat gūt labumu arī no plašā efektu un kodeku komplekta, ko varat atrast vietnē ffmpeg.

Veltiet laiku eksperimentiem pats - galu galā tu esi mākslinieks - un izveidojiet videoklipu, kas YouTube skatīs miljoniem skatījumu!