docs: reorganize documentation (#5639)

This commit is contained in:
Alessandro Ros
2026-04-04 22:37:19 +02:00
committed by GitHub
parent d7a0111aa6
commit d44413a5ba
76 changed files with 188 additions and 157 deletions
+12 -12
View File
@@ -27,20 +27,20 @@ _MediaMTX_ is a ready-to-use and zero-dependency real-time media server and medi
<h3>Features</h3> <h3>Features</h3>
- [Publish](https://mediamtx.org/docs/usage/publish) live streams to the server with SRT, WebRTC, RTSP, RTMP, HLS, MPEG-TS, RTP, using FFmpeg, GStreamer, OBS Studio, Python , Golang, Unity, web browsers, Raspberry Pi Cameras and more. - [Publish](https://mediamtx.org/docs/features/publish) live streams to the server with SRT, WebRTC, RTSP, RTMP, HLS, MPEG-TS, RTP, using FFmpeg, GStreamer, OBS Studio, Python , Golang, Unity, web browsers, Raspberry Pi Cameras and more.
- [Read](https://mediamtx.org/docs/usage/read) live streams from the server with SRT, WebRTC, RTSP, RTMP, HLS, using FFmpeg, GStreamer, VLC, OBS Studio, Python , Golang, Unity, web browsers and more. - [Read](https://mediamtx.org/docs/features/read) live streams from the server with SRT, WebRTC, RTSP, RTMP, HLS, using FFmpeg, GStreamer, VLC, OBS Studio, Python , Golang, Unity, web browsers and more.
- Streams are automatically converted from a protocol to another - Streams are automatically converted from a protocol to another
- Serve several streams at once in separate paths - Serve several streams at once in separate paths
- Reload the configuration without disconnecting existing clients (hot reloading) - Reload the configuration without disconnecting existing clients (hot reloading)
- [Serve always-available streams](https://mediamtx.org/docs/usage/always-available) even when the publisher is offline - [Serve always-available streams](https://mediamtx.org/docs/features/always-available) even when the publisher is offline
- [Record](https://mediamtx.org/docs/usage/record) streams to disk in fMP4 or MPEG-TS format - [Record](https://mediamtx.org/docs/features/record) streams to disk in fMP4 or MPEG-TS format
- [Playback](https://mediamtx.org/docs/usage/playback) recorded streams - [Playback](https://mediamtx.org/docs/features/playback) recorded streams
- [Authenticate](https://mediamtx.org/docs/usage/authentication) users with internal, HTTP or JWT authentication - [Authenticate](https://mediamtx.org/docs/features/authentication) users with internal, HTTP or JWT authentication
- [Forward](https://mediamtx.org/docs/usage/forward) streams to other servers - [Forward](https://mediamtx.org/docs/features/forward) streams to other servers
- [Proxy](https://mediamtx.org/docs/usage/proxy) requests to other servers - [Proxy](https://mediamtx.org/docs/features/proxy) requests to other servers
- [Control](https://mediamtx.org/docs/usage/control-api) the server through the Control API - [Control](https://mediamtx.org/docs/features/control-api) the server through the Control API
- [Extract metrics](https://mediamtx.org/docs/usage/metrics) from the server in a Prometheus-compatible format - [Extract metrics](https://mediamtx.org/docs/features/metrics) from the server in a Prometheus-compatible format
- [Monitor performance](https://mediamtx.org/docs/usage/performance) to investigate CPU and RAM consumption - [Monitor performance](https://mediamtx.org/docs/features/performance) to investigate CPU and RAM consumption
- [Run hooks](https://mediamtx.org/docs/usage/hooks) (external commands) when clients connect, disconnect, read or publish streams - [Run hooks](https://mediamtx.org/docs/features/hooks) (external commands) when clients connect, disconnect, read or publish streams
- Compatible with Linux, Windows and macOS, does not require any dependency or interpreter, it's a single executable - Compatible with Linux, Windows and macOS, does not require any dependency or interpreter, it's a single executable
- ...and many [others](https://mediamtx.org/docs/kickoff/introduction). - ...and many [others](https://mediamtx.org/docs/kickoff/introduction).
+12 -12
View File
@@ -6,21 +6,21 @@ _MediaMTX_ is a ready-to-use and zero-dependency live media server and media pro
Main features: Main features:
- [Publish](../2-publish/01-overview.md) live streams to the server with SRT, WebRTC, RTSP, RTMP, HLS, MPEG-TS, RTP, using FFmpeg, GStreamer, OBS Studio, Python , Golang, Unity, Web browsers, Raspberry Pi Cameras and more. - [Publish](../2-features/03-publish.md) live streams to the server with SRT, WebRTC, RTSP, RTMP, HLS, MPEG-TS, RTP, using FFmpeg, GStreamer, OBS Studio, Python , Golang, Unity, Web browsers, Raspberry Pi Cameras and more.
- [Read](../3-read/01-overview.md) live streams from the server with SRT, WebRTC, RTSP, RTMP, HLS, using FFmpeg, GStreamer, VLC, OBS Studio, Python , Golang, Unity, Web browsers and more. - [Read](../2-features/04-read.md) live streams from the server with SRT, WebRTC, RTSP, RTMP, HLS, using FFmpeg, GStreamer, VLC, OBS Studio, Python , Golang, Unity, Web browsers and more.
- Streams are automatically converted from a protocol to another - Streams are automatically converted from a protocol to another
- Serve several streams at once in separate paths - Serve several streams at once in separate paths
- Reload the configuration without disconnecting existing clients (hot reloading) - Reload the configuration without disconnecting existing clients (hot reloading)
- [Serve always-available streams](../4-other/04-always-available.md) even when the publisher is offline - [Serve always-available streams](../2-features/08-always-available.md) even when the publisher is offline
- [Record](../4-other/05-record.md) streams to disk in fMP4 or MPEG-TS format - [Record](../2-features/09-record.md) streams to disk in fMP4 or MPEG-TS format
- [Playback](../4-other/06-playback.md) recorded streams - [Playback](../2-features/10-playback.md) recorded streams
- [Authenticate](../4-other/02-authentication.md) users with internal, HTTP or JWT authentication - [Authenticate](../2-features/06-authentication.md) users with internal, HTTP or JWT authentication
- [Forward](../4-other/07-forward.md) streams to other servers - [Forward](../2-features/11-forward.md) streams to other servers
- [Proxy](../4-other/08-proxy.md) requests to other servers - [Proxy](../2-features/12-proxy.md) requests to other servers
- [Control](../4-other/17-control-api.md) the server through the Control API - [Control](../2-features/21-control-api.md) the server through the Control API
- [Extract metrics](../4-other/18-metrics.md) from the server in a Prometheus-compatible format - [Extract metrics](../2-features/22-metrics.md) from the server in a Prometheus-compatible format
- [Monitor performance](../4-other/19-performance.md) to investigate CPU and RAM consumption - [Monitor performance](../2-features/23-performance.md) to investigate CPU and RAM consumption
- [Run hooks](../4-other/16-hooks.md) (external commands) when clients connect, disconnect, read or publish streams - [Run hooks](../2-features/20-hooks.md) (external commands) when clients connect, disconnect, read or publish streams
- Compatible with Linux, Windows and macOS, does not require any dependency or interpreter, it's a single executable - Compatible with Linux, Windows and macOS, does not require any dependency or interpreter, it's a single executable
Use the menu to navigate through the documentation. Use the menu to navigate through the documentation.
@@ -1,6 +1,6 @@
# Basic usage # Basic usage
1. [Publish](../2-publish/01-overview.md) a stream. For instance, you can publish a stream from a MP4 file with _FFmpeg_: 1. [Publish](../2-features/03-publish.md) a stream. For instance, you can publish a stream from a MP4 file with _FFmpeg_:
```sh ```sh
ffmpeg -re -stream_loop -1 -i file.mp4 -c copy \ ffmpeg -re -stream_loop -1 -i file.mp4 -c copy \
@@ -14,7 +14,7 @@
! qtdemux name=d d.video_0 ! queue ! s.sink_0 d.audio_0 ! queue ! s.sink_1 ! qtdemux name=d d.video_0 ! queue ! s.sink_0 d.audio_0 ! queue ! s.sink_1
``` ```
2. [Read](../3-read/01-overview.md) the stream. For instance, you can read the stream with _VLC_: 2. [Read](../2-features/04-read.md) the stream. For instance, you can read the stream with _VLC_:
```sh ```sh
vlc --network-caching=50 rtsp://localhost:8554/mystream vlc --network-caching=50 rtsp://localhost:8554/mystream
@@ -11,7 +11,7 @@ In order to provide its features, _MediaMTX_ performs the following network inte
Internally, the service revolves around these components: Internally, the service revolves around these components:
- A path manager, is in charge of managing paths, performing authentication and linking clients to paths. - A path manager, that is in charge of managing paths, performing authentication and linking clients to paths.
- Paths. Each path contains a stream, which is provided by a single publisher or by a single external source, and is then broadcasted to any reader. - Paths. Each path contains a stream, which is provided by a single publisher or by a single external source, and is then broadcasted to any reader.
- A recorder, in charge of storing streams to disks. - A recorder, in charge of storing streams to disks.
+32
View File
@@ -0,0 +1,32 @@
# Publish a stream
Live streams can be published to the server with the following protocols and codecs:
| protocol | variants | codecs |
| ----------------------------------------------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [SRT clients](../3-publish/01-srt-clients.md) | | **Video**: H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3<br/>**Other**: KLV |
| [SRT cameras and servers](../3-publish/02-srt-cameras-and-servers.md) | | **Video**: H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3<br/>**Other**: KLV |
| [WebRTC clients](../3-publish/03-webrtc-clients.md) | WHIP | **Video**: AV1, VP9, VP8, H265, H264<br/>**Audio**: Opus, G722, G711 (PCMA, PCMU) |
| [WebRTC servers](../3-publish/04-webrtc-servers.md) | WHEP | **Video**: AV1, VP9, VP8, H265, H264<br/>**Audio**: Opus, G722, G711 (PCMA, PCMU) |
| [RTSP clients](../3-publish/05-rtsp-clients.md) | UDP, TCP, RTSPS | **Video**: AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, MJPEG<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM<br/>**Other**: KLV, MPEG-TS, any RTP-compatible codec |
| [RTSP cameras and servers](../3-publish/06-rtsp-cameras-and-servers.md) | UDP, UDP-Multicast, TCP, RTSPS | **Video**: AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, MJPEG<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM<br/>**Other**: KLV, MPEG-TS, any RTP-compatible codec |
| [RTMP clients](../3-publish/07-rtmp-clients.md) | RTMP, RTMPS, Enhanced RTMP | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
| [RTMP cameras and servers](../3-publish/08-rtmp-cameras-and-servers.md) | RTMP, RTMPS, Enhanced RTMP | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
| [HLS cameras and servers](../3-publish/09-hls-cameras-and-servers.md) | Low-Latency HLS, MP4-based HLS, legacy HLS | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC) |
| [MPEG-TS](../3-publish/10-mpeg-ts.md) | MPEG-TS over UDP, MPEG-TS over Unix socket | **Video**: H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3<br/>**Other**: KLV |
| [RTP](../3-publish/11-rtp.md) | RTP over UDP | **Video**: AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, M-JPEG<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM<br/>**Other**: KLV, MPEG-TS, any RTP-compatible codec |
We provide instructions for publishing with the following devices:
- [Raspberry Pi Cameras](../3-publish/12-raspberry-pi-cameras.md)
- [Generic webcams](../3-publish/13-generic-webcams.md)
We provide instructions for publishing with the following software:
- [FFmpeg](../3-publish/14-ffmpeg.md)
- [GStreamer](../3-publish/15-gstreamer.md)
- [OBS Studio](../3-publish/16-obs-studio.md)
- [Python and OpenCV](../3-publish/17-python-opencv.md)
- [Golang](../3-publish/18-golang.md)
- [Unity](../3-publish/19-unity.md)
- [Web browsers](../3-publish/20-web-browsers.md)
+22
View File
@@ -0,0 +1,22 @@
# Read a stream
Live streams can be read from the server with the following protocols and codecs:
| protocol | variants | codecs |
| ---------------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [SRT clients](../4-read/01-srt.md) | | **Video**: H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3<br/>**Other**: KLV |
| [WebRTC clients](../4-read/02-webrtc.md) | WHEP | **Video**: AV1, VP9, VP8, H265, H264<br/>**Audio**: Opus, G722, G711 (PCMA, PCMU)<br/>**Other**: KLV |
| [RTSP clients](../4-read/03-rtsp.md) | UDP, UDP-Multicast, TCP, RTSPS | **Video**: AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, M-JPEG<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM<br/>**Other**: KLV, MPEG-TS, any RTP-compatible codec |
| [RTMP clients](../4-read/04-rtmp.md) | RTMP, RTMPS, Enhanced RTMP | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
| [HLS](../4-read/05-hls.md) | Low-Latency HLS, MP4-based HLS, legacy HLS | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC) |
We provide instructions for reading with the following software:
- [FFmpeg](../4-read/06-ffmpeg.md)
- [GStreamer](../4-read/07-gstreamer.md)
- [VLC](../4-read/08-vlc.md)
- [OBS Studio](../4-read/09-obs-studio.md)
- [Python and OpenCV](../4-read/10-python-opencv.md)
- [Golang](../4-read/11-golang.md)
- [Unity](../4-read/12-unity.md)
- [Web browsers](../4-read/13-web-browsers.md)
@@ -47,7 +47,7 @@ There are several ways to change configuration parameters:
docker run --rm -it --network=host -e MTX_PATHS_TEST_SOURCE=rtsp://myurl bluenviron/mediamtx:1 docker run --rm -it --network=host -e MTX_PATHS_TEST_SOURCE=rtsp://myurl bluenviron/mediamtx:1
``` ```
3. Use the [Control API](17-control-api.md). 3. Use the [Control API](21-control-api.md).
## Encrypt the configuration ## Encrypt the configuration
@@ -297,7 +297,7 @@ Username and password can be passed through the `Authorization: Basic` HTTP head
Authorization: Basic base64(user:pass) Authorization: Basic base64(user:pass)
``` ```
When using a web browser, a dialog is first shown to users, asking for credentials, and then the header is automatically inserted into every request. If you need to automatically fill credentials from a parent web page, read [Embed streams in a website](13-embed-streams-in-a-website.md). When using a web browser, a dialog is first shown to users, asking for credentials, and then the header is automatically inserted into every request. If you need to automatically fill credentials from a parent web page, read [Embed streams in a website](17-embed-streams-in-a-website.md).
If the `Authorization: Basic` header cannot be used (for instance, in software like OBS Studio, which only allows to provide a "Bearer Token"), credentials can be passed through the `Authorization: Bearer` header (i.e. the "Bearer Token" in OBS), where the value is the concatenation of username and password, separated by a colon: If the `Authorization: Basic` header cannot be used (for instance, in software like OBS Studio, which only allows to provide a "Bearer Token"), credentials can be passed through the `Authorization: Bearer` header (i.e. the "Bearer Token" in OBS), where the value is the concatenation of username and password, separated by a colon:
@@ -349,4 +349,4 @@ In OBS Studio, this is the "Bearer Token" field.
If the `Authorization: Bearer` token cannot be directly provided (for instance, with web browsers that directly access _MediaMTX_ and show a credential dialog), you can pass the token as password, using an arbitrary user. If the `Authorization: Bearer` token cannot be directly provided (for instance, with web browsers that directly access _MediaMTX_ and show a credential dialog), you can pass the token as password, using an arbitrary user.
In web browsers, if you need to automatically fill credentials from a parent web page, read [Embed streams in a website](13-embed-streams-in-a-website.md). In web browsers, if you need to automatically fill credentials from a parent web page, read [Embed streams in a website](17-embed-streams-in-a-website.md).
@@ -1,6 +1,6 @@
# Embed streams in a website # Embed streams in a website
Live streams can be embedded into an external website by using the WebRTC or HLS protocol. Before embedding, check that the stream is ready and can be accessed with intended protocol by using URLs mentioned in [Read a stream](../3-read/01-overview.md). Live streams can be embedded into an external website by using the WebRTC or HLS protocol. Before embedding, check that the stream is ready and can be accessed with intended protocol by using URLs mentioned in [Read a stream](../2-features/04-read.md).
## WebRTC in iframe ## WebRTC in iframe
@@ -37,7 +37,7 @@ Log entries can be queried by using:
journalctl SYSLOG_IDENTIFIER=mediamtx journalctl SYSLOG_IDENTIFIER=mediamtx
``` ```
If _MediaMTX_ is also running as a [system service](14-start-on-boot.md), log entries can be queried by using: If _MediaMTX_ is also running as a [system service](18-start-on-boot.md), log entries can be queried by using:
```sh ```sh
journalctl -u mediamtx journalctl -u mediamtx
@@ -14,4 +14,4 @@ curl http://127.0.0.1:9997/v3/paths/list
The control API is documented in the [Control API Reference page](../5-references/2-control-api.md) and in the [OpenAPI / Swagger file](https://github.com/bluenviron/mediamtx/blob/{version_tag}/api/openapi.yaml). The control API is documented in the [Control API Reference page](../5-references/2-control-api.md) and in the [OpenAPI / Swagger file](https://github.com/bluenviron/mediamtx/blob/{version_tag}/api/openapi.yaml).
Be aware that by default the Control API is accessible by localhost only; to increase visibility or enforce authentication, check [Authentication](02-authentication.md). Be aware that by default the Control API is accessible by localhost only; to increase visibility or enforce authentication, check [Authentication](06-authentication.md).
@@ -1,6 +1,6 @@
# SRT-specific features # SRT-specific features
SRT is a protocol that can be used for publishing and reading streams. Regarding specific tasks, check out [Publish](../2-publish/02-srt-clients.md) and [Read](../3-read/02-srt.md). Features in this page are shared among both tasks. SRT is a protocol that can be used for publishing and reading streams. Regarding specific tasks, check out [Publish](../3-publish/01-srt-clients.md) and [Read](../4-read/01-srt.md). Features in this page are shared among both tasks.
## Standard stream ID syntax ## Standard stream ID syntax
@@ -1,10 +1,10 @@
# WebRTC-specific features # WebRTC-specific features
WebRTC is a protocol that can be used for publishing and reading streams. Regarding specific tasks, check out [Publish](../2-publish/04-webrtc-clients.md) and [Read](../3-read/03-webrtc.md). Features in this page are shared among both tasks. WebRTC is a protocol that can be used for publishing and reading streams. Regarding specific tasks, check out [Publish](../3-publish/03-webrtc-clients.md) and [Read](../4-read/02-webrtc.md). Features in this page are shared among both tasks.
## Codec support in browsers ## Codec support in browsers
WebRTC can be used to publish and read streams encoded with a wide variety of video and audio codecs, that are listed in [Publish a stream](../2-publish/01-overview.md) and [Read a stream](../3-read/01-overview.md), but not every browser can publish and read streams with every codec due to internal limitations that cannot be overcome by this or any other server. WebRTC can be used to publish and read streams encoded with a wide variety of video and audio codecs, that are listed in [Publish a stream](../2-features/03-publish.md) and [Read a stream](../2-features/04-read.md), but not every browser can publish and read streams with every codec due to internal limitations that cannot be overcome by this or any other server.
You can check what codecs your browser supports by [using this tool](https://jsfiddle.net/v24s8q1f/). You can check what codecs your browser supports by [using this tool](https://jsfiddle.net/v24s8q1f/).
@@ -1,6 +1,6 @@
# RTSP-specific features # RTSP-specific features
RTSP is a protocol that can be used for publishing and reading streams. Regarding specific tasks, check out [Publish](../2-publish/06-rtsp-clients.md) and [Read](../3-read/04-rtsp.md). Features in this page are shared among both tasks. RTSP is a protocol that can be used for publishing and reading streams. Regarding specific tasks, check out [Publish](../3-publish/05-rtsp-clients.md) and [Read](../4-read/03-rtsp.md). Features in this page are shared among both tasks.
## Transport protocols ## Transport protocols
@@ -107,4 +107,4 @@ There are also the `rtsps+http`, `rtsp+ws`, `rtsps+ws` schemas to handle any var
## MPEG-TS inside RTSP ## MPEG-TS inside RTSP
read [MPEG-TS inside RTSP](../2-publish/06-rtsp-clients.md#mpeg-ts-inside-rtsp) in the "Publish with RTSP clients" page. read [MPEG-TS inside RTSP](../3-publish/05-rtsp-clients.md#mpeg-ts-inside-rtsp) in the "Publish with RTSP clients" page.
@@ -1,6 +1,6 @@
# RTMP-specific features # RTMP-specific features
RTMP is a protocol that can be used for publishing and reading streams. Regarding specific tasks, check out [Publish](../2-publish/08-rtmp-clients.md) and [Read](../3-read/05-rtmp.md). Features in this page are shared among both tasks. RTMP is a protocol that can be used for publishing and reading streams. Regarding specific tasks, check out [Publish](../3-publish/07-rtmp-clients.md) and [Read](../4-read/04-rtmp.md). Features in this page are shared among both tasks.
## Encryption ## Encryption

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

+1
View File
@@ -0,0 +1 @@
# Features
-32
View File
@@ -1,32 +0,0 @@
# Publish a stream
Live streams can be published to the server with the following protocols and codecs:
| protocol | variants | codecs |
| ---------------------------------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [SRT clients](02-srt-clients.md) | | **Video**: H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3<br/>**Other**: KLV |
| [SRT cameras and servers](03-srt-cameras-and-servers.md) | | **Video**: H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3<br/>**Other**: KLV |
| [WebRTC clients](04-webrtc-clients.md) | WHIP | **Video**: AV1, VP9, VP8, H265, H264<br/>**Audio**: Opus, G722, G711 (PCMA, PCMU) |
| [WebRTC servers](05-webrtc-servers.md) | WHEP | **Video**: AV1, VP9, VP8, H265, H264<br/>**Audio**: Opus, G722, G711 (PCMA, PCMU) |
| [RTSP clients](06-rtsp-clients.md) | UDP, TCP, RTSPS | **Video**: AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, MJPEG<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM<br/>**Other**: KLV, MPEG-TS, any RTP-compatible codec |
| [RTSP cameras and servers](07-rtsp-cameras-and-servers.md) | UDP, UDP-Multicast, TCP, RTSPS | **Video**: AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, MJPEG<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM<br/>**Other**: KLV, MPEG-TS, any RTP-compatible codec |
| [RTMP clients](08-rtmp-clients.md) | RTMP, RTMPS, Enhanced RTMP | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
| [RTMP cameras and servers](09-rtmp-cameras-and-servers.md) | RTMP, RTMPS, Enhanced RTMP | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
| [HLS cameras and servers](10-hls-cameras-and-servers.md) | Low-Latency HLS, MP4-based HLS, legacy HLS | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC) |
| [MPEG-TS](11-mpeg-ts.md) | MPEG-TS over UDP, MPEG-TS over Unix socket | **Video**: H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3<br/>**Other**: KLV |
| [RTP](12-rtp.md) | RTP over UDP | **Video**: AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, M-JPEG<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM<br/>**Other**: KLV, MPEG-TS, any RTP-compatible codec |
We provide instructions for publishing with the following devices:
- [Raspberry Pi Cameras](13-raspberry-pi-cameras.md)
- [Generic webcams](14-generic-webcams.md)
We provide instructions for publishing with the following software:
- [FFmpeg](15-ffmpeg.md)
- [GStreamer](16-gstreamer.md)
- [OBS Studio](17-obs-studio.md)
- [Python and OpenCV](18-python-opencv.md)
- [Golang](19-golang.md)
- [Unity](20-unity.md)
- [Web browsers](21-web-browsers.md)
-11
View File
@@ -1,11 +0,0 @@
# RTMP clients
RTMP is a protocol that allows to read and publish streams. It supports encryption, read [RTMP-specific features](../4-other/23-rtmp-specific-features.md). Streams can be published to the server by using the URL:
```
rtmp://localhost/mystream
```
The resulting stream will be available on path `/mystream`.
Some clients that can publish with RTMP are [FFmpeg](15-ffmpeg.md), [GStreamer](16-gstreamer.md), [OBS Studio](17-obs-studio.md).
@@ -8,8 +8,8 @@ srt://localhost:8890?streamid=publish:mystream&pkt_size=1316
Replace `mystream` with any name you want. The resulting stream will be available on path `/mystream`. Replace `mystream` with any name you want. The resulting stream will be available on path `/mystream`.
If you need to use the standard stream ID syntax instead of the custom one in use by this server, read [Standard stream ID syntax](../4-other/20-srt-specific-features.md#standard-stream-id-syntax). If you need to use the standard stream ID syntax instead of the custom one in use by this server, read [Standard stream ID syntax](../2-features/24-srt-specific-features.md#standard-stream-id-syntax).
If you want to publish a stream by using a client in listening mode (i.e. with `mode=listener` appended to the URL), read the next section. If you want to publish a stream by using a client in listening mode (i.e. with `mode=listener` appended to the URL), read the next section.
Some clients that can publish with SRT are [FFmpeg](15-ffmpeg.md), [GStreamer](16-gstreamer.md), [OBS Studio](17-obs-studio.md). Some clients that can publish with SRT are [FFmpeg](14-ffmpeg.md), [GStreamer](15-gstreamer.md), [OBS Studio](16-obs-studio.md).
@@ -14,8 +14,8 @@ WHIP is a WebRTC extension that allows to publish streams by using a URL, withou
http://localhost:8889/mystream/whip http://localhost:8889/mystream/whip
``` ```
Be aware that not all browsers can read any codec, check [Codec support in browsers](../4-other/21-webrtc-specific-features.md#codec-support-in-browsers). Be aware that not all browsers can read any codec, check [Codec support in browsers](../2-features/25-webrtc-specific-features.md#codec-support-in-browsers).
Depending on the network it might be difficult to establish a connection between server and clients, read [Solving WebRTC connectivity issues](../4-other/21-webrtc-specific-features.md#solving-webrtc-connectivity-issues). Depending on the network it might be difficult to establish a connection between server and clients, read [Solving WebRTC connectivity issues](../2-features/25-webrtc-specific-features.md#solving-webrtc-connectivity-issues).
Some clients that can publish with WebRTC and WHIP are [FFmpeg](15-ffmpeg.md), [GStreamer](16-gstreamer.md), [OBS Studio](17-obs-studio.md), [Unity](20-unity.md) and [Web browsers](21-web-browsers.md). Some clients that can publish with WebRTC and WHIP are [FFmpeg](14-ffmpeg.md), [GStreamer](15-gstreamer.md), [OBS Studio](16-obs-studio.md), [Unity](19-unity.md) and [Web browsers](20-web-browsers.md).
@@ -9,7 +9,7 @@ paths:
source: wheps://host:port/path source: wheps://host:port/path
``` ```
If the remote server is a _MediaMTX_ instance, remember to add a `/whep` suffix after the stream name, since in _MediaMTX_ [it's part of the WHEP URL](../3-read/03-webrtc.md): If the remote server is a _MediaMTX_ instance, remember to add a `/whep` suffix after the stream name, since in _MediaMTX_ [it's part of the WHEP URL](../4-read/02-webrtc.md):
```yml ```yml
paths: paths:
@@ -8,9 +8,9 @@ rtsp://localhost:8554/mystream
The resulting stream will be available on path `/mystream`. The resulting stream will be available on path `/mystream`.
Some clients that can publish with RTSP are [FFmpeg](15-ffmpeg.md), [GStreamer](16-gstreamer.md), [OBS Studio](17-obs-studio.md), [Python and OpenCV](18-python-opencv.md). Some clients that can publish with RTSP are [FFmpeg](14-ffmpeg.md), [GStreamer](15-gstreamer.md), [OBS Studio](16-obs-studio.md), [Python and OpenCV](17-python-opencv.md).
Advanced RTSP features and settings are described in [RTSP-specific features](../4-other/22-rtsp-specific-features.md). Advanced RTSP features and settings are described in [RTSP-specific features](../2-features/26-rtsp-specific-features.md).
## MPEG-TS inside RTSP ## MPEG-TS inside RTSP
@@ -44,4 +44,4 @@ paths:
All available parameters are listed in the [configuration file](../5-references/1-configuration-file.md). All available parameters are listed in the [configuration file](../5-references/1-configuration-file.md).
Advanced RTSP features and settings are described in [RTSP-specific features](../4-other/22-rtsp-specific-features.md). Advanced RTSP features and settings are described in [RTSP-specific features](../2-features/26-rtsp-specific-features.md).
+11
View File
@@ -0,0 +1,11 @@
# RTMP clients
RTMP is a protocol that allows to read and publish streams. It supports encryption, read [RTMP-specific features](../2-features/27-rtmp-specific-features.md). Streams can be published to the server by using the URL:
```
rtmp://localhost/mystream
```
The resulting stream will be available on path `/mystream`.
Some clients that can publish with RTMP are [FFmpeg](14-ffmpeg.md), [GStreamer](15-gstreamer.md), [OBS Studio](16-obs-studio.md).
@@ -28,7 +28,7 @@ paths:
source: udp+mpegts://0.0.0.0:1234?source=192.168.3.5 source: udp+mpegts://0.0.0.0:1234?source=192.168.3.5
``` ```
Some clients that can publish with UDP and MPEG-TS are [FFmpeg](15-ffmpeg.md) and [GStreamer](16-gstreamer.md). Some clients that can publish with UDP and MPEG-TS are [FFmpeg](14-ffmpeg.md) and [GStreamer](15-gstreamer.md).
Unix sockets are more efficient than UDP packets and can be used as transport by specifying the `unix+mpegts` scheme: Unix sockets are more efficient than UDP packets and can be used as transport by specifying the `unix+mpegts` scheme:
@@ -21,4 +21,4 @@ paths:
`rtpSDP` must contain a valid SDP, that is a description of the RTP session. `rtpSDP` must contain a valid SDP, that is a description of the RTP session.
Some clients that can publish with UDP and MPEG-TS are [FFmpeg](15-ffmpeg.md) and [GStreamer](16-gstreamer.md). Some clients that can publish with UDP and MPEG-TS are [FFmpeg](14-ffmpeg.md) and [GStreamer](15-gstreamer.md).
@@ -36,7 +36,7 @@ ffmpeg -re -f lavfi -i testsrc=size=1280x720:rate=30 \
## FFmpeg and RTP over UDP ## FFmpeg and RTP over UDP
In _MediaMTX_ configuration, add a path with `source: udp+rtp://238.0.0.1:1234` and a valid `rtpSDP` (read [RTP](12-rtp.md)). Then: In _MediaMTX_ configuration, add a path with `source: udp+rtp://238.0.0.1:1234` and a valid `rtpSDP` (read [RTP](11-rtp.md)). Then:
```sh ```sh
ffmpeg -re -f lavfi -i testsrc=size=1280x720:rate=30 \ ffmpeg -re -f lavfi -i testsrc=size=1280x720:rate=30 \
@@ -20,7 +20,7 @@ d.video_0 ! rtspclientsink location=rtsp://localhost:8554/mystream
The resulting stream will be available on path `/mystream`. The resulting stream will be available on path `/mystream`.
For advanced options, read [RTSP-specific features](../4-other/22-rtsp-specific-features.md). For advanced options, read [RTSP-specific features](../2-features/26-rtsp-specific-features.md).
## GStreamer and RTMP ## GStreamer and RTMP
@@ -38,7 +38,7 @@ videotestsrc ! video/x-raw,width=1280,height=720,format=I420 ! x264enc speed-pre
audiotestsrc ! audioconvert ! avenc_aac ! mux. audiotestsrc ! audioconvert ! avenc_aac ! mux.
``` ```
For advanced options, read [RTSP-specific features](../4-other/22-rtsp-specific-features.md). For advanced options, read [RTSP-specific features](../2-features/26-rtsp-specific-features.md).
## GStreamer and WebRTC ## GStreamer and WebRTC
@@ -177,7 +177,7 @@ OBS Studio requires _MediaMTX_ to use a TLS certificate signed by a public certi
### Standard ### Standard
Recent versions of OBS Studio can also publish streams to the server with the [WebRTC / WHIP protocol](04-webrtc-clients.md) Use the following parameters: Recent versions of OBS Studio can also publish streams to the server with the [WebRTC / WHIP protocol](03-webrtc-clients.md) Use the following parameters:
- Service: `WHIP` - Service: `WHIP`
- Server: `http://localhost:8889/mystream/whip` - Server: `http://localhost:8889/mystream/whip`
@@ -1,6 +1,6 @@
# Python and OpenCV # Python and OpenCV
Python-based software can publish streams to the server with the OpenCV library and its GStreamer plugin, acting as a [RTSP client](06-rtsp-clients.md). OpenCV must be compiled with support for GStreamer, by following this procedure: Python-based software can publish streams to the server with the OpenCV library and its GStreamer plugin, acting as a [RTSP client](05-rtsp-clients.md). OpenCV must be compiled with support for GStreamer, by following this procedure:
```sh ```sh
sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-ugly gstreamer1.0-rtsp python3-dev python3-numpy sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-ugly gstreamer1.0-rtsp python3-dev python3-numpy
@@ -1,6 +1,6 @@
# Unity # Unity
Software written with the Unity Engine can publish a stream to the server by using the [WebRTC protocol](04-webrtc-clients.md). Software written with the Unity Engine can publish a stream to the server by using the [WebRTC protocol](03-webrtc-clients.md).
Create a new Unity project or open an existing one. Create a new Unity project or open an existing one.
@@ -1,6 +1,6 @@
# Web browsers # Web browsers
Web browsers can publish a stream to the server by using the [WebRTC protocol](04-webrtc-clients.md). Start the server and open the web page: Web browsers can publish a stream to the server by using the [WebRTC protocol](03-webrtc-clients.md). Start the server and open the web page:
``` ```
http://localhost:8889/mystream/publish http://localhost:8889/mystream/publish
-22
View File
@@ -1,22 +0,0 @@
# Read a stream
Live streams can be read from the server with the following protocols and codecs:
| protocol | variants | codecs |
| ------------------------------ | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [SRT clients](02-srt.md) | | **Video**: H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3<br/>**Other**: KLV |
| [WebRTC clients](03-webrtc.md) | WHEP | **Video**: AV1, VP9, VP8, H265, H264<br/>**Audio**: Opus, G722, G711 (PCMA, PCMU)<br/>**Other**: KLV |
| [RTSP clients](04-rtsp.md) | UDP, UDP-Multicast, TCP, RTSPS | **Video**: AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, M-JPEG<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM<br/>**Other**: KLV, MPEG-TS, any RTP-compatible codec |
| [RTMP clients](05-rtmp.md) | RTMP, RTMPS, Enhanced RTMP | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
| [HLS](06-hls.md) | Low-Latency HLS, MP4-based HLS, legacy HLS | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC) |
We provide instructions for reading with the following software:
- [FFmpeg](07-ffmpeg.md)
- [GStreamer](08-gstreamer.md)
- [VLC](09-vlc.md)
- [OBS Studio](10-obs-studio.md)
- [Python and OpenCV](11-python-opencv.md)
- [Golang](12-golang.md)
- [Unity](13-unity.md)
- [Web browsers](14-web-browsers.md)
-9
View File
@@ -1,9 +0,0 @@
# RTSP clients
RTSP is a protocol that allows to publish and read streams. It supports several underlying transport protocols and encryption (read [RTSP-specific features](../4-other/22-rtsp-specific-features.md)). In order to read a stream with the RTSP protocol, use this URL:
```
rtsp://localhost:8554/mystream
```
Some clients that can read with RTSP are [FFmpeg](07-ffmpeg.md), [GStreamer](08-gstreamer.md) and [VLC](09-vlc.md).
-9
View File
@@ -1,9 +0,0 @@
# RTMP clients
RTMP is a protocol that allows to read and publish streams. It supports encryption, read [RTMP-specific features](../4-other/23-rtmp-specific-features.md). Streams can be read from the server by using the URL:
```
rtmp://localhost/mystream
```
Some clients that can read with RTMP are [FFmpeg](07-ffmpeg.md), [GStreamer](08-gstreamer.md) and [VLC](09-vlc.md).
-1
View File
@@ -1 +0,0 @@
# Other features
@@ -8,6 +8,6 @@ srt://localhost:8890?streamid=read:mystream
Replace `mystream` with the path name. Replace `mystream` with the path name.
If you need to use the standard stream ID syntax instead of the custom one in use by this server, read [Standard stream ID syntax](../4-other/20-srt-specific-features.md#standard-stream-id-syntax). If you need to use the standard stream ID syntax instead of the custom one in use by this server, read [Standard stream ID syntax](../2-features/24-srt-specific-features.md#standard-stream-id-syntax).
Some clients that can read with SRT are [FFmpeg](07-ffmpeg.md), [GStreamer](08-gstreamer.md) and [VLC](09-vlc.md). Some clients that can read with SRT are [FFmpeg](06-ffmpeg.md), [GStreamer](07-gstreamer.md) and [VLC](08-vlc.md).
@@ -12,8 +12,8 @@ WHEP is a WebRTC extension that allows to read streams by using a URL, without p
http://localhost:8889/mystream/whep http://localhost:8889/mystream/whep
``` ```
Be aware that not all browsers can read any codec, check [Codec support in browsers](../4-other/21-webrtc-specific-features.md#codec-support-in-browsers). Be aware that not all browsers can read any codec, check [Codec support in browsers](../2-features/25-webrtc-specific-features.md#codec-support-in-browsers).
Depending on the network it may be difficult to establish a connection between server and clients, read [Solving WebRTC connectivity issues](../4-other/21-webrtc-specific-features.md#solving-webrtc-connectivity-issues). Depending on the network it may be difficult to establish a connection between server and clients, read [Solving WebRTC connectivity issues](../2-features/25-webrtc-specific-features.md#solving-webrtc-connectivity-issues).
Some clients that can read with WebRTC and WHEP are [FFmpeg](07-ffmpeg.md), [GStreamer](08-gstreamer.md), [Unity](13-unity.md) and [web browsers](14-web-browsers.md). Some clients that can read with WebRTC and WHEP are [FFmpeg](06-ffmpeg.md), [GStreamer](07-gstreamer.md), [Unity](12-unity.md) and [web browsers](13-web-browsers.md).
+9
View File
@@ -0,0 +1,9 @@
# RTSP clients
RTSP is a protocol that allows to publish and read streams. It supports several underlying transport protocols and encryption (read [RTSP-specific features](../2-features/26-rtsp-specific-features.md)). In order to read a stream with the RTSP protocol, use this URL:
```
rtsp://localhost:8554/mystream
```
Some clients that can read with RTSP are [FFmpeg](06-ffmpeg.md), [GStreamer](07-gstreamer.md) and [VLC](08-vlc.md).
+9
View File
@@ -0,0 +1,9 @@
# RTMP clients
RTMP is a protocol that allows to read and publish streams. It supports encryption, read [RTMP-specific features](../2-features/27-rtmp-specific-features.md). Streams can be read from the server by using the URL:
```
rtmp://localhost/mystream
```
Some clients that can read with RTMP are [FFmpeg](06-ffmpeg.md), [GStreamer](07-gstreamer.md) and [VLC](08-vlc.md).
@@ -12,4 +12,4 @@ and can also be accessed without using the browsers, by software that supports t
http://localhost:8888/mystream/index.m3u8 http://localhost:8888/mystream/index.m3u8
``` ```
Some clients that can read with HLS are [FFmpeg](07-ffmpeg.md), [GStreamer](08-gstreamer.md), [VLC](09-vlc.md) and [web browsers](14-web-browsers.md). Some clients that can read with HLS are [FFmpeg](06-ffmpeg.md), [GStreamer](07-gstreamer.md), [VLC](08-vlc.md) and [web browsers](13-web-browsers.md).
@@ -8,7 +8,7 @@ GStreamer can read a stream from the server in several ways. The recommended one
gst-launch-1.0 rtspsrc location=rtsp://127.0.0.1:8554/mystream latency=0 ! decodebin ! autovideosink gst-launch-1.0 rtspsrc location=rtsp://127.0.0.1:8554/mystream latency=0 ! decodebin ! autovideosink
``` ```
For advanced options, read [RTSP-specific features](../4-other/22-rtsp-specific-features.md). For advanced options, read [RTSP-specific features](../2-features/26-rtsp-specific-features.md).
## GStreamer and WebRTC ## GStreamer and WebRTC
@@ -1,6 +1,6 @@
# OBS Studio # OBS Studio
OBS Studio can read streams from the server by using the [RTSP protocol](04-rtsp.md). OBS Studio can read streams from the server by using the [RTSP protocol](03-rtsp.md).
Open OBS, click on _Add Source_, _Media source_, _OK_, uncheck _Local file_, insert in _Input_: Open OBS, click on _Add Source_, _Media source_, _OK_, uncheck _Local file_, insert in _Input_:
@@ -1,6 +1,6 @@
# Python and OpenCV # Python and OpenCV
Python-based software can read streams from the server with the OpenCV library, acting as a [RTSP client](04-rtsp.md). Python-based software can read streams from the server with the OpenCV library, acting as a [RTSP client](03-rtsp.md).
```python ```python
import cv2 import cv2
@@ -1,6 +1,6 @@
# Unity # Unity
Software written with the Unity Engine can read a stream from the server by using the [WebRTC protocol](03-webrtc.md). Software written with the Unity Engine can read a stream from the server by using the [WebRTC protocol](02-webrtc.md).
Create a new Unity project or open an existing one. Create a new Unity project or open an existing one.
@@ -4,20 +4,20 @@ Web browsers can read a stream from the server in several ways.
## Web browsers and WebRTC ## Web browsers and WebRTC
You can read a stream by using the [WebRTC protocol](03-webrtc.md) by visiting the web page: You can read a stream by using the [WebRTC protocol](02-webrtc.md) by visiting the web page:
``` ```
http://localhost:8889/mystream http://localhost:8889/mystream
``` ```
See [Embed streams in a website](../4-other/13-embed-streams-in-a-website.md) for instructions on how to embed the stream into an external website. See [Embed streams in a website](../2-features/17-embed-streams-in-a-website.md) for instructions on how to embed the stream into an external website.
## Web browsers and HLS ## Web browsers and HLS
Web browsers can also read a stream with the [HLS protocol](06-hls.md). Latency is higher but there are fewer problems related to connectivity between server and clients, furthermore the server load can be balanced by using a common HTTP CDN (like Cloudflare or CloudFront), and this allows to handle an unlimited amount of readers. Visit the web page: Web browsers can also read a stream with the [HLS protocol](05-hls.md). Latency is higher but there are fewer problems related to connectivity between server and clients, furthermore the server load can be balanced by using a common HTTP CDN (like Cloudflare or CloudFront), and this allows to handle an unlimited amount of readers. Visit the web page:
``` ```
http://localhost:8888/mystream http://localhost:8888/mystream
``` ```
See [Embed streams in a website](../4-other/13-embed-streams-in-a-website.md) for instructions on how to embed the stream into an external website. See [Embed streams in a website](../2-features/17-embed-streams-in-a-website.md) for instructions on how to embed the stream into an external website.
+1 -1
View File
@@ -1,3 +1,3 @@
# Configuration file reference # Configuration file reference
This is a copy of the configuration file (`mediamtx.yml`) of the latest _MediaMTX_ release ({version_tag}), that contains all available parameters. Check the [Configuration usage page](../4-other/01-configuration.md) for instructions on how to change it. This is a copy of the configuration file (`mediamtx.yml`) of the latest _MediaMTX_ release ({version_tag}), that contains all available parameters. Check the [Configuration usage page](../2-features/05-configuration.md) for instructions on how to change it.
+1 -1
View File
@@ -1,3 +1,3 @@
# Control API reference # Control API reference
This is the reference of the Control API of the latest _MediaMTX_ release ({version_tag}), generated automatically from the [OpenAPI / Swagger file](https://github.com/bluenviron/mediamtx/blob/{version_tag}/api/openapi.yaml) available in the repository. Check the [Control API usage page](../4-other/17-control-api.md) for instructions on how to use the API. This is the reference of the Control API of the latest _MediaMTX_ release ({version_tag}), generated automatically from the [OpenAPI / Swagger file](https://github.com/bluenviron/mediamtx/blob/{version_tag}/api/openapi.yaml) available in the repository. Check the [Control API usage page](../2-features/21-control-api.md) for instructions on how to use the API.
+31
View File
@@ -1,4 +1,6 @@
kickoff/installation: kickoff/install kickoff/installation: kickoff/install
kickoff/basic-usage: features/basic-usage
kickoff/architecture: features/architecture
usage/publish: publish/overview usage/publish: publish/overview
usage/read: read/overview usage/read: read/overview
@@ -29,9 +31,38 @@ usage/rtsp-specific-features: other/rtsp-specific-features
usage/rtmp-specific-features: other/rtmp-specific-features usage/rtmp-specific-features: other/rtmp-specific-features
usage/decrease-packet-loss: other/decrease-packet-loss usage/decrease-packet-loss: other/decrease-packet-loss
other/configuration: features/configuration
other/authentication: features/authentication
other/remuxing-reencoding-compression: features/remuxing-reencoding-compression
other/always-available: features/always-available
other/record: features/record
other/playback: features/playback
other/forward: features/forward
other/proxy: features/proxy
other/extract-snapshots: features/extract-snapshots
other/on-demand-publishing: features/on-demand-publishing
other/absolute-timestamps: features/absolute-timestamps
other/expose-the-server-in-a-subfolder: features/expose-the-server-in-a-subfolder
other/embed-streams-in-a-website: features/embed-streams-in-a-website
other/start-on-boot: features/start-on-boot
other/logging: features/logging
other/hooks: features/hooks
other/control-api: features/control-api
other/metrics: features/metrics
other/performance: features/performance
other/srt-specific-features: features/srt-specific-features
other/webrtc-specific-features: features/webrtc-specific-features
other/rtsp-specific-features: features/rtsp-specific-features
other/rtmp-specific-features: features/rtmp-specific-features
other/decrease-packet-loss: features/decrease-packet-loss
other/index: features/index
other/compile: misc/compile other/compile: misc/compile
other/license: misc/license other/license: misc/license
other/security: misc/security other/security: misc/security
other/specifications: misc/specifications other/specifications: misc/specifications
other/related-projects: misc/related-projects other/related-projects: misc/related-projects
other/route-absolute-timestamps: other/absolute-timestamps other/route-absolute-timestamps: other/absolute-timestamps
publish/overview: features/publish
read/overview: features/read