FFMPEG

Commanr for recording:

ffmpeg -r 25 -f x11grab -s 1920x1080 -i :0.0 -f alsa -i default -c:v libx264rgb -crf 0 -preset ultrafast /home/david/Files/Pictures/ScreenCasts/screen_cast_$(date +%Y%m%d-%H%M%S).mp4

Med snemanjem je CPU kar obremenjen 110% - 150% , file pa je velik 50MB/min
Nato narediš convert:

ffmpeg -i input_file.mp4 -c:v libx264 -crf 35 -preset medium -vf format=yuv420p output_file.mp4

Če video nalagaš na YT ali pa ga gledaš v ne-win predvajalnikih, potem lahko tudi ‘-cvf format=yuv420p’ izpustiš.

-crf -preset size MB/min Kvaliteta?
25 medium 3.5 ni popačenja super je
35 medium 2.2 ja na meji OK
35 veryslow 2.1 bolje, dolgo traja conv.

Table: Vpliv koeficientov pri konverziji. {#tbl:ffmpeg-conversin}

STABILIZACIJA VIDEOPOSNETKA

Za stabilizacijo video posnetka najprej ustvariš datoteko s podatki o premikanju kamere:

ffmpeg -i input.mp4 -vf vidstabdetect=shakiness=7 -f null -

v tem ukazu je shakiness podatek koliko se trese kamera (1 je skoraj nič, 10 je da se kamera zelo trese).

Prejšnji ukaz ustvari datoteko transforms.trf, ki ga v naslednjem ukazu uporabimo pri stabilizaciji videoposnetka

ffmpeg -i input.mp4 -vf vidstabtransform=smoothing=30:zoom=5:input="transforms.trf" stabilized.mp4

pri čemer je:

  • smoothing: število slik pri povprečenju premikanja kamere (npr.: 10 pomeni, da bo vzel 10 slik prej in 10 po tisti sliki za katero izračunava stabilizacijo) Priporočljivo je izbrati FPS/2.
  • zoom: nastavi % povečave. S tem parametrom damo stabilizatorju nekaj prostora v katerem lahko išče primerne sličice za generiranje stabilne slike. Seveda bo video nekoliko povečan in bomo izbubili nekaj slikovnih točk.

IMAGES

Nekaj podatkov o fotografiji (resulucija)

file img1.png

img1.png: PNG image data, 1200 x 800, 8-bit/color RGB, non-interlaced

Rescale image

convert img1.png -resize 1000x800 res_img1.png (ohrani razmerje stranic)
convert img1.png -resize 1000x800! res_img1.png (ne ohrani razmerja stranic)
convert IR_senzor2.png -resize x540 IR_senzor3.png

ls img* | xargs -I{} convert {} -resize 1200x800! con_{} (za vse fotke ki se začnejo s con_)

STICH

4x4 matrika

fmpeg -i con_img1.png -i con_img2.png -i con_img3.png -i con_img4.png -filter_complex "[0:v][1:v][2:v][3:v]xstack=inputs=4:layout=0_0|w0_0|0_h0|w0_h0[v]" -map "[v]"  output.png