ฉันสามารถจับภาพชุดของชื่อตามการบันทึกเวลาได้หรือไม่


0

ฉันประสบความสำเร็จในการจับภาพหน้าจอทุก ๆ 15 วินาทีโดยใช้คำสั่งด้านล่าง แต่ฉันต้องเชื่อมโยงภาพกับที่ที่อยู่ในวิดีโอที่ภาพหน้าจอมาจาก

% d ให้จำนวนเต็มกับฉัน แต่มีตัวแปรตัวกรองหรืออย่างอื่นที่คล้ายกันเพื่อรวมหรือจับภาพประทับเวลาของภาพในชื่อไฟล์เอาต์พุตหรือไม่?

c:\ffmpeg\bin>ffmpeg -i c:\files\video.mp4 -vf fps=1/15 c:\images\image_%d.png";

ผลผลิตปัจจุบันคือ:

c:\images\image1.png
c:\images\image2.png
c:\images\image3.png
...
c:\images\image999.png

ที่ต้องการออกเป็นบางสิ่งบางอย่างที่ชอบ:

c:\images\image_00-00-00.png    // Capture at start of video
c:\images\image_00-00-15.png    // Capture at 00:00:15
c:\images\image_00-00-30.png    // Capture at 00:00:30
c:\images\image_00-00-45.png    // Capture at 00:00:45
c:\images\image_00-01-00.png    // Capture at 00:01:00
...
c:\images\image_01-25-15.png    // Last capture

เท่าที่ฉันรู้ว่ามันเป็นไปไม่ได้ นี้น่าจะเป็นตั๋ว# 1452: ภาพที่ 2 เพื่อสนับสนุน t%
llogan

ฉันคิดว่าไม่ถึงแม้ว่าจะกลั่นกรองผ่านผลการค้นหา google แบบเก่า แต่ดูเหมือนว่าข้อมูลนั้นมีอยู่และหวังว่าจะมีใครบางคนคิดออกมา ขอขอบคุณ.
GDP

2
หากคุณเชื่อว่าเอาต์พุตแยกจากกัน 1/15 คุณสามารถสคริปต์เปลี่ยนชื่อได้ ง่อย แต่บางทีตัวเลือก
llogan

คำตอบ:


1

ตามที่บางคนเขียนไว้อาจไม่มีตัวเลือกสำหรับffmpegคำสั่งที่สามารถทำสิ่งที่คุณต้องการ บนเครื่อง linux ฉันขอแนะนำให้คุณใช้สคริปต์ต่อไปนี้

#!/bin/bash
interval=15 # interval between images in seconds

for ((i=0; i<$1; ++i)); do
timestamp=$(date -d @$((-3600+${i}*${interval})) +%H-%M-%S)
mv image${i}.png image_${timestamp}.png
done

exit 0

คุณสามารถโทรหามันในไดเรกทอรีพร้อมภาพเป็น

$ script_name NNN

ที่NNNเป็นจำนวนภาพทั้งหมด (ฉันคิดว่าคุณเริ่มนับด้วย 0 แทน 1 มันไม่ยาก)

อย่างที่คุณเห็นฉันพึ่งคำสั่ง linux dateซึ่งสามารถแปลงวินาทีเป็นชั่วโมง

เนื่องจากคุณดูเหมือนจะอยู่ในเครื่อง Windows จึงมีตัวเลือกสองทางวิธีใช้สคริปต์นี้

  1. เขียนมันลงในไฟล์แบตช์ของ Windows มีหัวข้อที่นี่ซึ่งกล่าวถึงวิธีการใช้คำสั่งคล้ายกับdateบน Windows

  2. ติดตั้งcygwinและเรียกใช้สคริปต์ข้างต้นจากบรรทัดคำสั่ง cygwin

  3. ใช้บรรทัด bash coomandแบบสแตนด์อโลนสำหรับเรียกใช้สคริปต์ด้านบน

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