sfu

module
v0.0.0-...-4c68550 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2024 License: MIT

README

Shig Instance

!!Attention!!

I'm currently doing a refactoring to make the code more readable. The Main branch is currently broken. The latest (running) version is available in branch: https://github.com/shigde/sfu/tree/running-main-v1


Shig is a federated service designed to distribute and replicate live streams among Fediverse instances. It's built upon the WHIP/WHEP approach for both inbound and outbound streams. Through an ActivityPub integration, Shig can follow other Fediverse services and receive updates on live stream activities.

Features

Feature Develop State Release
Endpoints
WHIP/WHEP (Lobby) finish
WHIP/WHEP (Instances) testing
WHIP/WHEP (Static Files) develop
Mute/Unmute testing
WebRTC to RTMP develop
WebRTC to HLS planned
Bandwidth Estimation
Receiver/Sender Reports planned
Simulcast planned
FEC planned
Activity Pub
Fallow PeerTube finish
Fallow Channel finish
Fallow Shig Instance planned
Fallow Remote PeerTube testing
OAuth between Services planned
Deployment
Docker planned

Develop States: planed | develop | testing | finish

Documentaion

Quick Start

Run Shig Instance
make run
Run with some Data

Normally, the SFU (Shig instance) listens for data from other Fediverse instances. However, to facilitate development, you could start the SFU with an included SQLite database. Run inside the SFU project

mv shig-dev.db shig.db

Now you can start the SFU with some data.

Build

make build
Build Docker Container for Shig Instance
make build-container
Build with Docker
make docker-build
Build Docker Container for Shig Instance
make docker-build-container

Build Shig CLT

export DOCKER_DEFAULT_PLATFORM=linux/amd64
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp shig-builder make build-clt-linux

Monitoring

Requirement

please install grafana loki docker plugin

docker plugin install grafana/loki-docker-driver:latest --alias loki --grant-all-permissions
Start Develop Monitoring
make monitor

Funded by

Logo of the German Ministry for Education and Research            Logo of the Prototype Fund            Logo of the Open Knowledge Foundation Germany

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL