வீடியோ விரிவுரைகள்: unix way

வீடியோ விரிவுரைகள்: unix way
தனிமைப்படுத்தல் என்பது எதையாவது கற்றுக்கொள்ள ஒரு அற்புதமான நேரம். இருப்பினும், நீங்கள் புரிந்து கொண்டபடி, யாராவது ஏதாவது கற்றுக் கொள்ள, யாராவது கற்பிக்க வேண்டும். மில்லியன் கணக்கான பார்வையாளர்களுக்கு வழங்கவும், உலகளாவிய புகழைப் பெறவும் நீங்கள் விரும்பும் விளக்கக்காட்சி உங்களிடம் இருந்தால், இந்தக் கட்டுரை உங்களுக்கானது. உங்கள் விளக்கக்காட்சியிலிருந்து வீடியோவை எவ்வாறு உருவாக்குவது என்பது குறித்த படிப்படியான வழிமுறைகளை இங்கே காணலாம்.

PowerPoint இல் "ஆடியோ கருத்துகளை" பதிவுசெய்வதற்கான பாதையை நாங்கள் நிராகரிக்கிறோம் மற்றும் வீடியோவிற்கு விளக்கக்காட்சியை ஏற்றுமதி செய்வது அற்பமானது மற்றும் உண்மையான அருமையான வீடியோவிற்குத் தேவையான திறன்களில் பத்தில் ஒரு பங்கை வழங்கவில்லை.

முதலில், நமக்கு என்ன பிரேம்கள் தேவை என்பதை முடிவு செய்வோம்:

  1. குரல்வழியுடன் உண்மையான ஸ்லைடுகள்
  2. ஸ்லைடுகளை மாற்றுதல்
  3. பிரபலமான படங்களின் மேற்கோள்கள்
  4. விரிவுரையாளரின் முகம் மற்றும் அவருக்குப் பிடித்த பூனையுடன் பல பிரேம்கள் (விரும்பினால்)

ஒரு அடைவு கட்டமைப்பை உருவாக்குதல்

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

பட்டியலிடப்பட்ட வரிசையில் கோப்பகங்களின் நோக்கம்: நாங்கள் மேற்கோள்களை இழுக்கும் படங்கள் (கிளிபார்ட்), எங்கள் எதிர்கால வீடியோவின் துண்டுகள் (கிளிப்புகள்), கேமராவிலிருந்து வீடியோக்கள் (ரெக்), படங்களின் வடிவத்தில் ஸ்லைடுகள் (ஸ்லைடு), ஒலி (ஒலி).

படங்களில் விளக்கக்காட்சியை உருவாக்குதல்

உண்மையான சிவப்புக் கண்கள் கொண்ட லினக்ஸ் பயனருக்கு, படங்களின் வடிவத்தில் விளக்கக்காட்சியை உருவாக்குவது எந்தச் சிக்கலையும் ஏற்படுத்தாது. pdf வடிவத்தில் உள்ள ஒரு ஆவணத்தை கட்டளையைப் பயன்படுத்தி படங்களாகப் பாகுபடுத்த முடியும் என்பதை உங்களுக்கு நினைவூட்டுகிறேன்

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

அத்தகைய கட்டளை இல்லை என்றால், தொகுப்பை நீங்களே நிறுவவும் பாப்ளர்-utils சேர்க்கப்பட்டுள்ளது (உபுண்டுவுக்கான வழிமுறைகள்; உங்களிடம் ஆர்ச் இருந்தால், நான் இல்லாமல் என்ன செய்வது என்று உங்களுக்கு நன்றாகத் தெரியும்).

இங்கே மேலும் மேலும், வீடியோ HD தயார் வடிவத்தில், அதாவது 1280x720 இல் தயாரிக்கப்பட்டது என்று நான் நம்புகிறேன். 10 இன்ச் கிடைமட்ட அளவு கொண்ட விளக்கக்காட்சியானது, இறக்கப்படும் போது, ​​இந்த அளவை சரியாகக் கொடுக்கிறது (-r 128 அளவுருவைப் பார்க்கவும்).

உரையைத் தயாரித்தல்

நீங்கள் உண்மையிலேயே சிறந்த பொருளை உருவாக்க விரும்பினால், உங்கள் பேச்சு முதலில் எழுதப்பட வேண்டும். குறிப்பாக விரிவுரையில் நல்ல அனுபவம் உள்ளதால், தயார் இல்லாமல் உரையை பேசலாம் என்றும் நினைத்தேன். ஆனால் நேரலையில் நிகழ்த்துவது ஒன்று, வீடியோவைப் பதிவு செய்வது என்பது வேறு விஷயம். சோம்பேறியாக இருக்காதீர்கள் - தட்டச்சு செய்யும் நேரம் பல மடங்கு பலனைத் தரும்.

வீடியோ விரிவுரைகள்: unix way

இதோ எனது பதிவு வடிவம். தலைப்பில் உள்ள எண் ஸ்லைடு எண்ணுக்கு சமம், குறுக்கீடுகள் சிவப்பு நிறத்தில் காட்டப்படும். எந்தவொரு எடிட்டரும் தயாரிப்பதற்கு ஏற்றது, ஆனால் முழு அளவிலான சொல் செயலியை எடுத்துக்கொள்வது நல்லது - எடுத்துக்காட்டாக, OnlyOffice.

ஸ்லைடுகளுக்கு மேல் குரல்

நான் என்ன சொல்ல முடியும் - மைக்ரோஃபோனை இயக்கி எழுதுங்கள் :)

மடிக்கணினியின் உள்ளமைக்கப்பட்ட மைக்ரோஃபோனை விட மலிவான வெளிப்புற மைக்ரோஃபோனிலிருந்து பதிவு செய்யும் தரம் ஒப்பிடமுடியாத அளவிற்கு சிறந்தது என்பதை அனுபவம் காட்டுகிறது. நீங்கள் தரமான உபகரணங்கள் விரும்பினால், நான் அதை பரிந்துரைக்கிறேன் இங்கே இந்த கட்டுரை.

பதிவுக்காக நான் பயன்படுத்தினேன் ஆடியோ-ரெக்கார்டர் - ஒலிப்பதிவுக்கான மிக எளிய பயன்பாடு. நீங்கள் அதை எடுத்துக் கொள்ளலாம், எடுத்துக்காட்டாக, இங்கே:

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

இந்த கட்டத்தில் முக்கிய விஷயம் கோப்புகளை சரியாக பெயரிட வேண்டும். பெயர் ஸ்லைடு எண் மற்றும் துண்டு எண் ஆகியவற்றைக் கொண்டிருக்க வேண்டும். துண்டுகள் ஒற்றைப்படை எண்களுடன் எண்ணப்படுகின்றன - 1, 3, 5, முதலியன. எனவே, ஸ்லைடுக்கு, படத்தில் காட்டப்பட்டுள்ள உரை, இரண்டு கோப்புகள் உருவாக்கப்படும்: 002-1.mp3 и 002-3.mp3.

நீங்கள் அனைத்து வீடியோக்களையும் ஒரே நேரத்தில் ஒரு அமைதியான அறையில் பதிவு செய்திருந்தால், அவற்றைக் கொண்டு நீங்கள் எதுவும் செய்ய வேண்டியதில்லை. நீங்கள் பல படிகளில் பதிவு செய்திருந்தால், தொகுதி அளவை சமன் செய்வது நல்லது:

mp3gain -r *.mp3

பயன்பாடுகள் mp3 மீண்டும் சில காரணங்களால் இது நிலையான களஞ்சியங்களில் இல்லை, ஆனால் நீங்கள் அதை இங்கே பெறலாம்:

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

இத்தனைக்கும் பிறகு, நீங்கள் அமைதியுடன் மற்றொரு கோப்பை பதிவு செய்ய வேண்டும். அமைதியான வீடியோக்களுக்கு ஒலித் தடத்தைச் சேர்ப்பது அவசியம்: ஒரு வீடியோவில் ஒலிப்பதிவு இருந்தால் மற்றொன்று இல்லை என்றால், இந்த வீடியோக்களை ஒன்றாக ஒட்டுவது கடினம். நிசப்தத்தை மைக்ரோஃபோனிலிருந்து பதிவு செய்யலாம், ஆனால் எடிட்டரில் ஒரு கோப்பை உருவாக்குவது நல்லது தைரியம். கோப்பு நீளம் குறைந்தது ஒரு வினாடி இருக்க வேண்டும் (அதிக சாத்தியம்), அது பெயரிடப்பட வேண்டும் அமைதி.mp3

குறுக்கீடு வீடியோக்கள் தயாராகிறது

இங்கே எல்லாம் உங்கள் கற்பனையால் மட்டுமே வரையறுக்கப்பட்டுள்ளது. வீடியோக்களைத் திருத்த எடிட்டரைப் பயன்படுத்தலாம் avidemux. ஒரு காலத்தில் இது நிலையான களஞ்சியங்களில் இருந்தது, ஆனால் சில காரணங்களால் அது வெட்டப்பட்டது. இது நம்மைத் தடுக்காது:

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

இணையத்தில் இந்த எடிட்டருடன் பணிபுரிய நிறைய வழிமுறைகள் உள்ளன, கொள்கையளவில், எல்லாமே உள்ளுணர்வுடன் உள்ளன. பல நிபந்தனைகளை பூர்த்தி செய்வது முக்கியம்.

முதலில், வீடியோ தீர்மானம் இலக்கு வீடியோ தெளிவுத்திறனுடன் பொருந்த வேண்டும். இதைச் செய்ய, "வெளியீட்டு வீடியோவில்" நீங்கள் இரண்டு வடிப்பான்களைப் பயன்படுத்த வேண்டும்: தெளிவுத்திறனை மாற்ற swsResize மற்றும் சோவியத் "குறுகிய வடிவமைப்பு" படத்தை ஒரு பரந்த வடிவமாக மாற்ற "புலங்களைச் சேர்ப்பது". மற்ற அனைத்து வடிப்பான்களும் விருப்பமானவை. எடுத்துக்காட்டாக, "லோகோவைச் சேர்" வடிப்பானைப் பயன்படுத்தி, திரு. ஷரிகோவின் அறிக்கை ஏன் விவாதத்தில் உள்ளது என்று யாருக்காவது புரியவில்லை என்றால், "நாய் இதயத்தின்" மேல் PostgreSQL லோகோவை மேலெழுதலாம்.

இரண்டாவதாக, அனைத்து துண்டுகளும் ஒரே பிரேம் வீதத்தைப் பயன்படுத்த வேண்டும். எனது கேமராவும் பழைய சோவியத் படங்களும் எனக்கு அந்த அளவுக்குத் தருவதால் வினாடிக்கு 25 ஃப்ரேம்களைப் பயன்படுத்துகிறேன். நீங்கள் வெட்டி எடுக்கும் திரைப்படம் வேறு வேகத்தில் எடுக்கப்பட்டிருந்தால், மறு மாதிரி வீடியோ வடிப்பானைப் பயன்படுத்தவும்.

மூன்றாவதாக, அனைத்து துண்டுகளும் ஒரே கோடெக்குடன் சுருக்கப்பட்டு அதே கொள்கலன்களில் தொகுக்கப்பட வேண்டும். எனவே உள்ளே avidemux வடிவமைப்பிற்கு, வீடியோவைத் தேர்ந்தெடுக்கவும் - "MPEG4 AVC (x264)", ஆடியோ -"AAC (FAAC)", வெளியீட்டு வடிவம் - "MP4 மக்ஸர்".

நான்காவதாக, வெட்டப்பட்ட வீடியோக்களை சரியாக பெயரிடுவது முக்கியம். கோப்பின் பெயர் ஸ்லைடு எண் மற்றும் துண்டு எண் ஆகியவற்றைக் கொண்டிருக்க வேண்டும். துண்டுகள் இரட்டை எண்களுடன் எண்ணப்படுகின்றன, 2 முதல் தொடங்குகின்றன. எனவே, விவாதத்தில் உள்ள சட்டத்திற்கு, குறுக்கீடு கொண்ட வீடியோவை அழைக்க வேண்டும். 002-2.mp4

வீடியோக்கள் தயாரான பிறகு, அவற்றை துண்டுகளுடன் கோப்பகத்திற்கு மாற்ற வேண்டும். அமைப்புகள் avidemux அமைப்புகளிலிருந்து வேறுபடுகிறது ffmpeg tbr, tbn, tbc ஆகிய மர்மமான அளவுருக்களுடன் இயல்பாக. அவை பிளேபேக்கைப் பாதிக்காது, ஆனால் அவை வீடியோக்களை ஒன்றாக ஒட்ட அனுமதிக்காது. எனவே மீண்டும் குறியிடுவோம்:

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

படப்பிடிப்பு ஸ்கிரீன்சேவர்கள்

இங்கேயும் எல்லாம் எளிது: சில புத்திசாலித்தனமான திட்டத்தின் பின்னணியில் நீங்கள் சுடுகிறீர்கள், அதன் விளைவாக வரும் வீடியோக்களை அட்டவணையில் வைக்கவும் ரெக், மற்றும் அங்கிருந்து அதை துண்டுகளுடன் கோப்பகத்திற்கு மாற்றவும். பெயரிடும் விதிகள் குறுக்கீடு மேற்கோள்களைப் போலவே இருக்கும், மறுவடிவமைப்பு கட்டளை பின்வருமாறு:

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

உங்கள் பேச்சில் வீடியோவைத் தொடங்க நீங்கள் திட்டமிட்டால், இந்தப் பகுதிக்கு பெயரிடுங்கள் 000-1.mp4

நிலையான படங்களிலிருந்து பிரேம்களை உருவாக்குதல்

நிலையான படங்கள் மற்றும் ஒலியிலிருந்து வீடியோக்களைத் திருத்துவதற்கான நேரம் இது. இது பின்வரும் ஸ்கிரிப்ட் மூலம் செய்யப்படுகிறது:

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

ஆடியோ கோப்பின் கால அளவு முதலில் பயன்பாட்டால் தீர்மானிக்கப்படுகிறது என்பதை நினைவில் கொள்ளவும் சாக்ஸி, பின்னர் தேவையான நீளத்தின் வீடியோ திருத்தப்பட்டது. நான் கண்டறிந்த அனைத்து பரிந்துரைகளும் எளிமையானவை: கொடிக்குப் பதிலாக -t ${duration} கொடி பயன்படுத்தப்படுகிறது - குறுகிய. உண்மையாக ffmpeg mp3 இன் நீளத்தை தோராயமாக தீர்மானிக்கிறது, மேலும் எடிட்டிங் செய்யும் போது, ​​ஆடியோ டிராக்கின் நீளம் வீடியோ டிராக்கின் நீளத்திலிருந்து (ஒன்று அல்லது இரண்டு வினாடிகள்) வேறுபடலாம். முழு வீடியோவும் ஒரே சட்டத்தைக் கொண்டிருந்தாலும் பரவாயில்லை, ஆனால் எல்லையில் குறுக்கீடுகளுடன் அத்தகைய வீடியோவை ஒட்டும்போது, ​​மிகவும் விரும்பத்தகாத திணறல் விளைவுகள் ஏற்படும்.

mp3 கோப்பின் கால அளவை தீர்மானிக்க மற்றொரு வழி பயன்படுத்த வேண்டும் mp3info. அவளும் தவறு செய்கிறாள், சில சமயங்களில் ffmpeg விட அதிகமாக கொடுக்கிறது mp3info, சில நேரங்களில் அது வேறு வழி, சில நேரங்களில் அவர்கள் இருவரும் பொய் சொல்கிறார்கள் - நான் எந்த வடிவத்தையும் கவனிக்கவில்லை. மற்றும் இங்கே சாக்ஸி சரியாக வேலை செய்கிறது.

இந்த பயனுள்ள பயன்பாட்டை நிறுவ, இதைச் செய்யுங்கள்:

sudo apt-get install sox libsox-fmt-mp3

ஸ்லைடுகளுக்கு இடையில் மாற்றங்களைச் செய்தல்

மாற்றம் என்பது ஒரு சிறிய வீடியோ ஆகும், அதில் ஒரு ஸ்லைடு மற்றொன்றாக மாறும். அத்தகைய வீடியோக்களை உருவாக்க, ஸ்லைடுகளை ஜோடிகளாக எடுத்து பயன்படுத்துகிறோம் ImageMagick ஒன்றை மற்றொன்றாக மாற்றவும்:

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

சில காரணங்களால், ஸ்லைடு புள்ளிகளுடன் சிதறடிக்கப்பட வேண்டும் என்று நான் விரும்பினேன், பின்னர் அடுத்த ஸ்லைடு புள்ளிகளிலிருந்து சேகரிக்கப்படும், இதற்காக நான் ஒரு ஸ்கிரிப்டை எழுதினேன். fade.pl கொண்ட ImageMagick, ஒரு உண்மையான லினக்ஸ் பயனர் எந்தவொரு சிறப்பு விளைவையும் உருவாக்குவார், ஆனால் சிதறலுடன் எனது யோசனையை யாராவது விரும்பினால், இங்கே ஸ்கிரிப்ட் உள்ளது:

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

முடிக்கப்பட்ட வீடியோவை நாங்கள் ஏற்றுகிறோம்

இப்போது எங்களிடம் அனைத்து துண்டுகளும் உள்ளன. அட்டவணைக்குச் செல்லவும் கிளிப்புகள் இரண்டு கட்டளைகளைப் பயன்படுத்தி முடிக்கப்பட்ட திரைப்படத்தை இணைக்கவும்:

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

உங்கள் நன்றியுள்ள மாணவர்களைப் பார்த்து மகிழுங்கள்!

ஆதாரம்: www.habr.com

கருத்தைச் சேர்