update documentation (#5418)

This commit is contained in:
Alessandro Ros
2026-02-07 19:41:43 +01:00
committed by GitHub
parent e0dac8724b
commit 2c93262635
10 changed files with 19 additions and 19 deletions
@@ -1,4 +1,4 @@
name: code_lint
name: lint
on:
push:
+1 -2
View File
@@ -62,8 +62,7 @@ jobs:
+ `\n`
+ `## Security\n`
+ `\n`
+ `Binaries are compiled from source through the [Release workflow](https://github.com/${owner}/${repo}/actions/workflows/release.yml?query=branch%3Amain) without human intervention,`
+ ` preventing any external interference.\n`
+ `Binaries are compiled from source code by the [Release workflow](https://github.com/${owner}/${repo}/actions/workflows/release.yml) without human intervention.\n`
+ `\n`
+ 'You can verify that binaries have been produced by the workflow by using [GitHub Attestations](https://docs.github.com/en/actions/concepts/security/artifact-attestations):\n'
+ `\n`
@@ -1,4 +1,4 @@
name: code_test
name: test
on:
push:
+2 -2
View File
@@ -7,8 +7,8 @@
<br>
[![Website](https://img.shields.io/badge/website-mediamtx.org-1c94b5)](https://mediamtx.org)
[![Test](https://github.com/bluenviron/mediamtx/actions/workflows/code_test.yml/badge.svg?branch=main)](https://github.com/bluenviron/mediamtx/actions/workflows/code_test.yml?query=branch%3Amain)
[![Lint](https://github.com/bluenviron/mediamtx/actions/workflows/code_lint.yml/badge.svg?branch=main)](https://github.com/bluenviron/mediamtx/actions/workflows/code_lint.yml?query=branch%3Amain)
[![Test](https://github.com/bluenviron/mediamtx/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/bluenviron/mediamtx/actions/workflows/test.yml?query=branch%3Amain)
[![Lint](https://github.com/bluenviron/mediamtx/actions/workflows/lint.yml/badge.svg?branch=main)](https://github.com/bluenviron/mediamtx/actions/workflows/lint.yml?query=branch%3Amain)
[![CodeCov](https://codecov.io/gh/bluenviron/mediamtx/branch/main/graph/badge.svg)](https://app.codecov.io/gh/bluenviron/mediamtx/tree/main)
[![Release](https://img.shields.io/github/v/release/bluenviron/mediamtx)](https://github.com/bluenviron/mediamtx/releases)
[![Docker Hub](https://img.shields.io/badge/docker-bluenviron/mediamtx-blue)](https://hub.docker.com/r/bluenviron/mediamtx)
+1 -1
View File
@@ -58,7 +58,7 @@ COPY --from=mediamtx /mediamtx /
COPY --from=mediamtx.yml /
RUN apt update && apt install -y \
(insert here additional utilities)
(insert additional utilities here)
ENTRYPOINT [ "/mediamtx" ]
```
+4 -3
View File
@@ -1,9 +1,10 @@
# Basic usage
1. Publish a stream. For instance, you can publish a video/audio file with _FFmpeg_:
1. [Publish](publish) a stream. For instance, you can publish a stream from a MP4 file with _FFmpeg_:
```sh
ffmpeg -re -stream_loop -1 -i file.ts -c copy -f rtsp rtsp://localhost:8554/mystream
ffmpeg -re -stream_loop -1 -i file.mp4 -c copy \
-f rtsp rtsp://localhost:8554/mystream
```
or _GStreamer_:
@@ -13,7 +14,7 @@
! qtdemux name=d d.video_0 ! queue ! s.sink_0 d.audio_0 ! queue ! s.sink_1
```
2. Read the stream. For instance, you can read the stream with _VLC_:
2. [Read](read) the stream. For instance, you can read the stream with _VLC_:
```sh
vlc --network-caching=50 rtsp://localhost:8554/mystream
+4 -4
View File
@@ -443,7 +443,7 @@ FFmpeg can publish a stream to the server in several ways. The recommended one c
#### FFmpeg and RTSP
```sh
ffmpeg -re -stream_loop -1 -i file.ts -c copy -f rtsp rtsp://localhost:8554/mystream
ffmpeg -re -stream_loop -1 -i file.mp4 -c copy -f rtsp rtsp://localhost:8554/mystream
```
The resulting stream will be available on path `/mystream`.
@@ -451,7 +451,7 @@ The resulting stream will be available on path `/mystream`.
#### FFmpeg and RTMP
```sh
ffmpeg -re -stream_loop -1 -i file.ts -c copy -f flv rtmp://localhost:1935/mystream
ffmpeg -re -stream_loop -1 -i file.mp4 -c copy -f flv rtmp://localhost:1935/mystream
```
#### FFmpeg and MPEG-TS over UDP
@@ -459,7 +459,7 @@ ffmpeg -re -stream_loop -1 -i file.ts -c copy -f flv rtmp://localhost:1935/mystr
In _MediaMTX_ configuration, add a path with `source: udp+mpegts://238.0.0.1:1234`. Then:
```sh
ffmpeg -re -stream_loop -1 -i file.ts -c copy -f mpegts 'udp://238.0.0.1:1234?pkt_size=1316'
ffmpeg -re -stream_loop -1 -i file.mp4 -c copy -f mpegts 'udp://238.0.0.1:1234?pkt_size=1316'
```
#### FFmpeg and MPEG-TS over Unix socket
@@ -491,7 +491,7 @@ ffmpeg -re -f lavfi -i testsrc=size=1280x720:rate=30 \
#### FFmpeg and SRT
```sh
ffmpeg -re -stream_loop -1 -i file.ts -c copy -f mpegts 'srt://localhost:8890?streamid=publish:stream&pkt_size=1316'
ffmpeg -re -stream_loop -1 -i file.mp4 -c copy -f mpegts 'srt://localhost:8890?streamid=publish:stream&pkt_size=1316'
```
#### FFmpeg and WebRTC
+1 -1
View File
@@ -5,7 +5,7 @@ Edit `mediamtx.yml` and replace everything inside section `paths` with the follo
```yml
paths:
ondemand:
runOnDemand: ffmpeg -re -stream_loop -1 -i file.ts -c copy -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH
runOnDemand: ffmpeg -re -stream_loop -1 -i file.mp4 -c copy -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH
runOnDemandRestart: yes
```
+3 -3
View File
@@ -2,9 +2,9 @@
## Security of released binaries
Binaries published in the [Releases](https://github.com/bluenviron/mediamtx/releases) section of GitHub are the output of a process which has been designed with a security-first approach. Every step from source code to the intended final destination of binaries is fully visible, immune from external interferences and independently verifiable. This is the process:
Binaries published in the [Releases](https://github.com/bluenviron/mediamtx/releases) section of GitHub are the output of a process that is fully visible, both in terms of "ingredients" (the source code) and "recipe" (the process steps), and verifiable by third parties. This should prevent external interferences and guarantee security. This is the process:
1. During every release, the [Release workflow](https://github.com/bluenviron/mediamtx/actions/workflows/release.yml?query=branch%3Amain) is triggered on GitHub.
1. During every release, the [Release workflow](https://github.com/bluenviron/mediamtx/actions/workflows/release.yml) is triggered on GitHub.
2. The release workflow pulls the source code and builds binaries.
@@ -12,7 +12,7 @@ Binaries published in the [Releases](https://github.com/bluenviron/mediamtx/rele
4. Checksums and binaries are published on the Release page.
5. Binaries are downloaded by users to the intended final destination.
5. Binaries can be downloaded by users.
It is possible to verify that SHA256 checksums of binaries correspond to the one published on Sigstore by running:
+1 -1
View File
@@ -497,7 +497,7 @@ pathDefaults:
alwaysAvailable: false
# An MP4 file can be used instead of the default offline segment.
alwaysAvailableFile: ''
# Tracks of the offline segment.
# Tracks of the default offline segment.
alwaysAvailableTracks:
# Available values are: AV1, VP9, H265, H264, Opus, MPEG4Audio, G711, LPCM
- codec: H264