Live video streaming over network with OpenCV and (ZMQ or TCP)
Project description
Imagiz
Fast and none blocking live video streaming over network with OpenCV and (ZMQ or TCP).
Install
pip3 install imagiz
ZMQ Client
import imagiz
import cv2
client=imagiz.Client("cc1",server_ip="localhost")
vid=cv2.VideoCapture(0)
encode_param = [int(cv2.IMWRITE_JPEG_QUALITY), 90]
while True:
r,frame=vid.read()
if r:
r, image = cv2.imencode('.jpg', frame, encode_param)
client.send(image)
else:
break
ZMQ Server
import imagiz
import cv2
server=imagiz.Server()
while True:
message=server.recive()
frame=cv2.imdecode(message.image,1)
cv2.imshow("",frame)
cv2.waitKey(1)
TCP Client
import imagiz
import cv2
vid=cv2.VideoCapture(0)
client=imagiz.TCP_Client(server_port=9990,client_name="cc1")
encode_param = [int(cv2.IMWRITE_JPEG_QUALITY), 90]
while True:
r,frame=vid.read()
if r:
r,image=cv2.imencode('.jpg',frame, encode_param)
response=client.send(image)
print(response)
TCP Server
import imagiz
import cv2
server=imagiz.TCP_Server(9990)
server.start()
while True:
message=server.receive()
frame=cv2.imdecode(mmessage.image,1)
cv2.imshow("",frame)
cv2.waitKey(1)
Client Options
| Name | Description |
|---|---|
client_name |
Name of client |
server_ip |
Ip of server default value is localhost |
server_port |
Port of server default value is 5555 |
request_timeout |
how many milliseconds wait to resend image again |
request_retries |
how many time retries to send an image before client exit |
generate_image_id |
image_id is unique and ordered id that you can use for save data on disk or db also it is show time of image sended by client |
time_between_retries |
On TCP client show time between retries |
Server Options
| Name | Description |
|---|---|
Port |
Port of server |
listener |
Number of listening threads.default value is 10 |
Message Class
| Name | Description |
|---|---|
image |
Byte of image |
client_name |
Name of client |
image_id |
If disable generate_image_id it will be 0 |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
imagiz-0.5.tar.gz
(4.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
imagiz-0.5-py2-none-any.whl
(4.1 kB
view details)
File details
Details for the file imagiz-0.5.tar.gz.
File metadata
- Download URL: imagiz-0.5.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.0 pkginfo/1.5.0.1 requests/2.20.0 setuptools/42.0.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
797dca55bef4d674c04837b7ac0bcd5eb2c324270bdc0896ecc051b595614649
|
|
| MD5 |
b3d1d36bfc9fa224af8b7839217d9218
|
|
| BLAKE2b-256 |
5da51c12506481637f785568ee9981bdf3b5a4e6c87a347f91cc672f11932908
|
File details
Details for the file imagiz-0.5-py2-none-any.whl.
File metadata
- Download URL: imagiz-0.5-py2-none-any.whl
- Upload date:
- Size: 4.1 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.0 pkginfo/1.5.0.1 requests/2.20.0 setuptools/42.0.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6d5d01beda48cbfbdf5f67eb0dc8408c641ef5c4d8ded3a31e9019b39c8d9f1
|
|
| MD5 |
46ed60bb88778df21a2adad805c2c0ac
|
|
| BLAKE2b-256 |
eac3b61bb285f096af74fac7e5988cee3e56de3c66df208544d97df76dc46cd4
|