Я новичок в python и пытаюсь сделать переигровку для потоковых игр. Учить себя, как я иду. Код предназначен для переименования и воспроизведения новейшего видеоклипа из папки. Нужно продолжать бегать и проигрывать только одно новейшее видео. Это то, что я до сих пор. Он устанавливает каталог. Удаляет файл с именем replay.mp4 (возникают проблемы, если нет файла с именем replay.mp4). Затем измените имя нового файла на replay.mp4 и воспроизведите его в масштабированном окне и закройте, когда закончите. Это работает, но все равно выдает ошибку после закрытия (AttributeError: у объекта 'NoneType' нет атрибута 'shape').
Как я могу исправить свои ошибки и запустить непрерывность, но не повторять видео
Спасибо
См. Код ниже:
import os
import glob
import numpy as np
import cv2
os.chdir('C:/Users/Main/Videos/PUBG')
os.remove('replay.mp4')
newest = max(glob.iglob('*.[Mm][Pp]4'), key=os.path.getctime)
replay = ('C:/Users/Main/Videos/PUBG/replay.mp4')
os.replace((newest),(replay))
cap = cv2.VideoCapture((replay))
def rescale_frame(frame, percent=25):
width = int(frame.shape[1] * percent/ 100)
height = int(frame.shape[0] * percent/ 100)
dim = (width, height)
return cv2.resize(frame, dim, interpolation =cv2.INTER_AREA)
while True:
rect, frame = cap.read()
frame25 = rescale_frame(frame, percent=25)
cv2.imshow('frame25', frame25)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()