แยกทุกเฟรมจากไฟล์วิดีโอเป็นรูปภาพใน OS X


13

สิ่งที่ฉันต้องการจะทำคือดึงทุก ๆ ไฟล์วิดีโอและส่งออกภาพ

ฉันลองใช้คำสั่งของ VLC ผ่านทางเทอร์มินัลอย่างไรก็ตามดูเหมือนว่าจะข้ามเฟรมแม้ว่าฉันจะปิด "ข้ามเฟรม" ฉันเดาว่า MacBook Pro i7 ของฉันช้าเกินไป ดูเหมือนว่าแปลกที่ฉันไม่สามารถเล่นไฟล์วิดีโอโดยไม่ข้ามเฟรมได้ ยังไงมีทางเลือกอื่นที่จะทำให้ฉันได้ทุกเฟรมหรือไม่? ดูเหมือนว่า vlc พยายามที่จะทำในเวลาจริงซึ่งอาจเป็นปัญหาหากทำงานบนเครื่องที่ช้า

นี่คือคำสั่ง VLC ที่ฉันใช้:

/Applications/VLC.app/Contents/MacOS/VLC /Users/name/Downloads/complete/video.mkv --video-filter=scene --scene-prefix=movie --scene-ratio=1 --scene-path=/folder --start-time=1035 --stop-time=1100 --no-skip-frames

ดาวน์โหลดและลงทะเบียน QuickTime 7 ของ Apple หนึ่งในตัวเลือกส่งออกคือการส่งออกแต่ละเฟรมเป็น JPEG, PNG และอื่น ๆ
MicroMachine

[@MicroMachine] หมายเหตุ: การส่งออกมีเฉพาะในรุ่น QuickTime ของ Apple เท่านั้น 7. goo.gl/LLmCHE
emallove

คำตอบ:


16

ผมจะทำมันด้วย FFmpeg ซึ่งคุณสามารถได้รับผ่านHomebrewหรือมิฉะนั้นffmpegX

ในกรณีแรกที่ติดตั้ง Homebrew brew install ffmpegแล้ววิ่ง สิ่งนี้จะต้องใช้ Xcode และการสร้างจากแหล่งซึ่งอาจเป็นค่าใช้จ่ายเล็กน้อยสำหรับความต้องการแบบง่าย ๆ ของคุณ

ในกรณีที่สองให้ติดตั้ง.appและใช้ffmpegรุ่นที่ให้มาด้วยอย่างไรก็ตามโปรดทราบว่ารุ่นนี้มาจากปี 2549 ดังนั้นจึงอาจไม่สามารถใช้งานได้กับไฟล์อินพุตทั้งหมด

/Applications/ffmpegX.app/Contents/Resources/ffmpeg

มันใช้งานได้กับคลิป h.264 / MP4 สำหรับฉัน


ไม่ว่าจะใช้ FFmpeg เพื่อแสดงผลแต่ละเฟรม:

ffmpeg -i /path/to/video.mkv /path/to/output-%04d.jpg

คุณสามารถใช้pngแทนjpgผลลัพธ์แบบไม่สูญเสียและเปลี่ยนหมายเลขใน%04dหากคุณต้องการตัวเลขเพิ่มเติมเมื่อไฟล์ยาวขึ้น

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