ฉันจะสร้างวิดีโอตามช่วงเวลาจากชุดภาพถ่ายใน Linux ได้อย่างไร


19

ฉันต้องการสร้างช่วงเวลาจากคอลเลกชันของรูปภาพภายใต้ Ubuntu ฉันต้องการสร้างวิดีโอ HD และเพิ่มซาวด์แทร็ก


ฉันไม่ได้เห็นสิ่งนั้น ฉันสามารถลบคำถามนี้และโพสต์คำตอบของฉันที่นั่น ไม่เป็นไร?
Frederico Schardong

ฉันไม่แน่ใจว่านี่เป็นไซต์ stackexchange ที่ดีที่สุดสำหรับสิ่งนี้หรือไม่ ฉันแค่ต้องการแบ่งปันสิ่งที่ฉันทำ
Frederico Schardong

มีคำถามที่คล้ายกันในการเป็นaskubuntu.com คำตอบส่วนใหญ่จะกล่าวถึงที่นี่ในเวลาที่เขียน แต่อาจมีการเปลี่ยนแปลงในอนาคตแน่นอน
Anarcat

คำตอบ:


11

Ffmpeg จะทำมัน หากคุณมีภาพimg001.jpg, img002.jpg, img003.jpg, ...แล้วในบรรทัดคำสั่งทำ:

ffmpeg -i img*.jpg output.mpeg

มีตัวเลือกเพิ่มเติมในffmpeg --helpหรือหน้าคนหรือเว็บ สิ่งเหล่านี้ช่วยให้สามารถควบคุมอัตราเฟรมและรูปแบบเอาต์พุต


การใช้สิ่งนี้ทำให้เกิดข้อผิดพลาดสำหรับฉันเนื่องจากมันพิจารณา.jpgไฟล์หลังเช่นไฟล์เอาต์พุต ฉันได้รับFile 'DSCF6134.JPG' already exists. Overwrite ? [y/N]- ไม่ดีนัก วิธีการแก้ปัญหาของฉันคือการสร้างรายการไฟล์ที่มีแล้วโหลดมันด้วย\ls *.JPG | sed "s/^/file '/;s/$/'/" > files.txt ffmpeg -f concat -i files.txt output.mpeg
anarcat

สำหรับรุ่น ffmpeg อื่น ๆ รุ่นต่อไปนี้จะทำงานโดยไม่พยายามแทนที่ภาพ:ffmpeg -pattern_type glob -i "picture*.jpg" output.mpeg
Patrick R.

9

อันดับแรกเราเปลี่ยนชื่อไฟล์ * .JPG ทั้งหมดตามวันที่สร้าง บางครั้งกล้องเปลี่ยนชื่อไฟล์หรือแค่สั่งซื้อมันก็ไม่ใช่สิ่งที่เราต้องการ อย่างไรก็ตามการเปลี่ยนชื่อพวกเขาตามวันที่สร้างจะทำงานเสมอ:

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

หลังจากนั้นเราใส่รายการนี้ในไฟล์:

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

จากนั้นใช้mencoderสร้างAVIวิดีโอโดยใช้ 20 fps โปรดทราบว่าการทำเช่นนี้จะสร้างไฟล์วิดีโอขนาดใหญ่โดยปกติจะมีขนาดใกล้เคียงกับภาพทั้งหมดที่รวมเข้าด้วยกัน

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

ฉันมักจะถ่ายภาพตามกำหนดเวลาด้วยความละเอียดต่ำสุดของกล้อง (5 MP) ซึ่งมีอัตราส่วน aspec 4: 3 ในการสร้างวิดีโอ 1080p ที่เหมาะสมภาพจะถูกเรียกใหม่อีกครั้งเป็นความกว้าง 1920 พิกเซลและจากนั้นฉันครอบตัดความสูงเป็น 1080 วิธีนี้ฉันจะไม่เปลี่ยนเนื้อหาของรูปภาพเพียงแค่ตัดภาพ:

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

เหตุผลที่ฉันใช้ mencoder เพื่อรวมภาพถ่ายเข้าด้วยกันก็เพราะฉันได้รับsegmentation faultพร้อมกับ ffmpeg


สำหรับ segfault มันจะมีประโยชน์ที่จะทราบรุ่นของ ffmpeg ของคุณ
Unapiedra

ถ้าชอบฉันคุณถ่ายใน 3: 2 (ภาพนิ่ง D750 ของฉันคือ 6016x4016) และต้องการมันใน 16: 9 (สำหรับวิดีโอ 4k) 3840x2160 คุณสามารถใช้ FFMPEG เพื่อ Pillerbox วิดีโอและรองรถรางสีดำด้านข้างด้วยคำสั่งนี้ - ffmpeg -i output.avi -qscale 0 -vf "scale = 3840: 2160: force_original_aspect_ratio = ลดลง, pad = 3840: 2160: (โอ๊ย - iw) / 2: (oh-ih) / 2" output-final.avi - วิดีโอ จะยิ่งใหญ่ขึ้น แต่จะไม่สูญเสียคุณภาพเนื่องจากการลดขนาด
Rob

ในffmpegคำสั่งของคุณ-sameqตอนนี้ตัวเลือกจะถูกแทนที่ด้วย-qscale 0
transang

3

เครื่องปั่นเป็นทางออกที่ดีถ้าคุณต้องรับมือกับการเคลื่อนไหวตามกำหนดเวลา (การทำไฮเปอร์เกิน) หรือวิดีโอที่ไม่คงที่ มันมีความสามารถในการติดตามการเคลื่อนไหวเพื่อให้คุณสามารถเลือกจุดคงที่ในการติดตามตลอดช่วงเวลา คุณสามารถแก้ไขปัญหาการหมุนได้


2

นอกจากนี้คุณยังอาจสนใจในโครงการtimelapse-darktable มันทำให้ง่ายต่อการโพสต์ภาพกระบวนการด้วย darktable และทำให้ช่วงเวลาของเซเรียอา คำแนะนำวิธีการใช้งานมีอยู่ที่นี่: https://code.google.com/p/timelapse-darktable/wiki/generateTimelapse


0

คุณสามารถใช้ mencoder ตัวเลือกค่อนข้างชัดเจน:

  • รายการไฟล์ภาพทั้งหมดของคุณ

หากทั้งหมดอยู่ในไดเร็กทอรี curent ที่มีชื่อที่สั่งซื้อและคุณต้องการรายการในไฟล์ /tmp/files.txt:

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

  • ใช้ mencoder ด้วยตัวเลือกที่เหมาะสม

หากคุณต้องการให้ไฟล์เอาต์พุตเป็น /tmp/test.avi ที่มี 30fps:

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


0

Kdenliveยังสามารถสร้าง timelapses โดยใช้Add Slideshow Clipเมนูตามที่อธิบายไว้ในบทช่วยสอนนี้

ตามที่เว็บไซต์เดียวกัน , Openshotมีการทำงานที่คล้ายกัน แต่ไม่แนะนำเพราะมันคือ "ทางรถมากเกินไป" ถึงกระนั้นหากมันเป็นโปรแกรมตัดต่อวิดีโอที่คุณต้องการคุณก็ยินดีที่จะรู้ว่าคุณสามารถลากและวางไฟล์ชื่อ (001.jpg ไปยัง NNN.jpg) อย่างถูกต้องลงในหน้าต่าง Openshot เพื่อนำเข้าสิ่งเหล่านั้นตามเวลาที่กำหนด


คู่มือนั้นมาจากปี 2014 OpenShot พิสูจน์ได้มากในช่วงไม่กี่ปีที่ผ่านมาตอนนี้มันน่าเชื่อถือมากขึ้น
vclaw
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.