Updated README.md with meson compile instructions and new documentation URL

This commit is contained in:
Thulinma 2023-12-18 16:49:06 +01:00
parent 67ce3b1a17
commit 4d50364703

View file

@ -3,36 +3,68 @@ MistServer
MistServer is an open source, public domain, full-featured, next-generation streaming media toolkit for OTT (internet streaming), designed to be ideal for developers and system integrators.
For full documentation, tutorials, guides and assistance, please look on our website at: https://mistserver.org
For full documentation, see: https://docs.mistserver.org
For support and assistance, please look on our website at: https://mistserver.org
Getting MistServer onto your system
===================================
We provide precompiled binaries for most common operating systems here: https://mistserver.org/download
We provide pre-compiled binaries for most common operating systems here: https://mistserver.org/download
Using the "Copy install cmd" button will give you a command you can paste into a terminal to set up MistServer running as root under your system's init daemon (systemd recommended, but not required).
You can also manually install, will instructions can be found in our manual: https://mistserver.org/guides/latest
You can also manually install, full instructions can be found in our manual: https://docs.mistserver.org/category/installation
Compile instructions
====================
We make use of cmake for compilation. The default configuration requires mbedtls and libsrtp2 to be installed on your system.
The recommended build system for compiling MistServer is Meson.
The version of mbedtls we require is a specific branch that supports DTLS and SRTP for WebRTC, which can be found here: https://github.com/livepeer/mbedtls/tree/dtls_srtp_support
The project makes full use of Meson's support for "wraps" and all dependencies can be automatically fulfilled through this system. If a system-wide library is available (and compatible), that one will be preferred.
All compilaton options can be discovered and set through `cmake-gui`; more complete compile instructions will follow soon.
The following command will create a subdirectory named `build` and set it up for compiling MistServer (assuming meson is installed on your system):
```
meson setup build
```
The default options should suffice in most cases, but a full list of possible compile options can be found by running `meson configure`.
Then, to actually build:
```
cd build
ninja
```
That should compile MistServer to your build directory, and it can then be ran by running:
```
./MistController
```
See the "Usage" chapter below for more details on actually running MistServer.
MistServer can be in any directory, as long as all its binaries (that you want/need) are in one directory together.
You can (optionally) install system-wide (usually requires you to be root user or using `sudo`) by running:
```
ninja install
```
Usage
=====
MistServer is booted by starting the `MistController` binary, which then scans the directory it is stored in for further `Mist*` binaries and runs them to discover what inputs/outputs/processes are available.
MistServer is booted by starting the `MistController` binary, which then scans the directory it is stored in for further `Mist*` binaries and runs them to discover what inputs/outputs/processes are available. (Yes, this means you can delete any binary you don't want/need and it will just do what you expect/want.)
Running the controller in a terminal will walk you through a brief first-time setup, and then listen on port 4242 for API connections. Accessing port 4242 from a web browser will bring up a web interface capable of easily running most API commands for human-friendly configuration.
Running the controller in a terminal will walk you through a brief first-time setup, and then listen on port 4242 for API connections.
Accessing port 4242 from a web browser will bring up a web interface capable of easily running most API commands for human-friendly configuration.
If there is no interactive terminal when MistServer is first started, the first-time setup can be completed using the web interface instead.
Full usage instructions and API specifications can be found in the manual: https://mistserver.org/guides/latest
Full usage instructions and API specifications can be found in the online manual: https://docs.mistserver.org/
Contributing
============
If you're interested in contributing to MistServer development, please reach out to us through info@mistserver.org. Full contribution guidelines will be made available soon.