Я пытался сделать Screen Recorder с python. Код работает просто отлично и, кажется, записывает экран. Но проблема возникает, когда я пытался открыть сохраненный выходной файл (.mkv). Мой проигрыватель по умолчанию VL C не может идентифицировать вход, показывающий результаты, показанные ниже в приглашении:
VLC can't recognize the input's format:
The format of 'file:///C:/Users/user/Desktop/blocker/Output.mkv' cannot be detected. Have a look at the log for details.
Вот код, который я получил:
import numpy as np
import cv2
#For windows users import this:
from PIL import ImageGrab
#Four character code object for video writer
code = cv2.VideoWriter_fourcc(*'XVID')
#Video writer object
out = cv2.VideoWriter("Output.mkv",code,5.0,(1366,786))
while True:
#Capture the computer Screen
img = ImageGrab.grab()
#Convert image to numpy array
img_np = np.array(img)
#Convert image from BGR to RGB
frame = cv2.cvtColor(img_np,cv2.COLOR_BGR2RGB)
#Show image on OpenCV frame
cv2.imshow("screen",frame)
#Write fame to video writer
out.write(frame)
if cv2.waitKey(1)==27:
break
out.release()
cv2.destroyAllWindow()