A simple Server/Client implementation of a screen sharing application done with Python3.
The TCP/UDP application works on Windows 10 and TCP application works on MacOS Mojave Version 10.14.6.
Please note that there may still be some bugs with one to many connections as this is still under development
- OpenCv
- Mss
- Numpy
- Tkinter
- Pickle
- Zlib
You can install the requirements with the following command:
pip3 install -r requirements.txt
You will need to get the hostname of your computer. You can do this by executing the following command in a Windows/MacOS terminal.
hostname
-
TCPServer.py
- The default port assigned is
12345
- The default type assigned is
THREAD
- The default compression_level assigned is
1
- The default screen capture resolution is
720 x 480
- The default full screen option assigned is
0
(no full screen).
port := any available port
type := LIST | THREAD
compression_level := [1-6]
full_screen := 0 | 1
python3 TCPServer.py
python3 TCPServer.py port type
python3 TCPServer.py port type compression_level
python3 TCPServer.py port type compression_level full_screen
- The default port assigned is
-
TCPClient.py
- There are no default assignments. You need to pass the hostname and port as arguments.
python3 TCPClient.py hostname port
- There are no default assignments. You need to pass the hostname and port as arguments.
-
UDPServer.py
- The default port assigned is
12345
- The default screen capture resolution is
720 x 480
port := any available port
Available Commands
python3 UDPServer.py
python3 UDPServer.py [port]
python3 UDPServer.py [host] [port]
python3 UDPServer.py r [width] [height]
python3 UDPServer.py [host] [port] [width] [height]
- The default port assigned is
-
UDPClient.py
python3 UDPClient.py
python3 UDPClient.py [host]
python3 UDPClient.py [host] [port]