Hazem Abbas
— 14 min read
In this post, we offer you a list of video CMS publishing and self-hosted video streaming solutions.
All these are projects are free and open-source, some of them are ready to install and run as similar YouTube-alike websites, others are built to provide video streaming solutions.
Media CMS is an open-source content management system (CMS) designed specifically for managing media assets such as images, videos, and audio files.
It provides a centralized platform for organizing, storing, and distributing media content. The GitHub repository contains the source code and documentation for the Media CMS project.
2- Tubeak
Tubeak is a free and open-source Live Streaming & Video Sharing Platform. It features a responsive rich dashboard for admins, moderators and users, video editing studio, comments, reports, and allows users to upload Full HD, and 4k videos.
3- Video CMS
Video CMS is an open-source JavaScript based Video CMS - Serverless - AWS Elemental.
4- AVideo
AVideo is an open-source web platform for publishing and streaming videos. With it, you can create your own similar sites like YouTube. It includes a built-in video encoder, streamer, and more.
5- PHPVibe
PHPVibe is a comprehensive video sharing CMS that surpasses expectations by not only providing a platform for sharing videos but also by offering additional features such as image sharing and the ability to share music in various formats including MP3 and SoundCloud.
With PHPVibe, users can enjoy a diverse range of content sharing options, making it the ultimate choice for those seeking a versatile and dynamic platform for sharing multimedia content.
6- Video Sharing CMS
This is a self-hosted open-source modern video sharing platform.
7- Klopix Video Sharing Platform
Klopix is currently an ongoing project. The app will be a video sharing platform with features such as video sharing, playlist creation, liking/disliking videos, and commenting.
The technologies used include NodeJS + Express for the backend, React + Hooks for the frontend, MongoDB + Mongoose for the database, JWT for token-based authentication, and Multer and Cloudinary for storing videos.
Future plans include adding a video recommendation system based on user data using machine learning and creating a unique and beautiful design.
8- VideoHub
VideoHub is a self-hosted video sharing platform. A rough client-server architecture replica of YouTube with Flask and MySQL.
9- Opencast
Opencast is a free and open-source platform designed to support the management of educational audio and video content.
With Opencast, institutions can create lecture recordings, organize and manage existing videos, distribute content through specific channels, and provide user interfaces to engage students with educational videos.
10- Open Broadcaster
An OBServer can manage multiple OBPlayers in a synchronized network or on a single device/VM. It has a flexible Plugin Module Architecture with various modules extending the core server application.
The server also has a documented API for sharing digital media assets and metadata securely.
11- wagtailvideos (Wagtail CMS)
This open-source project is built upon the functionality of wagtailimages. The primary objective of this project was to ensure that the features available for images in WagtailCMS are also available for HTML5 videos. In order to achieve this, the project focuses on achieving feature parity between images and videos.
One of the key features of this project is the ability to transcode videos into a codec that is compliant with HTML5 standards.
This transcoding functionality is accomplished through the use of ffmpeg, a powerful tool for manipulating multimedia files.
By incorporating this capability, the project aims to enhance the overall video experience within WagtailCMS and provide users with a seamless and consistent content management experience for both images and videos.
12- CumulusClips
CumulusClips is a highly versatile and powerful open source video content management platform that offers a wide range of features and capabilities. It is designed to accommodate the needs of various types of users, from individuals looking to create small video microsites to organizations and businesses aiming to develop large scale video websites.
With its intuitive interface and user-friendly tools, CumulusClips provides an easy and efficient way to manage and publish video content, making it an ideal choice for anyone seeking to establish a strong online presence through the use of engaging and dynamic videos.
OS Video Streaming Solutions
13- SRS
SRS/6.0 (Hang) is a simple, high-efficiency, and real-time video server, supporting RTMP/WebRTC/HLS/HTTP-FLV/SRT/MPEG-DASH/GB28181, Linux/Windows/macOS, X86_64/ARMv7/AARCH64/M1/RISCV/LOONGARCH/MIPS, and essential
14- hls.js
HLS.js is a JavaScript library that implements an HTTP Live Streaming client. It relies on HTML5 video and MediaSource Extensions for playback.
It works by transmuxing MPEG-2 Transport Stream and AAC/MP3 streams into ISO BMFF (MP4) fragments. Transmuxing is performed asynchronously using a Web Worker when available in the browser. HLS.js also supports HLS + fmp4, as announced during WWDC2016.
HLS.js works directly on top of a standard HTML element.
HLS.js is written in ECMAScript6 (.js) and TypeScript (.ts) (strongly typed superset of ES6), and transpiled in ECMAScript5 using Babel and the TypeScript compiler.
Features
- VOD & Live playlists
- DVR support on Live playlists
- Fragmented MP4 container
- MPEG-2 TS container
- ITU-T Rec. H.264 and ISO/IEC 14496-10 Elementary Stream
- ISO/IEC 13818-7 ADTS AAC Elementary Stream
- ISO/IEC 11172-3 / ISO/IEC 13818-3 (MPEG-1/2 Audio Layer III) Elementary Stream
- ATSC A/52 / AC-3 / Dolby Digital Elementary Stream
- Packetized metadata (ID3v2.3.0) Elementary Stream
- AAC container (audio only streams)
- MPEG Audio container (MPEG-1/2 Audio Layer III audio only streams)
- Timed Metadata for HTTP Live Streaming (ID3 format carried in MPEG-2 TS, Emsg in CMAF/Fragmented MP4, and DATERANGE playlist tags)
- AES-128 decryption
- SAMPLE-AES decryption (only supported if using MPEG-2 TS container)
- Encrypted media extensions (EME) support for DRM (digital rights management)
- FairPlay, PlayReady, Widevine CDMs with fmp4 segments
- Level capping based on HTMLMediaElement resolution, dropped-frames, and HDCP-Level
- CEA-608/708 captions
- WebVTT subtitles
- Alternate Audio Track Rendition (Master Playlist with Alternative Audio) for VoD and Live playlists
- Adaptive streaming
- Manual & Auto Quality Switching
- 3 Quality Switching modes are available (controllable through API means)
- Instant switching (immediate quality switch at current video position)
- Smooth switching (quality switch for next loaded fragment)
- Bandwidth conservative switching (quality switch change for next loaded fragment, without flushing the buffer)
- In Auto-Quality mode, emergency switch down in case bandwidth is suddenly dropping to minimize buffering.
- 3 Quality Switching modes are available (controllable through API means)
- Manual & Auto Quality Switching
- Accurate Seeking on VoD & Live (not limited to fragment or keyframe boundary)
- Ability to seek in buffer and back buffer without redownloading segments
- Built-in Analytics
- All internal events can be monitored (Network Events, Video Events)
- Playback session metrics are also exposed
- Resilience to errors
- Retry mechanism embedded in the library
- Recovery actions can be triggered fix fatal media or network errors
- Redundant/Failover Playlists
- HLS Variable Substitution
15- STREAMA
STREAMA is an open-source free self-hosted streaming media server. It includes a player, a streamer and a rich admin panel.
16- Shaka Player
Shaka Player is an open-source JavaScript library for adaptive media. It plays adaptive media formats (such asDASH,HLSandMSS) in a browser, without using plugins or Flash. Instead, Shaka Player uses the open web standardsMediaSource ExtensionsandEncrypted Media Extensions.
Shaka Player also supportsoffline storage and playbackof media usingIndexedDB. Content can be stored on any browser. Storage of licenses depends on browser support.
17- Restreamer (Streaming Server Solution)
The Restreamer is a complete streaming server solution for self-hosting. It has a visually appealing user interface and no ongoing license costs.
Upload your live stream to YouTube, Twitch, Facebook, Vimeo, or other streaming solutions like Wowza. Receive video data from OBS and publish it with the RTMP and SRT server.
Key Features
- Simplified User-Interface
- Easy wizard configuration
- Multiple audio/video inputs, outputs, protocols, and codecs
- ReStreaming to platforms such as YouTube-Live, to software such as Wowza Media Server, and others based on protocols such as RTMP, SRT, ...
- Option to mux a separate audio channel to the video
- Build-in VideoJS-Player for your Website
- Configurable publication website for streaming without player embedding
- Content license with Creative Commons
- HTTP/S- (HLS), RTMP/S- & SRT-Streaming Server
- Automatic Let's Encrypt HTTPS certification
- Viewer/Bandwidth Monitoring and limiting
- Raspberry Pi (MMAL/OMX), Nvidia Cuda, Intel VAAPI support
- Support for Hardware- and Virtual-Devices
- FFmpeg Video-Processing (as native as possible)
- REST-API (JSON) and 100% Swagger documented
- Resource Monitoring (optionally by Prom-Metrics)
- Server- and Process-Logging
- GDPR compliant without third-party providers and does not save audience data
Video Streaming Server
18- Gilfoyle
Gilfoyle is a web application from theDreamvo projectthat runs a self-hosted media streaming server. Allowing you to easily implement media streaming in any application at any scale.
It's written in Golang, mostly designed forKubernetesand runs as a single Linux binary withPostgreSQLandRabbitMQ.
Current features
- Deploy a RESTful API and HLS server to manage and stream audio & video
- Handle media compression and encoding withFFmpeg
- Customize media renditions
- Monitoring: Prometheus exported metrics, embedded Web UI
- Media thumbnail & video preview generation
- Enjoy highly scalable & cloud-native architecture
Project status:
- Stopped
19- StreamingServer
This project is developed to create a plug-and-play video streaming server that allows you to access all the films, songs, and videos downloaded to your main computer. With this tool, you can store all your favorite media files on your PC and stream them from anywhere using an internet connection.
The server has a basic authentication system. One endpoint is used for user registration, while another handles the log-in phase.
There is also an endpoint dedicated to verifying user accounts. Before allowing an account to stream your resources, you need to confirm that the account is affiliated with someone you know.
20 Armadillo
Armadillo is an open source content sharing website that is the canonical version 2 of "bruh". The name was picked because I think armadillos are pretty cool looking.
21- livego
Livego is a free and open-source simple and efficient live broadcast server:
- Very simple to install and use;
- Pure Golang, high performance, and cross-platform;
- Supports commonly used transmission protocols, file formats, and encoding formats;
Supported transport protocols
- RTMP
- AMF
- HLS
- HTTP-FLV
Supported container formats
- FLV
- TS
Supported encoding formats
- H264
- AAC
- MP3
Best 7 Open-Source Free Laravel App Deployment Solutions
Deploying Laravel applications efficiently and reliably is crucial for developers. Thankfully, there are numerous open-source solutions that streamline the deployment process, ensuring your applications run smoothly.Here’s a look at some of the best open-source, free Laravel deployment solutions available.1. DeployerDeployer is a PHP-based deployment tool that
Best 15 Julia Packages for Data Engineering
Data engineering is the backbone of any data-driven project. With the right tools, you can streamline your data workflows, from collection and transformation to storage and retrieval.Julia, known for its high performance and ease of use, offers a plethora of packages tailored for data engineering tasks.Getting Started with
15 Proven Strategies to Leverage GitHub for Maximum Productivity, for Freelancers, Developers, and Engineers
15 Ways to Use GitHub To Boost Your Productivity
Best Free 13 Mail Servers for Agencies and Enterprises in 2024
A mail server is a system that sends, receives, and stores emails. It uses standard email protocols like SMTP, IMAP, and POP3 to handle email communication between clients and servers.UsageMail servers are used by individuals, businesses, and organizations to manage email communications. They are essential for sending and
17 Must-Have Free Open-Source Apps for Book Readers for Linux, Windows, macOS, Android and the Web
For avid readers and book enthusiasts, managing a personal library and tracking reading progress is essential. Book readers and reading trackers can significantly boost productivity by organizing collections, monitoring progress, and providing valuable insights into reading habits.These tools help keep track of what you've read, what you&
13 Open-source Free Time Tracking for macOS
What is a Time Tracking App and Why Choose an Open-Source Solution for macOS?