Valkka
Valkka is a python media streaming framework
Create video streaming and surveillance solutions purely in Python. No need to go C++ ever again.
Some highlights of Valkka
Python3 API, while streaming itself runs in the background at the cpp level. Threads, semaphores, frame queues etc. are hidden from the API user.
Works with stock OnVif compliant IP cameras
Create complex filtergraphs for your streams - send stream to screen, to disk or to your module of choice via shared memory
Share decoded video with python processes across your Linux system
Plug in your python-based machine vision modules : libValkka is framework agnostic, so everything goes - pytorch, tensorflow, you name it!
Designed for massive video streaming : view and analyze simultaneously a large number of IP cameras
Recast the IP camera video streams to either multicast or unicast
Build graphical user interfaces with PyQt, interact machine vision with Qt’s signal/slot system and build highly customized GUIs
If you are not a developer and wonder why all this is supposed to be cool and the economic benefits of it (an investor perhaps), please take a look at the Valkka VMS whitepaper
Devs already involved knee-deep in the video streaming / machine vision business, might want to take a look at this presentation to see some of the typical video streaming / machine vision problems libValkka can solve for you.
This documentation is a quickstart for installing and developing with Valkka using the Python3 API.
This is the recommended learning process:
Start with the tutorial
Proceed with valkka-multiprocessing and the multiprocessing examples
After that, if you’re
into creating PyQt/PySide2 applications, take a look at the PyQt testsuite
more into cloud apps, check out valkka-streamer
For a desktop proof-of-concept program using Valkka, check out Valkka Live