awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
abhiTronix avatar

abhiTronix/vidgear

0
View on GitHub↗
3,714 stars·285 forks·Python·Apache-2.0·13 viewsabhitronix.github.io/vidgear↗

Vidgear

VidGear is a high-performance Python video processing framework designed for capturing, transcoding, and manipulating video streams. It functions as a multi-protocol video streamer and a WebRTC streaming server, enabling the transfer of video frames over networks using RTSP, RTMP, RTP, and MJPEG protocols.

The project distinguishes itself through hardware-accelerated video transcoding and decoding using GPU backends like CUDA to reduce CPU load. It includes a cross-platform screen capture tool and a specialized system for establishing direct peer-to-peer media connections using WebRTC signaling.

The framework covers a broad range of capabilities, including hardware video acquisition from USB cameras and Raspberry Pi modules, real-time video processing via filtergraph pipelines, and multi-protocol video routing. It also provides tools for adaptive streaming, network traffic encryption, and disk-based video recording.

The system includes utilities for the automatic installation of required FFmpeg binaries based on the operating system.

Features

  • Real-Time Video Streaming Frameworks - Provides a comprehensive framework for capturing and broadcasting live video to web browsers and peer clients.
  • Video Processing Frameworks - Implements a high-performance Python framework for capturing, transcoding, and manipulating video streams using FFmpeg.
  • Cropped Screen Captures - Grabs frames from monitors in real-time using full-screen or specific area selection.
  • Filtergraph Pipeline Management - Executes complex filtergraph pipelines to flip, scale, or modify video streams in real time during ingestion.
  • Asynchronous Frame Queues - Processes video frames in a separate thread using a queue to prevent frame drops.
  • Multi-Protocol Video Streamers - Provides a system for transferring video frames across multiple network protocols including RTSP, RTMP, RTP, and MJPEG.
  • Real-Time Stream Transformations - Integrates custom processing logic to modify live video frames before transmitting them to remote peers.
  • Filtergraph Pipelines - Processes raw video frames through linked filtergraph pipelines for real-time scaling, flipping, and stabilization.
  • Hardware-Accelerated Video Pipelines - Utilizes hardware-accelerated video pipelines and complex filtergraphs for real-time media transformation.
  • Network Video Ingestion - Reads live video frames from network URLs using standard protocols like HTTP, RTSP, and RTMP.
  • Real-time Video Transcoding - Provides on-the-fly conversion of video formats and frames to ensure compatibility with receiving devices.
  • Live Video Broadcasting - Streams high-quality adaptive video formats or MJPEG frames to web browsers and peer clients.
  • Multi-Protocol Streaming - Pushes real-time frames to remote destinations using protocols like RTSP, RTP, and RTMP.
  • Unified Source Abstractions - Provides a single interface to access various cameras and streams for easy source switching.
  • Hardware-Accelerated Decoders - Offloads video decompression to CUDA or CUVID GPU backends to significantly reduce CPU utilization.
  • Hardware-Specific Video Capture - Accesses hardware cameras using system indexes and platform-specific demuxers to retrieve raw video frames.
  • Multi-Source Frame Ingestion - Interfaces with USB cameras, IP feeds, and screen captures for high-performance video frame ingestion.
  • GPU-Accelerated Video Decoding - Offloads pixel processing and decompression to CUDA or CUVID backends to reduce CPU utilization.
  • Hardware-Accelerated Transcoders - Leverages GPU hardware contexts like CUDA for high-performance video encoding and decoding.
  • ICE-Based Peer Connection Managers - Establishes low-latency peer-to-peer media connections using ICE, STUN, and TURN signaling protocols.
  • WebRTC Streaming - Provides a real-time asynchronous server for delivering audio and video streams to web browsers using WebRTC.
  • Multi-Threaded Video Capture - Reads frames from IP cameras, network streams, and hardware decoders using multi-threaded processing.
  • Non-Blocking Event Loops - Uses a non-blocking event-loop architecture to transfer high-speed video frames with minimal memory overhead.
  • Screen Capture Tools - Includes a utility for grabbing real-time frames from monitors or specific screen areas for processing.
  • Adaptive Segment Generation - Transcodes video files or real-time frames into chunked segments and manifest files for adaptive network playback.
  • Disk Video Recording - Saves processed frames to a video file using backends to ensure valid output formatting.
  • Image-to-Video Sequencing - Processes a series of images as a video stream using sequential patterns or globbing.
  • Video Color Converters - Changes the color representation of a video source to meet specific processing or display requirements.
  • Video File Encoding - Encodes real-time frames into compressed or uncompressed video files using specified bitrates and codecs.
  • Adaptive Segmented Transcoding - Converts entire video files into a sequence of smaller segments to enable efficient delivery over HTTP.
  • Subprocess-Based Pipelines - Executes heavy multimedia workloads, including decoding and filtergraphs, within isolated system subprocesses.
  • Audio-Video Mixing - Combines real-time video frames with audio tracks into a single multimedia stream.
  • Multi-Source Video Composition - Processes multiple simultaneous video inputs using complex filtergraphs to combine or manipulate streams.
  • Software Video Stabilization - Removes jitter and perturbations from incoming video frames using a sliding-window of feature anchors.
  • MJPEG Streaming - Streams live video frames to multiple web browser clients using a motion-JPEG delivery mechanism.
  • Video Stream Extraction - Retrieves live video frames and associated metadata from third-party streaming platforms.
  • Website Stream Pipelining - Pipelines live video frames and metadata from external streaming services through a specialized backend.
  • URL-Based Video Pipelining - Streams video content directly from a URL address for processing without requiring manual downloads.
  • Bidirectional Message Exchanges - Facilitates two-way communication streams for sending metadata and control signals between senders and receivers.
  • High-Performance Data Transfer - Uses high-performance asynchronous messaging to stream video frames between systems with low latency.
  • Asynchronous Event-Loop Streaming - Transfers high-speed video frames between servers and clients using asynchronous event loops to reduce system load.
  • Chunked Segment Deliverers - Implements chunked segment delivery to enable adaptive network playback of real-time video streams.
  • Traffic Distribution - Distributes video streams across network topologies using publish-subscribe or request-reply patterns.
  • Camera and Video Capture - Interfaces with Raspberry Pi camera modules and USB webcams using multi-threaded wrappers.
  • Audio and Video Processing - Provides a multi-threaded framework for video processing.
  • Audio Video Processing - Listed in the “Audio Video Processing” section of the Awesome Python awesome list.
  • Video Processing - Multi-threaded video processing framework.

Star history

Star history chart for abhitronix/vidgearStar history chart for abhitronix/vidgear

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does abhitronix/vidgear do?

VidGear is a high-performance Python video processing framework designed for capturing, transcoding, and manipulating video streams. It functions as a multi-protocol video streamer and a WebRTC streaming server, enabling the transfer of video frames over networks using RTSP, RTMP, RTP, and MJPEG protocols.

What are the main features of abhitronix/vidgear?

The main features of abhitronix/vidgear are: Real-Time Video Streaming Frameworks, Video Processing Frameworks, Cropped Screen Captures, Filtergraph Pipeline Management, Asynchronous Frame Queues, Multi-Protocol Video Streamers, Real-Time Stream Transformations, Filtergraph Pipelines.

Which projects share features with abhitronix/vidgear?

Projects with overlapping indexed features include: intel/media-driver — The Intel GPU Media Driver is a hardware-accelerated driver designed to facilitate video decoding, encoding, and… ffmpeg/ffmpeg — FFmpeg is a cross-platform multimedia framework designed for the recording, conversion, and streaming of audio and… datarhei/restreamer — Restreamer is a self-hosted video broadcast platform and RTMP streaming server. It functions as a live media… aiortc/aiortc — aiortc is a Python implementation of the WebRTC protocol, providing an asynchronous stack for real-time audio, video,… feross/simple-peer — simple-peer is a JavaScript library that provides a wrapper for WebRTC to simplify the establishment of peer-to-peer… grvydev/project-lightspeed — Project-Lightspeed is a low-latency video relay and WebRTC live streaming server. It functions as an OBS streaming…

Projects sharing features with Vidgear

These projects share indexed features with Vidgear. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • intel/media-driverintel avatar

    intel/media-driver

    1,215View on GitHub↗

    The Intel GPU Media Driver is a hardware-accelerated driver designed to facilitate video decoding, encoding, and transcoding operations on Intel graphics processing units. It functions as a low-level abstraction layer that enables media applications to offload compute-intensive processing tasks to dedicated graphics hardware engines through a standardized software interface. The driver distinguishes itself by providing a unified hardware abstraction layer that translates high-level media requests into platform-specific instructions across diverse graphics hardware generations. It manages comp

    C
    View on GitHub↗1,215
  • ffmpeg/ffmpegFFmpeg avatar

    FFmpeg/FFmpeg

    61,176View on GitHub↗

    FFmpeg is a cross-platform multimedia framework designed for the recording, conversion, and streaming of audio and video content. It functions as a comprehensive toolkit that provides both a command-line utility for direct media manipulation and a collection of low-level libraries for integration into custom applications. At its core, the project utilizes a packet-based stream engine and a format-agnostic abstraction layer to handle diverse media standards, containers, and network protocols. The framework distinguishes itself through a modular, graph-based filter execution model that allows f

    Caudiocffmpeg
    View on GitHub↗61,176
  • datarhei/restreamerdatarhei avatar

    datarhei/restreamer

    4,925View on GitHub↗

    Restreamer is a self-hosted video broadcast platform and RTMP streaming server. It functions as a live media processing gateway and a multi-destination stream relay, providing a web-based management interface to configure video codecs, hardware acceleration, and stream routing. The system enables multi-platform video streaming by duplicating a single live video source and forwarding it to various third-party broadcast services and external servers simultaneously. It also supports direct-to-website broadcasting, allowing users to host live content for private or public audiences via customizab

    HTMLffmpegffmpeg-apiffmpeg-server
    View on GitHub↗4,925
  • feross/simple-peerfeross avatar

    feross/simple-peer

    7,797View on GitHub↗

    simple-peer is a JavaScript library that provides a wrapper for WebRTC to simplify the establishment of peer-to-peer networking in the browser. It serves as a tool for creating direct device-to-device connections for the transmission of binary data and real-time media streaming. The library manages the exchange of strings and binary buffers through a data channel implementation and provides tools for sharing real-time audio and video tracks between peers. It covers the full lifecycle of peer connectivity, including signaling coordination, session description negotiation, and the gathering of

    JavaScript
    View on GitHub↗7,797
  • Compare all 30 related projects→