python-vivotek
A Python library for Vivotek IP cameras.
Getting Started
Install
This library currently supports Python 3.4 and up.
pip3 install libpyvivotek
# Or for only the current user
pip3 install --user libpyvivotekUsage
from libpyvivotek import VivotekCamera
cam = VivotekCamera(host='192.168.1.123', port=443, usr='user', pwd='passw0rd',
digest_auth=True, ssl=True, verify_ssl=True, sec_lvl='admin')
print("Camera model is %s" % cam.model_name)
# Camera model is IB8369ASecurity Level
Four security levels are currently supported:
- anonymous
- viewer
- operator
- admin
Using the anonymous security level does not require a user or password. The operator or admin security level is required to set parameters.
Load password from Keyring
We can use Python Keyring to load the password rather than from a string.
# Install the package
pip install --user keyring
# Set the password using the command-line interface.
python -m keyring set camera user passw0rdimport keyring
from libpyvivotek import VivotekCamera
cam = VivotekCamera(host='192.168.1.123', port=443, usr='user',
pwd=keyring.get_password('camera', 'user'))
print("Camera model is %s" % cam.model_name)
# Camera model is IB8369AView a snapshot image
We can optionally specify the image quality to snapshot() from 1 to 5 with a default of 3.
from libpyvivotek import VivotekCamera
from PIL import Image
from io import BytesIO
import keyring
cam = VivotekCamera(host='192.168.1.123', port=443, usr='user',
pwd=keyring.get_password('camera', 'user'))
snapshot = Image.open(BytesIO(cam.snapshot(quality=3)))
snapshot.show()Getting parameters
cam.get_param('capability_api_httpversion')
# "0311b_1"
cam.get_param('capability_naudioin')
# "0"
cam.get_param('capability_protocol_https')
# "1"
cam.get_param('event_i0_enable')
# "1"
cam.get_param('motion_c0_enable')
# "1"Setting parameters
cam.set_param('event_i0_enable', 1)
# "1"
cam.set_param('event_i0_enable', 0)
# "0"

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.
