KarantÄ«na ir brÄ«niŔķīgs laiks, lai kaut ko iemÄcÄ«tos. TomÄr, kÄ jÅ«s saprotat, lai kÄds kaut ko iemÄcÄ«tos, kÄdam ir jÄmÄca. Ja jums ir prezentÄcija, kuru vÄlaties pasniegt miljoniem lielu auditoriju un iegÅ«t pasaules slavu, tad Å”is raksts ir domÄts jums. Å eit jÅ«s atradÄ«siet detalizÄtus norÄdÄ«jumus par to, kÄ no prezentÄcijas izveidot video.
MÄs noraidÄm āaudio komentÄruā ierakstÄ«Å”anu programmÄ PowerPoint un prezentÄcijas eksportÄÅ”anu uz video kÄ triviÄlu un nenodroÅ”inÄm desmito daļu no iespÄjÄm, kas nepiecieÅ”amas patiesi forÅ”am videoklipam.
Vispirms izlemsim, kÄdi rÄmji mums ir nepiecieÅ”ami:
- Faktiskie slaidi ar balsi
- Slaidu maiÅa
- CitÄti no populÄrÄm filmÄm
- VairÄki kadri ar pasniedzÄja seju un viÅa mīļÄko kaÄ·i (pÄc izvÄles)
Direktoriju struktūras izveide
.
āāā clipart
āāā clips
āāā rec
āāā slide
āāā sound
Katalogu mÄrÄ·is uzskaitÄ«Å”anas secÄ«bÄ: filmas, no kurÄm mÄs izvilksim citÄtus (klips), mÅ«su nÄkotnes video fragmenti (klipi), video no kameras (rec), slaidi attÄlu veidÄ (slaids), skaÅa (skaÅa).
PrezentÄcijas veidoÅ”ana attÄlos
ÄŖstam Linux lietotÄjam ar sarkanÄm acÄ«m prezentÄcijas veidoÅ”ana attÄlu veidÄ nesagÄdÄ nekÄdas problÄmas. AtgÄdinÄÅ”u, ka dokumentu pdf formÄtÄ var parsÄt attÄlos, izmantojot komandu
pdftocairo -png -r 128 ../lecture.pdf
Ja Å”Ädas komandas nav, instalÄjiet pakotni pats poppler-utils (norÄdÄ«jumi par Ubuntu; ja jums ir Arch, tad jÅ«s lieliski zinÄt, ko darÄ«t bez manis).
TurpmÄk uzskatu, ka video ir sagatavots HD Ready formÄtÄ, t.i., 1280x720. PrezentÄcija ar horizontÄlo izmÄru 10 collas nodroÅ”ina tieÅ”i tÄdu izmÄru, kad tÄ ir izÅemta (skatiet opciju -r 128).
Teksta sagatavoŔana
Ja vÄlaties izveidot patieÅ”Äm lielisku materiÄlu, vispirms ir jÄuzraksta jÅ«su runa. Es arÄ« domÄju, ka varu runÄt tekstu bez sagatavoÅ”anÄs, jo Ä«paÅ”i tÄpÄc, ka man ir laba pieredze lekcijÄs. TaÄu viena lieta ir uzstÄties tieÅ”raidÄ un cita lieta ir ierakstÄ«t video. Neesiet slinks ā rakstÄ«Å”anai pavadÄ«tais laiks atmaksÄsies daudzkÄrt.
Å eit ir mans ieraksta formÄts. Cipars virsrakstÄ ir vienÄds ar slaida numuru, pÄrtraukumi ir iezÄ«mÄti sarkanÄ krÄsÄ. SagatavoÅ”anai ir piemÄrots jebkurÅ” redaktors, taÄu labÄk ir Åemt pilnvÄrtÄ«gu tekstapstrÄdes programmu - piemÄram, OnlyOffice.
Balss pÄr slaidiem
Ko lai saka - ieslÄdz mikrofonu un raksti :)
Pieredze rÄda, ka ieraksta kvalitÄte pat no lÄtÄkÄ ÄrÄjÄ mikrofona ir nesalÄ«dzinÄmi labÄka nekÄ no portatÄ«vÄ datora iebÅ«vÄtÄ mikrofona. Ja vÄlaties kvalitatÄ«vu aprÄ«kojumu, iesaku
IerakstÄ«Å”anai izmantoju audio ierakstÄ«tÄjs ā ļoti vienkÄrÅ”a lietojumprogramma skaÅas ierakstÄ«Å”anai. JÅ«s varat to Åemt, piemÄram, Å”eit:
sudo add-apt-repository ppa:audio-recorder/ppa
sudo apt-get update
sudo apt-get install audio-recorder
Galvenais Å”ajÄ solÄ« ir pareizi nosaukt failus. NosaukumÄ ir jÄsastÄv no slaida numura un fragmenta numura. Fragmenti tiek numurÄti ar nepÄra skaitļiem - 1, 3, 5 utt. TÄtad slaidam, kura teksts ir redzams attÄlÄ, tiks izveidoti divi faili: 002-1.mp3 Šø 002-3.mp3.
Ja visus videoklipus ierakstÄ«jÄt vienlaikus klusÄ telpÄ, jums ar tiem nekas nav jÄdara. Ja ierakstÄ«jÄt vairÄkos posmos, labÄk ir izlÄ«dzinÄt skaļuma lÄ«meni:
mp3gain -r *.mp3
KomunÄlie pakalpojumi mp3gain KÄdu iemeslu dÄļ tas nav standarta krÄtuvÄs, taÄu varat to iegÅ«t Å”eit:
sudo add-apt-repository ppa:flexiondotorg/audio
sudo apt-get update
sudo apt-get install mp3gain
PÄc visa Ŕī jums ir jÄieraksta vÄl viens fails ar klusumu. Klusajiem video ir jÄpievieno skaÅas celiÅÅ”: ja vienam video ir skaÅas celiÅÅ”, bet otram nav, tad Å”os video ir grÅ«ti salÄ«mÄt kopÄ. Klusumu var ierakstÄ«t no mikrofona, bet labÄk ir izveidot failu redaktorÄ PÄrdroŔība. Faila garumam jÄbÅ«t vismaz sekundei (iespÄjams vairÄk), un tam jÄbÅ«t nosauktam klusums.mp3
Notiek pÄrtraukumu video sagatavoÅ”ana
Å eit visu ierobežo tikai jÅ«su iztÄle. Videoklipu rediÄ£ÄÅ”anai varat izmantot redaktoru Avidemux. KÄdreiz tas bija standarta krÄtuvÄs, bet tad nez kÄpÄc tika izgriezts. Tas mÅ«s neapturÄs:
sudo add-apt-repository ppa:ubuntuhandbook1/avidemux
sudo apt-get update
sudo apt-get install avidemux2.7-qt5
InternetÄ ir daudz instrukciju darbam ar Å”o redaktoru, un principÄ viss ir intuitÄ«vs. Ir svarÄ«gi ievÄrot vairÄkus nosacÄ«jumus.
PirmkÄrt, video izŔķirtspÄjai ir jÄatbilst mÄrÄ·a video izŔķirtspÄjai. Lai to izdarÄ«tu, āizvades videoā ir jÄizmanto divi filtri: swsResize, lai mainÄ«tu izŔķirtspÄju, un ālauku pievienoÅ”anaā, lai padomju āÅ”aurÄ formÄtaā filmu pÄrvÄrstu plaÅ”Ä formÄtÄ. Visi pÄrÄjie filtri nav obligÄti. PiemÄram, ja kÄds nesaprot, kÄpÄc Å arikova kunga izteikums ir apspriežamajÄ fragmentÄ, izmantojot filtru āpievienot logotipuā, varat uzlikt PostgreSQL logotipu virs āSuÅa sirdsā.
OtrkÄrt, visiem fragmentiem ir jÄizmanto vienÄds kadru Ätrums. Es izmantoju 25 kadrus sekundÄ, jo mana kamera un vecÄs padomju filmas man dod tik daudz. Ja filma, no kuras izgriežat, tika uzÅemta ar citu Ätrumu, izmantojiet filtru Resample Video.
TreÅ”kÄrt, visi fragmenti ir jÄsaspiež ar vienu un to paÅ”u kodeku un jÄiepako vienÄdos konteineros. TÄpÄc iekÅ”Ä Avidemux formÄtam atlasiet video - "Mpeg4 AVC (x264)", audio - "AAC (FAAC)", izvades formÄts - "MP4 mikseris'.
CeturtkÄrt, ir svarÄ«gi pareizi nosaukt izgrieztos videoklipus. Faila nosaukumam jÄsastÄv no slaida numura un fragmenta numura. Fragmenti tiek numurÄti ar pÄra skaitļiem, sÄkot no 2. TÄdÄjÄdi apspriežamajam kadram video ar pÄrtraukumu jÄsauc 002-2.mp4
Kad videoklipi ir gatavi, tie jÄpÄrnes uz direktoriju ar fragmentiem. IestatÄ«jumi avidemux atŔķiras no iestatÄ«jumiem ffmpeg pÄc noklusÄjuma ar noslÄpumainiem parametriem tbr, tbn, tbc. Tie neietekmÄ atskaÅoÅ”anu, bet neļauj video salÄ«mÄt kopÄ. TÄtad pÄrkodÄsim:
for f in ???-?.mp4;
do
ffmpeg -hide_banner -y -i "${f}" -c copy -r 25 -video_track_timescale 12800 ../clips/$f
done
EkrÄnsaudzÄtÄju Å”auÅ”ana
ArÄ« Å”eit viss ir vienkÄrÅ”i: jÅ«s fotografÄjat uz kÄdas gudras shÄmas fona, ievietojiet iegÅ«tos videoklipus katalogÄ REC, un no turienes pÄrsÅ«tiet to uz direktoriju ar fragmentiem. NosaukÅ”anas noteikumi ir tÄdi paÅ”i kÄ pÄrtraukuma pÄdiÅÄm, pÄrkodÄÅ”anas komanda ir Å”Äda:
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
Ja plÄnojat sÄkt video ar savu runu, nosauciet Å”o fragmentu 000-1.mp4
RÄmju izgatavoÅ”ana no statiskiem attÄliem
Ir pienÄcis laiks rediÄ£Ät videoklipus no statiskiem attÄliem un skaÅas. Tas tiek darÄ«ts ar Å”Ädu skriptu:
#!/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
LÅ«dzu, Åemiet vÄrÄ, ka audio faila ilgumu vispirms nosaka utilÄ«ta soxi, un pÄc tam tiek rediÄ£Äts vajadzÄ«gÄ garuma video. Visi ieteikumi, ko atradu, ir vienkÄrÅ”Äki: karoga vietÄ -t ${duration} tiek izmantots karogs - Ä«sÄkais. PatiesÄ«bÄ ffmpeg ļoti aptuveni nosaka mp3 garumu, un rediÄ£ÄÅ”anas laikÄ audio celiÅa garums var ievÄrojami atŔķirties (par vienu vai divÄm sekundÄm) no video celiÅa garuma. Tam nav nozÄ«mes, ja viss video sastÄv no viena kadra, taÄu, pielÄ«mÄjot Å”Ädu video ar pÄrtraukumiem pie robežas, rodas ÄrkÄrtÄ«gi nepatÄ«kami stostÄ«Å”anÄs efekti.
VÄl viens veids, kÄ noteikt mp3 faila ilgumu, ir izmantot mp3 informÄcija. ViÅa arÄ« pieļauj kļūdas, un dažreiz ffmpeg dod vairÄk nekÄ mp3 informÄcija, dažreiz ir otrÄdi, dažreiz viÅi abi melo - es nepamanÄ«ju nevienu modeli. Un Å”eit soxi darbojas pareizi.
Lai instalÄtu Å”o noderÄ«go utilÄ«tu, rÄ«kojieties Å”Ädi:
sudo apt-get install sox libsox-fmt-mp3
PÄreju veikÅ”ana starp slaidiem
PÄreja ir Ä«ss video, kurÄ viens slaids pÄrvÄrÅ”as citÄ. Lai izveidotu Å”Ädus video, mÄs uzÅemam slaidus pa pÄriem un izmantojot ImageMagick pÄrveidot vienu par otru:
#!/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}
Nez kÄpÄc man gribÄjÄs, lai slaids bÅ«tu izkaisÄ«ts ar punktiem, un tad no punktiem tiktu salikts nÄkamais slaids, un Å”im es uzrakstÄ«ju skriptu ar nosaukumu izbalinÄt.pl Å emot ImageMagick, Ä«sts Linux lietotÄjs radÄ«s jebkuru specefektu, bet, ja kÄdam patÄ«k mana ideja ar izkliedÄÅ”anu, tad lÅ«k skripts:
#!/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);
}
MÄs uzstÄdÄm gatavo video
Tagad mums ir visi fragmenti. Dodieties uz katalogu klipi un salieciet gatavo plÄvi, izmantojot divas komandas:
ls -1 ???-?.mp4 | gawk -e '{print "file " $0}' >list.txt
ffmpeg -y -hide_banner -f concat -i list.txt -c copy MOVIE.mp4
Patīkamu skatīŔanos saviem pateicīgajiem studentiem!
Avots: www.habr.com