常规的视频操作主要有:缩小视频分辨率,分辨率不变缩小视频保存空间,加快视频播放速度等功能。不得不说,利用Python及其相应的第三方库,能使得很多功能变的实现变得更加便捷。
利用Python的第三方库opencv,实现上述的常规视频操作的代码如下所示。后面将对代码段中各语句块功能进行详细描述。
import cv2
from cv2 import VideoWriter,VideoWriter_fourcc
video_root ="D:/yuanlei/test.avi"
out_root = "D:/yuanlei/out.avi"
cap = cv2.VideoCapture(video_root)
fps = cap.get(cv2.CAP_PROP_FPS)
video_width = cap.get()
video_height = cap.get()
resize_width = 1280
resize_height = 960
double_fps = 2*fps
fourcc = cv2.VideoWriter_fourcc('m','p','4','v')
videoWriter = cv2.VideoWriter(out_root,fourcc,fps,(1280,960))
success = cap.isOpened()
while (success):
success,frame = cap.read()
print("Read a new frame:",success)
if not success:
break
frame = cv2.resize(frame,(1280,960))
videoWriter.write(frame)
videoWriter.release()
</