For a self hosted video streaming server, the strongest matches are chocobozzz/peertube (PeerTube is a comprehensive, self-hostable video platform that natively), owncast/owncast (Owncast is a self-hosted live streaming server that provides) and zlmediakit/zlmediakit (This is a high-performance media server and protocol gateway). mastodon/mastodon and arut/nginx-rtmp-module round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Self-hosted video streaming servers, media management systems, and open-source alternatives to commercial video hosting platforms.
PeerTube is a decentralized, open-source video hosting platform that enables users to operate independent, interoperable servers. By utilizing the ActivityPub protocol, it connects these servers into a global, federated network where users can follow channels, discover content, and interact across different instances. The platform is designed to function as a self-hosted video content management system, providing a community-driven alternative to centralized media services. What distinguishes PeerTube is its hybrid approach to content delivery and infrastructure management. It integrates peer
PeerTube is a comprehensive, self-hostable video platform that natively supports federated networking, live streaming, transcoding, and S3-compatible storage, making it the definitive open-source alternative to centralized video services.
Owncast is a self-hosted live streaming server that provides full control over broadcast infrastructure and audience data. It functions as an RTMP video streaming server, accepting incoming video feeds and distributing them to viewers through HLS-based segmented streaming. The platform includes a built-in, stateful web-based chat interface that enables real-time viewer engagement during broadcasts. The project distinguishes itself through deep integration with the decentralized Fediverse, allowing servers to automatically broadcast stream status updates and notify followers across distributed
Owncast is a self-hosted live streaming server that provides the core infrastructure for broadcasting and audience engagement, though it focuses specifically on live video rather than the broader video-on-demand library management found in platforms like PeerTube.
ZLMediaKit is a high-concurrency streaming engine designed to function as a protocol gateway and media server. It provides a native development kit for embedding streaming and transcoding capabilities directly into custom applications, supporting the ingestion, distribution, and recording of live video feeds across various network protocols. The platform distinguishes itself through a high-performance architecture that bridges legacy surveillance protocols with modern web-compatible streaming standards. It utilizes a thread-per-core execution model and zero-copy buffer management to maintain
This is a high-performance media server and protocol gateway designed for developers to build streaming infrastructure, rather than a complete, user-facing video-sharing platform with features like channel management or federated networking.
Mastodon is a self-hosted, decentralized social networking platform that functions as a microblogging application. It enables independent server instances to communicate and exchange social data through the standardized ActivityPub protocol, allowing users to participate in a global, interoperable network. The platform distinguishes itself through its federated architecture, which grants administrators full control over their community instances. This includes comprehensive tools for user moderation, account management, and the enforcement of community guidelines. The system is designed to ha
Mastodon is a decentralized microblogging platform focused on text and image-based social networking rather than a dedicated video-sharing or streaming platform designed for long-form content.
The NGINX RTMP module is a server-side extension that functions as a live video streaming engine. It enables the ingestion, processing, and distribution of real-time audio and video feeds, supporting both RTMP and HLS protocols to facilitate media delivery to multiple clients. The module distinguishes itself by integrating directly into the host server event loop, allowing for high-concurrency network input and output without blocking the main thread. It provides a toolkit for managing media streams through event-driven callbacks, which can trigger external process invocations for custom tran
This is a low-level server module for handling RTMP and HLS stream ingestion rather than a complete, user-facing video-sharing platform with features like channel management or federated networking.
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
This is a live streaming relay and broadcast management tool rather than a comprehensive video-sharing platform, as it lacks the federated networking, channel management, and persistent video library features required for a YouTube-like experience.
go2rtc is a media streaming server that functions as a protocol-agnostic gateway for video and audio feeds. It ingests media from diverse sources and redistributes them across multiple streaming standards, enabling compatibility between proprietary camera hardware and web-based playback clients. The system utilizes a centralized configuration schema to manage stream routing and lifecycle orchestration based on client demand. The platform distinguishes itself through its focus on low-latency delivery, utilizing peer-to-peer connections to facilitate sub-second playback directly within web brow
This is a low-latency media streaming server designed for real-time camera feeds and protocol translation, rather than a comprehensive video-sharing platform with features like channel management, federated networking, or user-facing content hosting.
MediaCMS is a self-hosted media content management system designed for hosting, organizing, and distributing video, audio, images, and PDF files. It functions as a digital asset management platform that combines a transcoding pipeline with a server capable of delivering adaptive video streaming. The system is distinguished by its automated media transcoding pipeline, which converts uploaded files into multiple resolutions and codecs and generates automatic transcriptions. It integrates SAML and OAuth identity layers to connect external enterprise identity providers for managing user access an
MediaCMS is a self-hosted video content management system that provides robust transcoding, channel management, and adaptive streaming, making it a strong candidate for building a video-sharing platform despite lacking native federation.
Rustfs is a distributed object storage system designed for high availability and horizontal scalability. It functions as a cluster-based platform that manages data across multiple nodes, providing a self-hosted infrastructure for large-scale storage requirements. The system is built to be container-native, utilizing an operator to automate deployment and management within orchestrated environments. It provides compatibility with standard object storage protocols, allowing existing applications and tools to interact with the storage layer through a translation interface. To ensure long-term re
This is a distributed object storage system that provides the S3-compatible storage layer required for a video platform, but it lacks the video-specific features like transcoding, streaming, and channel management needed to function as a complete hosting suite.
minio-go is a client library and software development kit for interacting with S3-compatible object storage. It provides a programmatic interface for Go applications to manage buckets and objects using the S3 protocol. The library enables the execution of complex storage operations, including multi-part uploads for large datasets, data synchronization between filesystems, and the management of bucket lifecycle and replication policies. It also supports advanced data retrieval through object searching and SQL-based querying of stored data. The toolkit covers a broad range of administrative an
This is a client library for interacting with S3-compatible storage, which serves as a building block for storing video files but lacks the video transcoding, streaming, and channel management features required for a full video-sharing platform.
Alist is a unified cloud storage gateway that aggregates disparate remote storage providers into a single, navigable virtual file system. By acting as a remote file system proxy, it decouples file operations from specific provider implementations, allowing users to browse, download, and manage files across heterogeneous backends through a standardized interface. The platform utilizes a driver-based storage abstraction that translates generic file system operations into provider-specific API calls. This architecture supports a wide range of cloud storage services, S3-compatible object storage,
This is a file management and storage gateway tool that aggregates cloud storage providers, but it lacks the video-specific features like transcoding, live streaming, and channel management required for a video-sharing platform.
VLC is a cross-platform multimedia player and framework designed to decode and render virtually any audio or video format, network stream, or physical disc without requiring external codecs. It functions as both a standalone application and a portable library, providing a modular architecture that allows developers to integrate playback, filtering, and streaming capabilities into third-party software. The project distinguishes itself through a highly modular plugin-based engine that supports real-time media processing, including format transcoding and the application of audio and video filter
VLC is a powerful multimedia playback and streaming framework, but it is a building block for media processing rather than a complete, multi-user video-sharing platform with features like channel management or federated networking.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| chocobozzz/peertube | 14.5K | TypeScript | agpl-3.0 | |
| owncast/owncast | 11K | Go | mit | |
| zlmediakit/zlmediakit | 17.2K | C++ | NOASSERTION | |
| mastodon/mastodon | 50.1K | Ruby | AGPL-3.0 | |
| arut/nginx-rtmp-module | 14K | C | bsd-2-clause | |
| datarhei/restreamer | 4.9K | HTML | apache-2.0 | |
| alexxit/go2rtc | 13.2K | Go | MIT | |
| mediacms-io/mediacms | 4.7K | JavaScript | agpl-3.0 | |
| rustfs/rustfs | 28.9K | Rust | Apache-2.0 | |
| minio/minio-go | 2.9K | Go | apache-2.0 |