Skip to content
Abhishek Thakur edited this page Apr 19, 2020 · 92 revisions

VidGear Logo

What is VidGear?

VidGear is a powerful python Video Processing library built with multi-threaded Gears(a.k.a APIs) each with a unique set of trailblazing features. These APIs provides a easy-to-use, highly extensible, and multi-threaded wrapper around many underlying state-of-the-art libraries such as OpenCV ➶, FFmpeg ➶, starlette ➶, picamera ➶, pafy ➶, pyzmq ➶ and python-mss ➶. TL;DR, VidGear is an ultrafast, compact, flexible and easy-to-adapt complete Video Processing Python Library.

 

Why is VidGear a thing?

The original motivation and thinking behind creating this project was to build an ultrafast extensible and bugfree python Video Processing library with experimental features like real-time Video-Stabilization, lossless Video-Encoding, and Multi-Threading, etc. But also keeping it simple at the same time, thereby it must let programmers and software developers to easily integrate and perform complex Video Processing tasks in their existing or new applications, without going through various underlying python library's documentation independently and by using just a few lines of code. continue ...

 

Gears, What are these?

VidGear is built with ultrafast ➶ multi-threaded Gears each with some unique function/mechanism. Each Gear is designed exclusively to handle/control different device/application specific video streams, network streams, and media encoders. These Gear APIs provides an easy-to-use, highly extensible, and multi-threaded + asyncio wrapper around many underlying various python libraries to exploit their features and functions directly while providing robust error-handling.

These Gears can be classified as follows:

A. VideoCapture Gears:

  • CamGear: Targets various IP-USB-Cameras/Network-Streams/YouTube-Video-URL.
  • PiGear: Targets various Raspberry Pi Camera Modules.
  • ScreenGear: Enables ultra-fast Screen Casting.
  • VideoGear: A common API with Video Stabilizer wrapper.

B. VideoWriter Gear:

  • WriteGear: Handles easy Lossless Video Encoding and Compression.

C. Network Gears:

  • NetGear: Targets flexible video-frames and data transfer between interconnecting systems over the network.

  • Asynchronous Network Gears:

    • WebGear: ASGI Video Server that transfers live video frames to any web browser on the network.
    • NetGear_Async Fast, Memory-Efficient Asyncio video-frame messaging framework.

 

Need Help?

 

Clone this wiki locally