a1q123456 / Harmonic
Licence: mit
A high performance and scalable RTMP live streaming application framework
Stars: ✭ 121
Programming Languages
csharp
926 projects
Projects that are alternatives of or similar to Harmonic
Monibuca
🧩 Monibuca is a Modularized, Extensible framework for building Streaming Server
Stars: ✭ 307 (+153.72%)
Mutual labels: flv, websocket, rtmp
Node Media Server
A Node.js implementation of RTMP/HTTP-FLV/WS-FLV/HLS/DASH/MP4 Media Server
Stars: ✭ 4,433 (+3563.64%)
Mutual labels: flv, websocket, rtmp
Zlmediakit
WebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181 server and client framework based on C++11
Stars: ✭ 5,248 (+4237.19%)
Mutual labels: flv, websocket, rtmp
VideoCodecKit
iOS macOS 编解码库 脱离ffmpeg等外部依赖 支持H.264 H.265裸流播放 硬件编解码 rtmp推流等
Stars: ✭ 78 (-35.54%)
Mutual labels: rtmp, flv
Hyperf
🚀 A coroutine framework that focuses on hyperspeed and flexibility. Building microservice or middleware with ease.
Stars: ✭ 4,206 (+3376.03%)
Mutual labels: framework, websocket
Iogrid
Multiplayer game engine/framework built using SocketCluster and Phaser
Stars: ✭ 455 (+276.03%)
Mutual labels: framework, websocket
cordova-plugin-tencent-liteav
A cordova plugin for video playing with Tencent's LiteAV SDK. Support RTMP/HLS/FLV/MP4.
Stars: ✭ 24 (-80.17%)
Mutual labels: rtmp, flv
tms
tms(toy media server) is a toy media server for myself learning media develop. Just for fun.
Stars: ✭ 29 (-76.03%)
Mutual labels: rtmp, flv
ZLMediaKit
WebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181/SRT server and client framework based on C++11
Stars: ✭ 7,790 (+6338.02%)
Mutual labels: rtmp, flv
Twig
Twig - less is more's web server for golang
Stars: ✭ 98 (-19.01%)
Mutual labels: framework, websocket
Actionhero
Actionhero is a realtime multi-transport nodejs API Server with integrated cluster capabilities and delayed tasks
Stars: ✭ 2,280 (+1784.3%)
Mutual labels: framework, websocket
Chimee
a video player framework aims to bring wonderful experience on browser
Stars: ✭ 2,332 (+1827.27%)
Mutual labels: framework, flv
Primus
⚡ Primus, the creator god of the transformers & an abstraction layer for real-time to prevent module lock-in.
Stars: ✭ 4,302 (+3455.37%)
Mutual labels: framework, websocket
Nodefony Starter
Nodefony Starter Node.js Framework
Stars: ✭ 95 (-21.49%)
Mutual labels: framework, websocket
master is not a stable branch, you may want to see the latest tag
Harmonic
A high performance RTMP live streaming application framework
Getting started
Code
Program.cs
using Harmonic.Hosting;
using System;
using System.Net;
namespace demo
{
class Program
{
static void Main(string[] args)
{
RtmpServer server = new RtmpServerBuilder()
.UseStartup<Startup>()
.Build();
var tsk = server.StartAsync();
tsk.Wait();
}
}
}
StartUp.cs
using Autofac;
using Harmonic.Hosting;
namespace demo
{
class Startup : IStartup
{
public void ConfigureServices(ContainerBuilder builder)
{
}
}
}
Build a server like this to support websocket-flv transmission
RtmpServer server = new RtmpServerBuilder()
.UseStartup<Startup>()
.UseWebSocket(c =>
{
c.BindEndPoint = new IPEndPoint(IPAddress.Parse("0.0.0.0"), 8080);
})
.Build();
push video file using ffmpeg
ffmpeg -i test.mp4 -f flv -vcodec h264 -acodec aac "rtmp://127.0.0.1/living/streamName"
play rtmp stream using ffplay
ffplay "rtmp://127.0.0.1/living/streamName"
flv.js by websocket
play flv stream using<video id="player"></video>
<script>
if (flvjs.isSupported()) {
var player = document.getElementById('player');
var flvPlayer = flvjs.createPlayer({
type: 'flv',
url: "ws://127.0.0.1/websocketplay/streamName"
});
flvPlayer.attachMediaElement(player);
flvPlayer.load();
flvPlayer.play();
}
</script>
Dive in deep
You can view docs here
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].