Skip to content

OlfillasOdikno/ion-sfu

This branch is 1 commit ahead of, 242 commits behind ionorg/ion-sfu:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

68cbcd9 · Nov 15, 2020
Oct 20, 2020
Nov 13, 2020
Nov 11, 2020
Nov 15, 2020
Jun 25, 2020
Oct 20, 2020
Oct 20, 2020
Oct 15, 2020
Nov 30, 2019
Oct 11, 2020
Oct 24, 2020
Jun 30, 2020
Oct 30, 2020
Nov 11, 2020
Nov 11, 2020
May 14, 2020

Repository files navigation


Ion SFU

Go implementation of a WebRTC Selective Forwarding Unit

Slack Widget Build Status GoDoc Coverage Status Go Report Card License: MIT


A selective forwarding unit is a video routing service which allows webrtc sessions to scale more efficiently. This package provides a simple, flexible, high performance Go implementation of a WebRTC SFU. It can be called directly or through a gRPC or json-rpc interface.

Getting Started

Running the json-rpc signaling server

If you have a local golang environment already setup, simply run

go build ./cmd/signal/json-rpc/main.go && ./main -c config.toml

If you prefer a containerized environment, you can use the included Docker image

docker run -p 7000:7000 -p 5000-5020:5000-5020/udp pionwebrtc/ion-sfu:latest-jsonrpc

Running the grpc signaling server

If you have a local golang environment already setup, simply run

go build ./cmd/signal/grpc/main.go && ./main -c config.toml

If you prefer a containerized environment, you can use the included Docker image

docker run -p 50051:50051 -p 5000-5020:5000-5020/udp pionwebrtc/ion-sfu:latest-grpc

Interacting with the server

To get an idea of how to interact with the ion-sfu instance, check out our examples.

Processing Media

ion-sfu supports real-time processing on media streamed through the sfu using ion-avp.

For an example of recording a MediaStream to webm, checkout the save-to-webm example.

License

MIT License - see LICENSE for full text

About

Pure Go WebRTC SFU

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 98.3%
  • Dockerfile 1.1%
  • Other 0.6%