Merge pull request #164 from srinjoy-26/sr

screen recorder
This commit is contained in:
Advaita Saha 2022-10-07 13:55:29 +05:30 committed by GitHub
commit b6823fcb7e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 62 additions and 0 deletions

View File

@ -0,0 +1,39 @@
# Screen-recorder
## Introduction
This project , records the screen , whatever you are doing and to stop recording you need to press 'Q'. It saves the video in mp4 format with the file name of date and time when it is being recorded.
## Tech stack
The project is made using python.
## Demonstration video - here is a view of the project
<https://user-images.githubusercontent.com/91176055/159889632-837f567b-d931-4069-9e0d-251b825b05a2.mp4>
## Install dependencies
- install Python 3.8.3 or above
- Further install these packages using terminal:
```bash
pip install Pillow numpy opencv-contrib-python pywin32
```
## Quick start (how to run locally)
- Clone this repository:
```bash
git clone https://github.com/metafy-social/daily-python-scripts.git
```
- Change directory:
```bash
cd daily-python-scripts
cd Screen-recorder
```
- Find main.py and run it.

View File

@ -0,0 +1,23 @@
import datetime
import cv2
from PIL import ImageGrab
import numpy as np
from win32api import GetSystemMetrics
width = GetSystemMetrics(0)
height = GetSystemMetrics(1)
time_stamp = datetime.datetime.now().strftime('%Y-%m-%d %H-%M-%S')
file_name = f'{time_stamp}.mp4'
fourcc = cv2.VideoWriter_fourcc('m', 'p', '4', 'v')
captured_video = cv2.VideoWriter(file_name, fourcc, 20.0, (width, height))
while True:
img = ImageGrab.grab(bbox=(0, 0, width, height))
img_np = np.array(img)
img_final = cv2.cvtColor(img_np, cv2.COLOR_BGR2RGB)
cv2.imshow('Screen Recorder', img_final)
captured_video.write(img_final)
if cv2.waitKey(10) == ord('q'):
break