Introduction¶
Gears , What are these?¶
VidGear is built on Standalone APIs - also known as Gears , each with some unique functionality. Each Gears is designed exclusively to handle/control/process different data-specific & device-specific video streams, network streams, and media encoders/decoders.
Gears allows users to work with an inherently optimized, easy-to-use, extensible, and exposed API Framework on top of many state-of-the-art libraries, while silently delivering robust error handling and unmatched real-time performance.
Gears Classification¶
These Gears can be classified as follows:
A. VideoCapture Gears¶
Basic Function: Retrieves
numpy.ndarray
frames from various sources.
- CamGear: Multi-Threaded API targeting various IP-USB-Cameras/Network-Streams/Streaming-Sites-URLs.
- PiGear: Multi-Threaded API targeting various Camera Modules and (limited) USB cameras on Raspberry Pis .
- ScreenGear: High-performance API targeting rapid Screencasting Capabilities.
- VideoGear: Common Video-Capture API with internal Video Stabilizer wrapper.
B. VideoWriter Gears¶
Basic Function: Writes
numpy.ndarray
frames to a video file or network stream.
- WriteGear: Handles Lossless Video-Writer for file/stream/frames Encoding and Compression.
C. Streaming Gears¶
Basic Function: Transcodes/Broadcasts files and
numpy.ndarray
frames for streaming.
You can also use WriteGear for streaming with traditional protocols such as RTMP, RTSP/RTP.
-
StreamGear: Handles Transcoding of High-Quality, Dynamic & Adaptive Streaming Formats.
-
Asynchronous I/O Streaming Gear:
-
WebGear: ASGI Video-Server that broadcasts Live MJPEG-Frames to any web-browser on the network.
-
WebGear_RTC: Real-time Asyncio WebRTC media server for streaming directly to peer clients over the network.
-
D. Network Gears¶
Basic Function: Sends/Receives data and
numpy.ndarray
frames over connected networks.
-
NetGear: Handles High-Performance Video-Frames & Data Transfer between interconnecting systems over the network.
-
Asynchronous I/O Network Gear:
- NetGear_Async: Immensely Memory-Efficient Asyncio Video-Frames Network Messaging Framework.