Konferans videyo: fason Unix

Konferans videyo: fason Unix
Karantèn se yon bèl moman pou aprann yon bagay. Sepandan, jan ou konprann, pou yon moun aprann yon bagay, yon moun dwe anseye. Si ou gen yon prezantasyon ke ou vle bay yon odyans nan plizyè milyon moun ak jwenn renome atravè lemond, Lè sa a, atik sa a se pou ou. La a ou pral jwenn enstriksyon etap pa etap sou kòman yo fè yon videyo nan prezantasyon ou.

Nou ranvwaye chemen an anrejistreman "komantè odyo" nan PowerPoint ak ekspòte prezantasyon an nan videyo kòm trivial epi yo pa bay yon dizyèm nan kapasite ki nesesè pou yon videyo vrèman fre.

Premyèman, ann deside ki ankadreman nou bezwen:

  1. Diapositive aktyèl yo ak vwa off
  2. Chanje glisad
  3. Quotes soti nan fim popilè
  4. Plizyè ankadreman ak figi konferans la ak chat li pi renmen (si ou vle)

Kreye yon estrikti anyè

.
├── clipart
├── clips
├── rec
├── slide
└── sound

Objektif la nan anyè yo nan lòd la nan lis: fim ki soti nan ki nou pral rale quotes (clipart), fragman nan videyo nan lavni nou an (klip), videyo ki soti nan kamera a (rec), glisad nan fòm lan nan foto (glisad), son. (son).

Fè yon prezantasyon nan foto

Pou yon itilizatè Linux reyèl je wouj, fè yon prezantasyon nan fòm foto pa prezante okenn pwoblèm. Kite m 'jis fè ou sonje ke yon dokiman nan fòma pdf ka analize nan imaj lè l sèvi avèk kòmandman an

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

Si pa gen okenn lòd sa a, enstale pake a tèt ou poppler-utils (enstriksyon pou Ubuntu; si ou gen Arch, Lè sa a, ou konnen parfe byen kisa pou w fè san mwen).

Isit la ak pi lwen, mwen kwè ke videyo a prepare nan fòma HD Ready, sa vle di 1280x720. Yon prezantasyon ak yon gwosè orizontal 10 pous bay egzakteman gwosè sa a lè dechaje (gade opsyon -r 128).

Prepare tèks la

Si ou vle fè materyèl vrèman gwo, diskou ou bezwen ekri an premye. Mwen te panse tou ke mwen te kapab pale tèks la san preparasyon, sitou paske mwen gen bon eksperyans nan konferans. Men, se yon sèl bagay pou fè viv, ak yon lòt bagay pou anrejistre yon videyo. Pa fè parese - tan ki pase tape ap peye anpil fwa.

Konferans videyo: fason Unix

Isit la se fòma anrejistreman mwen an. Nimewo a nan tit la egal ak nimewo glise a, entèripsyon yo make an wouj. Nenpòt editè se apwopriye pou preparasyon, men li se pi bon pran yon processeur tèks plen véritable - pou egzanp, OnlyOffice.

Vwa sou glisad yo

Kisa mwen ka di - limen mikwofòn la epi ekri :)

Eksperyans montre ke bon jan kalite anrejistreman an menm soti nan mikwofòn ekstèn ki pi bon mache a se enkonparab pi bon pase nan mikwofòn entegre nan yon laptop. Si ou vle bon jan kalite ekipman, mwen rekòmande li Atik sa.

Pou anrejistreman mwen te itilize odyo-achiv - yon aplikasyon trè senp pou anrejistreman son. Ou ka pran li, pou egzanp, isit la:

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

Bagay pwensipal lan nan etap sa a se bay non dosye yo kòrèkteman. Non an dwe konpoze de nimewo glisad la ak nimewo fragman an. Fragman yo nimewote ak nimewo enpè - 1, 3, 5, elatriye. Se konsa, pou glise a, tèks la yo montre nan foto a, de dosye yo pral kreye: 002-1.mp3 и 002-3.mp3.

Si ou anrejistre tout videyo yo nan yon fwa nan yon chanm trankil, ou pa bezwen fè anyen plis ak yo. Si ou anrejistre nan plizyè etap, li pi bon egalize nivo volim:

mp3gain -r *.mp3

Itilite mp3gain Pou kèk rezon li pa nan depo estanda yo, men ou ka jwenn li isit la:

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

Apre tout bagay sa yo, ou bezwen anrejistre yon lòt dosye ak silans. Li nesesè pou ajoute yon track son nan videyo an silans: si yon videyo gen yon track son epi lòt la pa genyen, Lè sa a, li difisil pou kole videyo sa yo ansanm. Silans ka anrejistre nan yon mikwofòn, men li se pi bon yo kreye yon dosye nan editè a Odas. Longè dosye a ta dwe omwen yon segonn (plis posib), epi li ta dwe nonmen non silans.mp3

Prepare videyo entèripsyon

Isit la tout bagay limite sèlman pa imajinasyon ou. Ou ka itilize yon editè pou edite videyo yo Avidemux. Yon fwa sou yon tan li te nan depo estanda yo, men Lè sa a, pou kèk rezon li te koupe soti. Sa p ap anpeche nou:

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

Gen yon anpil nan enstriksyon pou travay ak editè sa a sou entènèt la, ak nan prensip, tout bagay la se entwisyon. Li enpòtan pou satisfè plizyè kondisyon.

Premyèman, rezolisyon videyo a dwe matche ak rezolisyon videyo sib la. Pou fè sa, ou bezwen sèvi ak de filtè nan "pwodiksyon videyo a": swsResize chanje rezolisyon an ak "ajoute jaden" yo vire yon fim Sovyetik "fòma etwat" nan yon fòma lajè. Tout lòt filtè yo opsyonèl. Pou egzanp, si yon moun pa konprann poukisa deklarasyon Mesye Sharikov nan fragman ki anba diskisyon an, lè l sèvi avèk filtè "ajoute logo", ou ka kouvri logo PostgreSQL sou tèt "Kè chen an".

Dezyèmman, tout fragman yo dwe itilize menm pousantaj ankadreman an. Mwen sèvi ak 25 ankadreman pou chak segonn paske kamera mwen ak ansyen fim Sovyetik yo ban mwen anpil. Si fim nan w ap koupe a te tire nan yon vitès diferan, sèvi ak filtè Videyo Resample la.

Twazyèmman, tout fragman yo dwe konprese ak menm kodèk la epi yo dwe pake nan menm resipyan yo. Se poutèt sa nan Avidemux pou fòma a, chwazi videyo - "MPEG4 AVC (x264)", odyo - "AAC (FAAC)", fòma pwodiksyon - "MP4 Muxer'.

Katriyèmman, li enpòtan pou bay non videyo koupe yo kòrèkteman. Non fichye a dwe konpoze de nimewo glisad la ak nimewo fragman an. Fragman yo nimewote ak nimewo menm, kòmanse soti nan 2. Kidonk, pou ankadreman ki anba diskisyon an, yo ta dwe rele videyo a ak entèripsyon an. 002-2.mp4

Apre videyo yo pare, ou bezwen transfere yo nan anyè a ak fragman. Anviwònman avidemux diferan de paramèt yo ffmpeg pa default ak paramèt misterye tbr, tbn, tbc. Yo pa afekte lèktur, men yo pa pèmèt videyo yo kole ansanm. Se konsa, ann kode:

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

Fiziyad écran

Isit la tou, tout bagay se senp: ou tire kont twal la nan kèk konplo entelijan, mete videyo yo ki kapab lakòz nan yon katalòg. rec, epi soti nan la transfere li nan anyè a ak fragman. Règ yo nonmen yo se menm jan ak pou sitasyon entèwonp, kòmandman an kodaj se jan sa a:

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

Si w gen plan pou kòmanse videyo a ak diskou w la, bay non fragman sa a 000-1.mp4

Fè ankadreman soti nan foto estatik

Li lè yo edite videyo ki soti nan imaj estatik ak son. Sa a se fè ak script sa a:

#!/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

Tanpri sonje ke se sèvis piblik la ki detèmine dire fichye odyo a soxi, ak Lè sa a, videyo a nan longè ki nesesè yo modifye. Tout rekòmandasyon mwen jwenn yo pi senp: olye de yon drapo -t ${dire} yo itilize drapo -pi kout. An reyalite ffmpeg detèmine longè mp3 trè apeprè, epi pandan koreksyon, longè tras odyo a ka diferan anpil (pa youn oubyen de segonn) ak longè tras videyo a. Sa a pa enpòtan si tout videyo a konsiste de yon sèl ankadreman, men lè ou kole yon videyo konsa ak entèripsyon nan fwontyè a, efè begeman trè dezagreyab rive.

Yon lòt fason pou detèmine dire a nan yon dosye mp3 se sèvi ak mp3info. Li fè erè tou, e pafwa ffmpeg bay plis pase mp3info, pafwa li nan lòt fason alantou, pafwa yo tou de bay manti - mwen pa t 'avi okenn modèl. Ak isit la soxi travay kòrèkteman.

Pou enstale sèvis piblik itil sa a, fè sa:

sudo apt-get install sox libsox-fmt-mp3

Fè tranzisyon ant glisad

Yon tranzisyon se yon videyo kout kote yon glisad tounen yon lòt. Pou fè videyo sa yo, nou pran glisad nan pè ak lè l sèvi avèk imajmajik transfòme youn nan lòt:

#!/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}

Pou kèk rezon mwen te vle glise a gaye ak pwen, ak Lè sa a, pwochen glise a ta rasanble soti nan pwen yo, e pou sa a mwen te ekri yon script ki rele fennen.pl Èske w gen imajmajik, yon itilizatè reyèl Linux pral kreye nenpòt efè espesyal, men si yon moun renmen lide m 'ak gaye, isit la se script la:

#!/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);
}

Nou monte videyo a fini

Koulye a, nou gen tout fragman yo. Ale nan katalòg la klip epi rasanble fim nan fini lè l sèvi avèk de kòmandman:

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

Pran plezi gade elèv ou yo ki rekonesan!

Sous: www.habr.com

Add nouvo kòmantè