Izinkulumo zevidiyo: indlela unix

Izinkulumo zevidiyo: indlela unix
Ukuvalelwa isikhathi esihle sokufunda okuthile. Nokho, njengoba uqonda, ukuze umuntu afunde okuthile, kumelwe othile afundise. Uma unesethulo ofuna ukusinikeza izethameli zezigidi futhi uthole udumo emhlabeni wonke, khona-ke lesi sihloko ngeyakho. Lapha uzothola imiyalelo yesinyathelo ngesinyathelo sendlela yokwenza ividiyo esethulweni sakho.

Sichitha indlela yokurekhoda "amazwana alalelwayo" ku-PowerPoint futhi sikhiphele isethulo kuvidiyo njengento encane futhi singanikezi okweshumi kwamakhono adingekayo kuvidiyo epholile ngempela.

Okokuqala, ake sinqume ukuthi yiziphi izinhlaka esizidingayo:

  1. Amaslayidi angempela anezwi
  2. Ukushintsha amaslayidi
  3. Izingcaphuno ezivela kumafilimu adumile
  4. Amafreyimu amaningana anobuso bomfundisi kanye nekati alithandayo (kuyakhetheka)

Ukudala uhlaka lwemibhalo

.
β”œβ”€β”€ clipart
β”œβ”€β”€ clips
β”œβ”€β”€ rec
β”œβ”€β”€ slide
└── sound

Inhloso yezinkomba ngokulandelana kohlu: amafilimu esizokhipha kuwo izingcaphuno (i-clipart), izingcezu zevidiyo yethu yesikhathi esizayo (iziqeshana), amavidiyo avela kukhamera (rec), amaslayidi ngendlela yezithombe (isilayidi), umsindo (umsindo).

Ukwenza isethulo ngezithombe

Kumsebenzisi weLinux onamehlo abomvu wangempela, ukwenza isethulo ngendlela yezithombe akwethuli zinkinga. Ake ngikukhumbuze nje ukuthi idokhumenti ngefomethi ye-pdf ingahlukaniselwa ezithombeni kusetshenziswa umyalo

pdftocairo -png -r 128 ../lecture.pdf

Uma ungekho umyalo onjalo, zifakele iphakheji ngokwakho ama-poppler-utils (imiyalelo ye-Ubuntu; uma une-Arch, wazi kahle ukuthi yini okufanele uyenze ngaphandle kwami).

Lapha nangaphezulu, ngikholwa ukuthi ividiyo ilungiswe ngefomethi ye-HD Ready, okungukuthi 1280x720. Isethulo esinosayizi ovundlile wamayintshi angu-10 sinikeza lo sayizi ngqo uma kulayishwa (bona inketho -r 128).

Ilungiselela umbhalo

Uma ufuna ukwenza izinto ezinhle ngempela, inkulumo yakho idinga ukubhalwa kuqala. Ngacabanga nokuthi ngingakhuluma umbhalo ngaphandle kokulungiselela, ikakhulukazi njengoba nginolwazi oluhle lokufundisa. Kodwa kuyinto eyodwa ukwenza bukhoma, futhi enye into ukuqopha ividiyo. Ungavilaphi - isikhathi esichithwe ukuthayipha sizokhokha izikhathi eziningi.

Izinkulumo zevidiyo: indlela unix

Nansi ifomethi yami yokurekhoda. Inombolo esesihlokweni ilingana nenombolo yesilayidi, iziphazamiso zigqanyiswe ngokubomvu. Noma yimuphi umhleli ulungele ukulungiswa, kodwa kungcono ukuthatha iphrosesa yamagama egcwele - isibonelo, I-Office kuphela.

Izwi phezu kwamaslayidi

Yini engingayisho - vula imakrofoni bese ubhala :)

Okuhlangenwe nakho kukhombisa ukuthi ikhwalithi yokurekhoda noma isuka kumakrofoni yangaphandle eshibhe kakhulu ingcono ngokungenakuqhathaniswa kunemakrofoni eyakhelwe ngaphakathi yekhompuyutha ephathekayo. Uma ufuna okokusebenza kwekhwalithi, ngiyayincoma nasi lesi sihloko.

Ukuqopha ngisebenzise rekhoda-umsindo - uhlelo lokusebenza olulula kakhulu lokuqoshwa komsindo. Ungayithatha, isibonelo, lapha:

sudo add-apt-repository ppa:audio-recorder/ppa
sudo apt-get update
sudo apt-get install audio-recorder

Into esemqoka kulesi sinyathelo ukuqamba amafayela ngendlela efanele. Igama kufanele libe nenombolo yesilayidi nenombolo yesiqephu. Izingcezu zibalwa ngezinombolo eziyinqaba - 1, 3, 5, njll. Ngakho, ngesilayidi, umbhalo oboniswe esithombeni, kuzokwakhiwa amafayela amabili: 002-1.mp3 ΠΈ 002-3.mp3.

Uma uqophe wonke amavidiyo ngesikhathi esisodwa ekamelweni elithulile, akukho okunye okumele ukwenze ngawo. Uma urekhode ngezinyathelo ezimbalwa, kungcono ukulinganisa izinga levolumu:

mp3gain -r *.mp3

Izinsiza mp3ukuthola Ngesizathu esithile ayikho kumakhosombe ajwayelekile, kodwa ungayithola lapha:

sudo add-apt-repository ppa:flexiondotorg/audio
sudo apt-get update
sudo apt-get install mp3gain

Ngemuva kwakho konke lokhu, udinga ukurekhoda elinye ifayela ngokuthula. Kuyadingeka ukwengeza ithrekhi yomsindo kumavidiyo athule: uma ividiyo eyodwa inethrekhi yomsindo kanti enye ingenayo, khona-ke kunzima ukuhlanganisa lawa mavidiyo ndawonye. Ukuthula kungarekhodwa kumbhobho, kodwa kungcono ukudala ifayela kumhleli Ukuziphendulela. Ubude befayela kufanele okungenani bube isekhondi (okuningi kungenzeka), futhi kufanele liqanjwe thula.mp3

Ilungiselela amavidiyo okuphazamiseka

Lapha konke kunqunyelwe kuphela ngomcabango wakho. Ungasebenzisa umhleli ukuhlela amavidiyo Avidemux. Kwake kwaba sezinqolobaneni ezijwayelekile, kodwa ngenxa yesizathu esithile yasikwa. Lokhu ngeke kusivimbe:

sudo add-apt-repository ppa:ubuntuhandbook1/avidemux
sudo apt-get update
sudo apt-get install avidemux2.7-qt5

Kunemiyalo eminingi yokusebenza nalo mhleli ku-inthanethi, futhi empeleni, konke okukhona kunembile. Kubalulekile ukuhlangabezana nemibandela eminingana.

Okokuqala, ukulungiswa kwevidiyo kufanele kufane nokulungiswa kwevidiyo okuqondiwe. Ukuze wenze lokhu, udinga ukusebenzisa izihlungi ezimbili "kuvidiyo ephumayo": i-swsResize ukuze uguqule ukulungiswa kanye "nokwengeza izinkambu" ukuze uguqule ifilimu "yefomethi encane" yaseSoviet ibe yifomethi ebanzi. Zonke ezinye izihlungi zingokuzithandela. Isibonelo, uma othile engaqondi ukuthi kungani isitatimende sikaMnu. Sharikov siyingxenye edingidwayo, usebenzisa isihlungi esithi "engeza ilogo", ungakwazi ukumboza ilogo ye-PostgreSQL phezu kokuthi "Inhliziyo Yenja".

Okwesibili, zonke izingcezu kufanele zisebenzise izinga lozimele elifanayo. Ngisebenzisa amafreyimu angu-25 ngomzuzwana ngoba ikhamera yami namafilimu amadala aseSoviet anginika okuningi. Uma imuvi osika kuyo ishuthwe ngesivinini esihlukile, sebenzisa isihlungi Sevidiyo Yesampula.

Okwesithathu, zonke izingcezu kufanele zicindezelwe nge-codec efanayo futhi zipakishwe ezitsheni ezifanayo. Ngakho-ke ku Avidemux ngefomethi, khetha ividiyo - "I-Mpeg4 AVC (x264)", umsindo -"I-AAC (FAAC)", ifomethi yokuphumayo - "MP4 Muxer".

Okwesine, kubalulekile ukuqamba amavidiyo asikiwe ngendlela efanele. Igama lefayela kufanele libe nenombolo yesilayidi nenombolo yesiqephu. Izingcezu zinombolwe ngezinombolo ezilinganayo, kusukela ku-2. Ngakho, ohlakeni oludingidwayo, ividiyo enokuphazamiseka kufanele ibizwe. 002-2.mp4

Ngemuva kokuthi amavidiyo eselungile, udinga ukuwadlulisela kuhla lwemibhalo ngezingcezu. Izilungiselelo avidemux ihluke kuzilungiselelo ffmpeg ngokuzenzakalelayo namapharamitha angaqondakali tbr, tbn, tbc. Akuthinti ukudlalwa, kodwa akuvumeli amavidiyo ukuthi anamathiselwe ndawonye. Ngakho-ke ake sibhale kabusha:

for f in ???-?.mp4;
do
  ffmpeg -hide_banner -y -i "${f}" -c copy -r 25 -video_track_timescale 12800 ../clips/$f
done

Ukudubula ama-screensavers

Lapha, futhi, yonke into ilula: uthwebula ngokumelene nesizinda sohlelo oluthile oluhlakaniphile, ubeka amavidiyo avelayo kukhathalogi. irekhodi, bese usuka lapho uyidlulisele ohlwini lwemibhalo enezingcezu. Imithetho yokuqamba iyafana neyokuphazamisa izingcaphuno, umyalo wokurekhoda umi kanje:

ffmpeg -y -i source_file -r 25 -vcodec libx264 -pix_fmt yuv420p -profile:v high -coder 1 -s 1280x720 -ar 44100 -ac 2 ../clips/xxx-x.mp4

Uma uhlela ukuqala ividiyo ngenkulumo yakho, yisho lesi siqeshana 000-1.mp4

Ukwenza amafreyimu ngezithombe ezimile

Isikhathi sokuhlela amavidiyo asuka ezithombeni ezimile nomsindo. Lokhu kwenziwa ngeskripthi esilandelayo:

#!/bin/bash

for sound in sound/*.mp3
do
  soundfile=${sound##*/}
  chunk=${soundfile%%.mp3}
  clip=${chunk}.mp4
  pic=slide/${chunk%%-?}.png

  duration=$(soxi -D ${sound} 2>/dev/null)
  echo ${sound} ${pic} ${clip} " - " ${duration}

  ffmpeg -hide_banner -y -loop 1 -i ${pic} -i ${sound} -r 25 -vcodec libx264 -tune stillimage -pix_fmt yuv420p -profile:v high -coder 1 -t ${duration} clips/${clip}
done

Sicela uqaphele ukuthi ubude besikhathi befayela lomsindo bunqunywa kuqala insiza soxi, bese ividiyo yobude obudingekayo iyahlelwa. Zonke izincomo engizitholile zilula: esikhundleni sefulegi -t ${duration} ifulegi liyasetshenziswa -mfishane... Empeleni ffmpeg inquma ubude be-mp3 cishe kakhulu, futhi ngesikhathi sokuhlela, ubude bethrekhi yomsindo bungahluka kakhulu (ngesekhondi elilodwa noma amabili) ukusuka kubude bethrekhi yevidiyo. Lokhu akunandaba ukuthi ividiyo yonke inohlaka olulodwa, kodwa uma unamathisela ividiyo enjalo ngokuphazamiseka emngceleni, kuba nemiphumela engemihle kakhulu yokungingiza.

Enye indlela yokunquma ubude befayela le-mp3 ukusebenzisa mp3 ulwazi. Naye uyawenza amaphutha, futhi ngezinye izikhathi ffmpeg inikeza okungaphezu kwalokho mp3 ulwazi, ngezinye izikhathi kungenye indlela, ngezinye izikhathi bobabili baqamba amanga - angizange ngiqaphele noma iyiphi iphethini. Futhi lapha soxi isebenza ngendlela efanele.

Ukuze ufake lolu hlelo lokusebenza, yenza lokhu:

sudo apt-get install sox libsox-fmt-mp3

Ukwenza izinguquko phakathi kwamaslayidi

Inguquko yividiyo emfushane lapho isilayidi esisodwa siphenduka esinye. Ukwenza amavidiyo anjalo, sithatha amaslayidi ngamabili futhi siwasebenzise isithombe guqula enye ibe enye:

#!/bin/bash

BUFFER=$(mktemp -d)

for pic in slide/*.png
do
  if [[ ${prevpic} != "" ]]
  then
    clip=${pic##*/}
    clip=${clip/.png/-0.mp4}
    #
    # Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ
    #
    ./fade.pl ${prevpic} ${BUFFER} 1280 720 5 direct 0
    ./fade.pl ${pic} ${BUFFER} 1280 720 5 reverse 12
    #
    # Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ
    #
    ffmpeg -y -hide_banner -i "${BUFFER}/%03d.png" -i sound/silence.mp3 -r 25 -y -acodec aac -vcodec libx264 -pix_fmt yuv420p -profile:v high -coder 1 -shortest clips/${clip}
    rm -f ${BUFFER}/*
  fi
  prevpic=${pic}
done

rmdir ${BUFFER}

Ngesizathu esithile bengifuna ukuthi isilayidi sihlakazwe ngamachashazi, bese kuthi isilayidi esilandelayo siqoqwe emacashazini, futhi ngenxa yalokhu ngabhala umbhalo obizwa ngokuthi. fade.pl Ukuba ne- isithombe, umsebenzisi wangempela we-Linux uzodala noma yimuphi umphumela okhethekile, kodwa uma othile ethanda umbono wami ngokusakaza, nasi umbhalo:

#!/usr/bin/perl

use strict;
use warnings;
use locale;
use utf8;
use open qw(:std :utf8);
use Encode qw(decode);
use I18N::Langinfo qw(langinfo CODESET);

my $codeset = langinfo(CODESET);
@ARGV = map { decode $codeset, $_ } @ARGV;

my ($source, $target, $width, $height, $pixsize, $rev, $file_no) = @ARGV;

my @rects;
$rects[$_] = "0123456789AB" for 0..$width*$height/$pixsize/$pixsize/12 - 1;

for my $i (0..11) {
  substr($_,int(rand(12-$i)),1) = "" for (@rects);
  my $s = $source;
  $s =~ s#^.*/##;
  open(PICTURE,"| convert - -transparent white PNG:- | convert "$source" - -composite "$target/".substr("00".($file_no+$i),-3).".png"");
  printf PICTURE ("P3n%d %dn255n",$width,$height);
  for my $row (1..$height/$pixsize/3) {
    for my $j (0..2) {
      my $l = "";
      for my $col (1..$width/$pixsize/4) {
        for my $k (0..3) {
          $l .= (index($rects[($row-1)*$width/$pixsize/4+$col-1],sprintf("%1X",$j*4+$k))==-1 xor $rev eq "reverse") ? "0 0 0n" : "255 255 255n" for (1..$pixsize);
        }
      }
      print PICTURE ($l) for (1..$pixsize);
    }
  }
  close(PICTURE);
}

Sikhweza ividiyo eqediwe

Manje sesinazo zonke izingcezu. Iya kukhathalogi omfisha bese uhlanganisa ifilimu eqediwe usebenzisa imiyalo emibili:

ls -1 ???-?.mp4 | gawk -e '{print "file " $0}' >list.txt
ffmpeg -y -hide_banner -f concat -i list.txt -c copy MOVIE.mp4

Jabulela ukubuka abafundi bakho ababongayo!

Source: www.habr.com

Engeza amazwana