Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/yjg30737/pyqt-capturer

PyQt application which can capture/record certain area of screen
https://github.com/yjg30737/pyqt-capturer

camera capture capturer cv2 mss opencv-python pyqt pyqt-tutorial pyqt5 pyqt5-examples python python3 python37 qt qt5 qt5-examples record recorder

Last synced: about 1 month ago
JSON representation

PyQt application which can capture/record certain area of screen

Awesome Lists containing this project

README

        

# pyqt-capturer
PyQt application which can capture/record certain area of screen

## Requirements
* PyQt5 >= 5.15.1

## Setup
`pip3 install git+https://github.com/yjg30737/pyqt-capturer.git --upgrade`

## Included Packages
* mss - For record and capture
* opencv-python - For making video
* numpy - Converting image into array
* pyqt-timer-label - For recording timer
* pyqt-transparent-centralwidget-window - Main frame
* pyqt-svg-button - For supporting SVG
* pyqt-color-button - Used by Settings Dialog
* pyqt-color-picker - Used by Settings Dialog
* pyqt-find-path-widget - Used by Settings Dialog
* pyqt-toast

## Detailed Description

![image](https://user-images.githubusercontent.com/55078043/160047499-be3de7f6-663c-4d47-8309-69bdf1565314.png)

This is the camera app.

If you click the camera icon it will capture anything inside of the frame and save it as "sample.png" at script folder.

If you click the recorder icon, it will record anything inside of the frame and save it as "sample.mp4" at script folder. But result video is silent currently.

You can see the label next to recorder icon. That is elapsed time from starting record.

You can move/resize the frame.

Full screen feature is added from v0.2.1(basic, can't tell it is fully functional).

You can change the frame color and save path in "Settings". (pressing gear icon)

## Example
Code Sample
```python
from PyQt5.QtWidgets import QApplication
from pyqt_capturer import Capturer

if __name__ == "__main__":
import sys

app = QApplication(sys.argv)
ex = Capturer()
ex.show()
sys.exit(app.exec_())
```

Result

![image](https://user-images.githubusercontent.com/55078043/174037790-d08161cd-839e-407c-ac94-f1ecd1338ceb.png)

Captured image

![image](https://user-images.githubusercontent.com/55078043/174037898-e8b4b05e-7183-4de1-8043-e13bd53d0ef8.png)