Timelapse-t szeretnék létrehozni egy képgyűjteményből az Ubuntu alatt. HD videókat szeretnék készíteni, és ideális esetben hozzáadnék egy hangsávot.

Hozzászólások

  • Van ' t láttam. Törölhetem ezt a kérdést, és ott felteszem a válaszomat. Rendben van?
  • Még abban sem vagyok biztos, hogy ez-e a legjobb stackexchange webhely. Csak megosztani szeretném, amit megtette.
  • Hasonló kérdés merül fel a askubuntu.com oldalon. A válaszokra itt a cikk írásakor többnyire kitérünk, de ez talán természetesen a jövőben változhat.

Válasz

Az Ffmpeg meg fogja csinálni. Ha vannak képei img001.jpg, img002.jpg, img003.jpg, ..., majd a parancssorban tegye a következőket:

ffmpeg -i img*.jpg output.mpeg

További lehetőségek vannak a ffmpeg --help vagy man oldalak, vagy az internet. Ezek lehetővé teszik a képkockasebesség és a kimeneti formátum vezérlését.

Megjegyzések

  • Ennek használata hibát eredményez számomra, mivel az utóbbi .jpg fájlok, mint a kimeneti fájl. File 'DSCF6134.JPG' already exists. Overwrite ? [y/N] – nem olyan nagyszerű. Az én megoldásom az volt, hogy létrehoztam egy fájllistát a \ls *.JPG | sed "s/^/file '/;s/$/'/" > files.txt fájlban, majd betöltettem a következővel: ffmpeg -f concat -i files.txt output.mpeg.
  • Más ffmpeg verziókkal a következő verzió anélkül működik, hogy megpróbálná felülírni a képeket: ffmpeg -pattern_type glob -i "picture*.jpg" output.mpeg

Válasz

Először az összes * .JPG fájlt átnevezzük a létrehozás dátuma alapján. Néha a kamerák megváltoztatják a fájl nevét, vagy csak megrendelik őket, valahogy nem azt akarjuk. Átnevezésük a létrehozás dátuma alapján azonban mindig működik:

jhead -n%Y%m%d-%H%M%S *.JPG 

Ezt követően ezt a listát egy fájlba helyeztük:

ls -1tr | grep -v files.txt > files.txt 

Ezután a mencoder segítségével létrehozhat egy AVI videót 20 kép / mp sebességgel. Ne feledje, hogy ez hatalmas videofájlt generál, általában azonos méretű az összesített kép nagysága.

mencoder -nosound -noskip -oac copy -ovc copy -o output.avi -mf fps=20 "mf://@files.txt" 

Általában timelapse képeket készítek a legkisebb felbontással fényképezőgépem (5 MP), amelynek 4: 3 képarányú. Megfelelő 1080p felbontású videó előállításához a képet először 1920 pixel szélesre méretezzük, majd levágom 1080 magasságig. Így nem változtatom meg a fényképek “tartalmát, csak levágom:

ffmpeg -i output.avi -y -sameq -vf scale=1920:1440,crop=1920:1080 output-final.avi 

Azért használom a mencodert a képek összerakására, mert kaptam egy segmentation fault az ffmpeg-lel.

Megjegyzések

  • A szegfault számára hasznos lenne tudni az ffmpeg verzióját.
  • Ha hozzám hasonlóan 3: 2 arányban készítettél felvételt (a D750 állóképeim 6016×4016 képarányúak), és 16: 9 képarányban (4k videó esetén) 3840×2160-ra van szükséged, akkor az FFMPEG segítségével Pillerboxba helyezheted a videót, és kitöltheted a fekete villamosvonalakat. az oldalak ezzel a paranccsal – ffmpeg -i output.avi -qscale 0 -vf " scale = 3840: 2160: force_original_aspect_ratio = csökkenés, pad = 3840: 2160: (ow-iw) / 2: (oh-ih) / 2 " output-final.avi – A videó nagyobb lesz, de nem romlik a minősége, mivel ez kicsinyíti
  • A ffmpeg parancs, a -sameq opció helyébe a következő: -qscale 0

Válasz

Blender jó megoldás, ha mozgás timelapse (hiperlapse) vagy bizonytalan felvételekkel foglalkozik. Mozgáskövető képességekkel rendelkezik, így kiválaszthat egy rögzített pontot, amelyet az egész timelapse alatt követni kíván. Javíthatja a forgatással kapcsolatos problémákat is.

Válasz

A projekt is érdekelheti timelapse-darktable . Ez megkönnyíti a képek utólagos feldolgozását a sötétítővel, és időzítést készít a sorozatról. A használatára vonatkozó utasítások itt találhatók: https://code.google.com/p/timelapse-darktable/wiki/generateTimelapse

Válasz

Használhatja a mencodert. Az opciók meglehetősen egyértelműek:

  • sorolja fel az összes képfájlt.

Ha valamennyien a curent könyvtárban vannak rendezett nevekkel, és a listát a /tmp/files.txt fájlba kívánja helyezni:

ls -1 *jpg > /tmp/files.txt

  • Használja a mencodert a megfelelő opcióval.

Ha azt szeretné, hogy a kimeneti fájl az /tmp/test.avi legyen, 30 képkocka / s sebességgel :

mencoder -nosound -ovc lavc -lavcopts vcodec=mpeg4 -o /tmp/test.avi -mf type=jpeg:fps=30 mf://@/tmp/files.txt

Válasz

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük