In this blog, we will learn how to record any window using OpenCV-Python.
Installing Libraries:
- To install PIL and pywin32, write
in the cmd(See here). pywin32 will install win32gui, win32api, and win32con. - For installing winGuiAuto, download winGuiAuto.py from here. Save this as winGuiAuto.py in the python -> lib -> site-packages.
Steps:
- Create the window that you want to record (I used cv2.imshow() for that)
- Give the window name that you want to record in winGuiAuto.findTopWindow()
- Keep the window on top and set its position using win32gui.SetWindowPos()
- Get the coordinates of the window using win32gui.GetWindowPlacement()
- Grab an image of the area using ImageGrab.grab()
- Append all these images into a list.
- Create a VideoWriter object using cv2.VideoWriter()
- Convert each image color and save it.
Code:
If you want to make a .gif file, uncomment the last part.
Note: This works well for windows 8.1, but you might find some difficulty in capturing full window in windows 10.
Hope you enjoy reading. If you have any doubt/suggestion please feel free to ask and I will do my best to help or improve myself. Good-bye until next time.