• Stars
    star
    133
  • Rank 272,600 (Top 6 %)
  • Language
    Rust
  • License
    MIT License
  • Created over 3 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

MultiMedia Ingestion and Distribution System

mmids

Mmids (Multi-Media Ingestion and Distribution System) is a powerful, user friendly, open source live video workflow server.

  • User Friendly
    • Complex video workflows can be easily configured by non-developers
  • Observable
    • Logging with an emphasis on corelations. Easily pinpoint logs relevant to a single stream on a busy server
  • Developer Friendly
    • Trivially add new workflow logic, new network protocols, etc... all with your own open-source or proprietary components
  • Fully Dynamic
    • Push and pull mechanisms to start, stop, and update workflows on the fly without disruptions.

See the official documentation for more details.

What's In This Repository?

  • mmids-app
    • This is the official mmids application
  • mmids-core
    • This is the main crate which contains all the logic which runs mmids. It also contains all types needed to extend mmids, or create your own custom distribution
  • mmids-gstreamer
    • This crate provides mmids components that relate to gstreamer related activities, such as transcoding.
  • reactor-test-server
    • This contains a basic HTTP server that can respond to simple_http reactor executor queries.
    • When a POST request comes in to http://localhost:9055/<category> with a stream name in the body, it will look for the file workflows/<category>/<stream name>.mmids. If one exists it will return the content of that file with a 200, otherwise returns a 404.
    • Primarily used for testing reactors
  • validators
    • These are different applications that were written to independently test different components.
    • echo-server - Used to test the TCP socket manager
    • ffmpeg-runner - Used to test the ffmpeg endpoint
    • rtmp-server - Used to test the rtmp endpoint

Building From Source

For the most part mmids can be built just using standard rust tooling. The exception is that any project that utilizes mmids-gstreamer must have the GStreamer 1.8 or greater libraries installed. The GStreamer specific installation steps can be found in the `gstreamer-rs project docs

More Repositories

1

rust-media-libs

Rust based libraries for misc media functionality
Rust
229
star
2

elixir-media-libs

Collection of libraries and applications written in Elixir for use in working with different types of media
Elixir
73
star
3

ExtApi

GUI tool for testing queries on external web APIs without coding, as well as an API to help make querying web APIs in code easier
C#
23
star
4

ImGuiHandler

Framework for easy Dear ImGui integration in C# applications
C#
18
star
5

microgpu

2d focused GPU for resource constrained microcontrollers
C
12
star
6

RapidRegex

Library to make it easy to write regular expressions by aliasing common regex patterns to easy to remember identifiers
C#
9
star
7

ParME

Particle Manipulation Engine
C#
8
star
8

SharpPlotter

Application to allow 2d plotting in real time using code
C#
6
star
9

Prism

Prototype pipeline based stream handling framework in Elixir
Elixir
4
star
10

dntc

Dotnet (MSIL) to C transpiler
C#
3
star
11

FlatRedImGui

Integration of Dear ImGui into the FlatRedBall engine
C#
3
star
12

r8

Rust Chip-8 Interpreter
Rust
3
star
13

ConsoleLib

Extensible framework for a debugging console system
C#
3
star
14

Lucidity

Platform for efficiently analyzing log files
C#
3
star
15

GlueCsvEditor

CSV Glue plugin for use with the FlatRedBall XNA Engine
C#
2
star
16

Parme.Net

High performance particle engine for C#
C#
2
star
17

MyJobLeads

C#
1
star
18

JsonGenerators

Proof of concept code to use source generators to generate JSON deserialization code for a class at compile time.
C#
1
star
19

dsrp

Development Server Reverse Proxy
Rust
1
star
20

soccer-platformer

Prototype of a 2d platformer with a soccer related theme
C#
1
star
21

OcularPlane

Library for remote applications to gain an inside view and manipulation of objects of an application at runtime
C#
1
star
22

FrbUi

UI and Layouting system for the FlatRedBall XNA engine
C#
1
star
23

ELiS

Easy Licensing System, open source system to make adding license validation to .net applications easy and secure
C#
1
star
24

Task-Director

Task management system created to teach myself java
Java
1
star
25

mmids-rust

(No Longer In Development)
Rust
1
star
26

GlueCompiler

Plugin for FlatRedBall's Glue application that allows developers to compile their games without Visual Studio
C#
1
star
27

GlueContentSecurity

Plugin for FlatRedBall's Glue application that allows developers to prevent tampering with content files
C#
1
star
28

byteorder_test

Test
Rust
1
star
29

rustcaster

Basic raycaster written in Rust
Rust
1
star
30

frbcon-2019

C#
1
star
31

Rosalind-rust

Solutions to Rosalind problems using Rust
Rust
1
star
32

MeadowGum

Rapid creation of embedded user interfaces for Meadow devices
C#
1
star
33

MazePlayground

Experimentation with generating and rendering mazes in C#
C#
1
star