Python 如何将从循环录制的视频保存为不同的文件?
我正在使用opencv和python在循环中录制视频。我已经设法让它将循环中的所有视频录制并保存到单个输出文件中,但我的目标是将循环中录制的每个视频保存为不同的文件,并将日期和时间作为每个视频的标识符。我不太使用python,我相信有一种简单的方法可以做到这一点,但我就是找不到。非常感谢您的帮助Python 如何将从循环录制的视频保存为不同的文件?,python,opencv,video-capture,Python,Opencv,Video Capture,我正在使用opencv和python在循环中录制视频。我已经设法让它将循环中的所有视频录制并保存到单个输出文件中,但我的目标是将循环中录制的每个视频保存为不同的文件,并将日期和时间作为每个视频的标识符。我不太使用python,我相信有一种简单的方法可以做到这一点,但我就是找不到。非常感谢您的帮助 import cv2 import time as t1 import numpy as np def save_video(outPath,fps,mirror=False): cap =
import cv2
import time as t1
import numpy as np
def save_video(outPath,fps,mirror=False):
cap = cv2.VideoCapture(0)
currentFrame = 0
width = cap.get(cv2.CAP_PROP_FRAME_WIDTH) # float
height = cap.get(cv2.CAP_PROP_FRAME_HEIGHT) # float
fourcc = cv2.VideoWriter_fourcc(*"XVID")
out = cv2.VideoWriter(outPath, fourcc, 20.0, (int(width), int(height)))
while (cap.isOpened()):
ret, frame = cap.read()
if ret == True:
if mirror == True:
frame = cv2.flip(frame, 1)
out.write(frame)
cv2.imshow('frame', frame)
else:
break
if cv2.waitKey(1) & 0xFF == ord('q'):
break
currentFrame +=1
cap.release()
out.release()
cv2.destroyAllWindows()
date_string = t1.strftime("%Y-%m-%d-%H:%M")
count=0
while(True):
if count < 6:
print('Recording started: recording video number ' + str(count))
save_video('/Documents/0222_video_recordings/video' + date_string + '.avi',
30.0,mirror=True)
count += 1
在每个迭代中选择不同的文件名 例如:
save_video('/Documents/0222_video_recordings/video_' + str(count) + '_' + date_string + '.avi',
我可以帮助你,但我的回答没有多大用处。。。。。。。 您可以使用此代码
import cv2
codec = cv2.VideoWriter_fourcc("*XVID")
# out = cv2.VideoWriter("out.avi", codec, frame speed, frame size)
out = cv2.VideoWriter("out.avi", codec, 10.0, (640,480))
i = 0
cap = cv2.VideoCapture(0)
while True:
ret, frame = cap.read()
if ret == True:
cv2.VideoWriter("out{}.avi".format(i),fourcc, 10.0, (640,480)).write(frame)
i = i + 1
cv2.imshow("frame",frame)
if cv2.waitKey(5) & 0xFF == ord("q"):
break
cap.release()
out.release()
cv2.destroyAllWindows()
你能说得更具体些吗?你已经知道如何将视频写入文件了,对吧?是的,但是如果我运行这段代码,它从六个视频中捕获的每一个视频都会保存到同一个文件中。我希望每个视频都保存到一个单独的文件,就是这样!非常感谢:请正确格式化您的代码。虽然此代码可能会解决问题,但如何以及为什么解决此问题将真正有助于提高您的文章质量,并可能导致更多的投票。请记住,你是在将来回答读者的问题,而不仅仅是现在提问的人。请在回答中添加解释,并说明适用的限制和假设。