Carantina este un moment minunat pentru a învăța ceva. Totuși, după cum înțelegeți, pentru ca cineva să învețe ceva, cineva trebuie să predea. Dacă aveți o prezentare pe care doriți să o oferiți unui public de milioane și să obțineți faimă în întreaga lume, atunci acest articol este pentru dvs. Aici vei găsi instrucțiuni pas cu pas despre cum să faci un videoclip din prezentarea ta.
Respingem calea înregistrării „comentariilor audio” în PowerPoint și a exportului prezentării în video ca fiind banală și nu oferă o zecime din capabilitățile necesare pentru un videoclip cu adevărat cool.
Mai întâi, să decidem de ce cadre avem nevoie:
- Slide-urile reale cu voce off
- schimbare de diapozitiv
- Citate din filme populare
- Mai multe cadre cu chipul lectorului și pisica lui preferată (opțional)
Crearea unei structuri de directoare
.
├── clipart
├── clips
├── rec
├── slide
└── sound
Scopul directoarelor în ordinea listării: filme din care vom trage citate (clipart), fragmente din viitorul nostru videoclip (clipuri), videoclipuri de la cameră (rec), diapozitive sub formă de imagini (slide), sunet (sunet).
Realizarea unei prezentări în imagini
Pentru un adevărat utilizator Linux cu ochii roșii, realizarea unei prezentări sub formă de imagini nu prezintă probleme. Permiteți-mi doar să vă reamintesc că un document în format pdf poate fi analizat în imagini folosind comanda
pdftocairo -png -r 128 ../lecture.pdf
Dacă nu există o astfel de comandă, instalați singur pachetul poppler-utils (instrucțiuni pentru Ubuntu; dacă ai Arch, atunci știi perfect ce să faci fără mine).
În continuare, cred că videoclipul este pregătit în format HD Ready, adică 1280x720. O prezentare cu o dimensiune orizontală de 10 inci produce exact această dimensiune atunci când este descărcată (vezi opțiunea -r 128).
Pregătirea textului
Dacă vrei să faci un material cu adevărat grozav, discursul tău trebuie scris mai întâi. De asemenea, m-am gândit că aș putea rosti textul fără pregătire, mai ales că am o experiență bună în lecturi. Dar una este să cântați live și alta este să înregistrați un videoclip. Nu fi leneș – timpul petrecut tastând va da roade de mai multe ori.
Iată formatul meu de înregistrare. Numărul din titlu este egal cu numărul diapozitivului, întreruperile sunt evidențiate cu roșu. Orice editor este potrivit pentru pregătire, dar este mai bine să luați un procesor de text cu drepturi depline - de exemplu, OnlyOffice.
Voce peste diapozitive
Ce pot să spun - pornește microfonul și scrie :)
Experiența arată că calitatea înregistrării chiar și de la cel mai ieftin microfon extern este incomparabil mai bună decât de la microfonul încorporat al unui laptop. Daca iti doresti echipament de calitate ti-l recomand
Pentru inregistrare am folosit inregistrare audio – o aplicație foarte simplă pentru înregistrarea sunetului. O poți lua, de exemplu, aici:
sudo add-apt-repository ppa:audio-recorder/ppa
sudo apt-get update
sudo apt-get install audio-recorder
Principalul lucru la acest pas este denumirea corectă a fișierelor. Numele trebuie să fie format din numărul diapozitivului și numărul fragmentului. Fragmentele sunt numerotate cu numere impare - 1, 3, 5 etc. Deci, pentru diapozitivul al cărui text este afișat în imagine, vor fi create două fișiere: 002-1.mp3 и 002-3.mp3.
Dacă ați înregistrat toate videoclipurile simultan într-o cameră liniștită, nu trebuie să faceți nimic mai departe cu ele. Dacă ați înregistrat în mai mulți pași, este mai bine să egalizați nivelul volumului:
mp3gain -r *.mp3
Utilități mp3câștig Din anumite motive, nu se află în depozitele standard, dar îl puteți obține aici:
sudo add-apt-repository ppa:flexiondotorg/audio
sudo apt-get update
sudo apt-get install mp3gain
După toate acestea, trebuie să înregistrați un alt fișier cu tăcere. Este necesar să adăugați o coloană sonoră la videoclipurile silențioase: dacă un videoclip are o coloană sonoră, iar celălalt nu, atunci este dificil să lipiți aceste videoclipuri împreună. Tăcerea poate fi înregistrată de la un microfon, dar este mai bine să creați un fișier în editor Îndrăzneală. Lungimea fișierului ar trebui să fie de cel puțin o secundă (este posibil mai mult) și ar trebui să fie numit tăcere.mp3
Pregătirea videoclipurilor de întrerupere
Aici totul este limitat doar de imaginația ta. Puteți folosi un editor pentru a edita videoclipuri Avidemux. A fost odată ca niciodată în arhivele standard, dar apoi din anumite motive a fost tăiat. Asta nu ne va opri:
sudo add-apt-repository ppa:ubuntuhandbook1/avidemux
sudo apt-get update
sudo apt-get install avidemux2.7-qt5
Există o mulțime de instrucțiuni pentru a lucra cu acest editor pe Internet și, în principiu, totul este intuitiv. Este important să îndepliniți mai multe condiții.
În primul rând, rezoluția video trebuie să se potrivească cu rezoluția video țintă. Pentru a face acest lucru, trebuie să utilizați două filtre în „video de ieșire”: swsResize pentru a schimba rezoluția și „adăugarea câmpurilor” pentru a transforma un film sovietic „format îngust” într-un format larg. Toate celelalte filtre sunt opționale. De exemplu, dacă cineva nu înțelege de ce declarația domnului Sharikov se află în fragmentul în discuție, folosind filtrul „adăugați sigla”, puteți suprapune sigla PostgreSQL deasupra „Inimii câinelui”.
În al doilea rând, toate fragmentele trebuie să utilizeze aceeași rată de cadre. Folosesc 25 de cadre pe secundă pentru că camera mea și vechile filme sovietice îmi oferă atât de mult. Dacă filmul din care tăiați a fost filmat cu o viteză diferită, utilizați filtrul Resample Video.
În al treilea rând, toate fragmentele trebuie să fie comprimate cu același codec și ambalate în aceleași containere. Prin urmare în Avidemux pentru format, selectați videoclipul – „MPEG4 AVC (x264)", audio - "AAC (FAAC)", format de iesire - "MP4 Muxer".
În al patrulea rând, este important să denumești corect videoclipurile tăiate. Numele fișierului trebuie să fie format din numărul diapozitivului și numărul fragmentului. Fragmentele sunt numerotate cu numere pare, incepand de la 2. Astfel, pentru cadrul in discutie ar trebui numit video-ul cu intrerupere. 002-2.mp4
După ce videoclipurile sunt gata, trebuie să le transferați în directorul cu fragmente. Setări avidemux diferă de setări FFMPEG implicit cu parametri misterioși tbr, tbn, tbc. Nu afectează redarea, dar nu permit lipirea videoclipurilor. Deci hai sa recodificam:
for f in ???-?.mp4;
do
ffmpeg -hide_banner -y -i "${f}" -c copy -r 25 -video_track_timescale 12800 ../clips/$f
done
Fotografierea screensaverelor
Și aici totul este simplu: filmați pe fundalul unei scheme inteligente, puneți videoclipurile rezultate într-un catalog rec, iar de acolo transferați-l în directorul cu fragmente. Regulile de denumire sunt aceleași ca pentru ghilimele de întrerupere, comanda de recodare este următoarea:
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
Dacă intenționați să începeți videoclipul cu discursul dvs., numiți acest fragment 000-1.mp4
Realizarea de cadre din imagini statice
Este timpul să editați videoclipuri din imagini statice și sunet. Acest lucru se face cu următorul script:
#!/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
Vă rugăm să rețineți că durata fișierului audio este mai întâi determinată de utilitar soxi, iar apoi videoclipul de lungimea necesară este editat. Toate recomandările pe care le-am găsit sunt mai simple: în loc de steag -t ${durata} este folosit steag -cel mai scurt... De fapt FFMPEG determină lungimea mp3-ului foarte aproximativ, iar în timpul editării, lungimea pistei audio poate diferi foarte mult (cu una sau două secunde) de lungimea pistei video. Acest lucru nu contează dacă întregul videoclip este format dintr-un singur cadru, dar atunci când lipiți un astfel de videoclip cu întreruperi la margine, apar efecte de bâlbâială extrem de neplăcute.
O altă modalitate de a determina durata unui fișier mp3 este utilizarea mp3info. Face și ea greșeli și uneori FFMPEG dă mai mult decât mp3info, uneori este invers, alteori mint amândoi – nu am observat niciun model. Si aici soxi functioneaza corect.
Pentru a instala acest utilitar util, procedați astfel:
sudo apt-get install sox libsox-fmt-mp3
Efectuarea de tranziții între diapozitive
O tranziție este un scurt videoclip în care un diapozitiv se transformă în altul. Pentru a realiza astfel de videoclipuri, luăm diapozitive în perechi și folosind ImageMagick transforma una in alta:
#!/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}
Din anumite motive am vrut ca diapozitivul să fie împrăștiat cu puncte, iar apoi următorul diapozitiv să fie asamblat din puncte și pentru asta am scris un script numit fade.pl Având ImageMagick, un utilizator Linux real va crea orice efect special, dar dacă cuiva îi place ideea mea cu scattering, iată scriptul:
#!/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);
}
Montam videoclipul terminat
Acum avem toate fragmentele. Mergi la catalog clipuri și asamblați filmul finit folosind două comenzi:
ls -1 ???-?.mp4 | gawk -e '{print "file " $0}' >list.txt
ffmpeg -y -hide_banner -f concat -i list.txt -c copy MOVIE.mp4
Urmărește cu plăcere studenților tăi recunoscători!
Sursa: www.habr.com