Giter Club home page Giter Club logo

msm-deployments's Introduction

MSM Deployments

GitHub Workflow Status Artifact HUB

This repository contains deployment scripts and configurations for the Media Streaming Mesh (MSM) project.

MSM is an open-source framework that enables real-time media applications to be first-class citizens in cloud-native Kubernetes environments.

MSM facilitates real-time audio and video streaming over the Internet using a distributed mesh network, is designed to be resilient to network disruptions, and is capable of delivering high-quality media streams with low latency.

The deployments in this repository are designed to help users quickly set up and run an MSM deployment.

Note that the initial implementation of MSM only supports a single media stream per pod and a single media stream between any two nodes. These limitations will be resolved when we move from the current Golang prototype data-plane to an asynchronous Rust data-plane.

Contents

This repository contains several directories, each of which represents a different deployment scenario:

msm: Contains templates and values for deploying the MSM infrastructure using Helm Charts.

camera: Contains templates and values for deploying Live Camera Feeds on MSM using Helm Charts.

ingress: Containes templates and values for deploying an nginx ingress on MSM using Helm Charts.

rtsp: Contains templates and values for deploying an RTSP Server on MSM using Helm Charts.

Each deployment scenario has its own README file with instructions on how to set up and run the deployment.

Usage

Helm must be installed to use these charts. Please refer to the official documentation to get started. The below command assume a v3 Helm version, although the charts should work with Helm v2 the command options may be different.

helm repo add msm https://charts.mediastreamingmesh.io

You can then see the charts by running:

helm search repo msm

You can install charts using the following command:

helm install <your-name> msm/CHART --namespace <your-namespace> --create-namespace

Tip: List all installed releases using helm list.

To uninstall a chart release:

helm delete my-release --namespace <your-namespace>

Our recommendation is that you deploy the msm helm chart first, as that sets up the base MSM infrastructure. Then deploy the ingress helm chart if you want support for HLS streaming as well as RTSP. Finally deploy the rtsp chart (if you want to use a fake camera feed) or the camera chart (if you have a real RTSP camera).

Contributing

We welcome contributions to this repository. If you would like to contribute, please submit a pull request with your changes.

Before submitting a pull request, please make sure that your changes follow our coding guidelines and that all tests pass.

Show your support

Give a ⭐️ if this project helped you!

License

MSM Deployments is licensed under the Apache License, Version 2.0. See the LICENSE file for more information.

Contact

If you have any questions or comments about MSM Deployments, please email us at [email protected].

msm-deployments's People

Contributors

ammar-alee avatar sagikazarmark avatar dependabot[bot] avatar cnguyen44 avatar gilesheron avatar john-a-joyce avatar

Stargazers

 avatar Marc Palacín avatar Emil avatar  avatar Andrej Albrecht avatar Han Qiang avatar

Watchers

 avatar  avatar Sri Aradhyula avatar  avatar

Forkers

john-a-joyce

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.