docs: move codecs in specific protocol pages (#5713)

This commit is contained in:
Alessandro Ros
2026-04-30 12:22:57 +02:00
committed by GitHub
parent fcf5eb092d
commit 57afd4e0f4
18 changed files with 111 additions and 20 deletions
+13 -13
View File
@@ -2,19 +2,19 @@
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, MPEG-TS-based HLS | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC)<br/>**Other**: KLV (MPEG-TS-based HLS only) |
| [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 |
| protocol | variants |
| ----------------------------------------------------------------------- | ------------------------------------------------- |
| [SRT clients](../3-publish/01-srt-clients.md) | |
| [SRT cameras and servers](../3-publish/02-srt-cameras-and-servers.md) | |
| [WebRTC clients](../3-publish/03-webrtc-clients.md) | WHIP |
| [WebRTC servers](../3-publish/04-webrtc-servers.md) | WHEP |
| [RTSP clients](../3-publish/05-rtsp-clients.md) | UDP, TCP, RTSPS |
| [RTSP cameras and servers](../3-publish/06-rtsp-cameras-and-servers.md) | UDP, UDP-Multicast, TCP, RTSPS |
| [RTMP clients](../3-publish/07-rtmp-clients.md) | RTMP, RTMPS, Enhanced RTMP |
| [RTMP cameras and servers](../3-publish/08-rtmp-cameras-and-servers.md) | RTMP, RTMPS, Enhanced RTMP |
| [HLS cameras and servers](../3-publish/09-hls-cameras-and-servers.md) | Low-Latency HLS, MP4-based HLS, MPEG-TS-based HLS |
| [MPEG-TS](../3-publish/10-mpeg-ts.md) | MPEG-TS over UDP, MPEG-TS over Unix socket |
| [RTP](../3-publish/11-rtp.md) | RTP over UDP |
We provide instructions for publishing with the following devices:
+7 -7
View File
@@ -2,13 +2,13 @@
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, MPEG-TS-based HLS | **Video**: AV1, VP9, H265, H264<br/>**Audio**: Opus, MPEG-4 Audio (AAC)<br/>**Other**: KLV (MPEG-TS-based HLS only) |
| protocol | variants |
| ---------------------------------------- | ------------------------------------------------- |
| [SRT clients](../4-read/01-srt.md) | |
| [WebRTC clients](../4-read/02-webrtc.md) | WHEP |
| [RTSP clients](../4-read/03-rtsp.md) | UDP, UDP-Multicast, TCP, RTSPS |
| [RTMP clients](../4-read/04-rtmp.md) | RTMP, RTMPS, Enhanced RTMP |
| [HLS](../4-read/05-hls.md) | Low-Latency HLS, MP4-based HLS, MPEG-TS-based HLS |
We provide instructions for reading with the following software:
+6
View File
@@ -1,5 +1,11 @@
# SRT clients
| | supported codecs |
| ----- | ----------------------------------------------------- |
| video | H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3 |
| other | KLV |
SRT is a protocol that allows to publish and read live data stream, providing encryption, integrity and a retransmission mechanism. It is usually used to transfer media streams encoded with MPEG-TS. In order to publish a stream to the server with the SRT protocol, use this URL:
```
@@ -1,5 +1,11 @@
# SRT cameras and servers
| | supported codecs |
| ----- | ----------------------------------------------------- |
| video | H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3 |
| other | KLV |
In order to ingest a SRT stream from a remote server, camera or client in listening mode (i.e. with `mode=listener` appended to the URL), add the corresponding URL into the `source` parameter of a path:
```yml
+5
View File
@@ -1,5 +1,10 @@
# WebRTC clients
| | supported codecs |
| ----- | ----------------------------- |
| video | AV1, VP9, VP8, H265, H264 |
| audio | Opus, G722, G711 (PCMA, PCMU) |
WebRTC is an API that makes use of a set of protocols and methods to connect two clients together and allow them to exchange live media or data streams. You can publish a stream with WebRTC and a web browser by visiting:
```
+5
View File
@@ -1,5 +1,10 @@
# WebRTC servers
| | supported codecs |
| ----- | ----------------------------- |
| video | AV1, VP9, VP8, H265, H264 |
| audio | Opus, G722, G711 (PCMA, PCMU) |
In order to ingest a WebRTC stream from a remote server, add the corresponding WHEP URL into the `source` parameter of a path:
```yml
+6
View File
@@ -1,5 +1,11 @@
# RTSP clients
| | supported codecs |
| ----- | ----------------------------------------------------------------------------------------- |
| video | AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, MJPEG |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM |
| other | KLV, MPEG-TS, any RTP-compatible codec |
RTSP is a protocol that allows to publish and read streams. It supports several underlying transport protocols and encryption. In order to publish a stream to the server with the RTSP protocol, use this URL:
```
@@ -1,5 +1,11 @@
# RTSP cameras and servers
| | supported codecs |
| ----- | ----------------------------------------------------------------------------------------- |
| video | AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, MJPEG |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM |
| other | KLV, MPEG-TS, any RTP-compatible codec |
Most IP cameras expose their video stream by using a RTSP server that is embedded into the camera itself. In particular, cameras that are compliant with ONVIF profile S or T meet this requirement. You can use _MediaMTX_ to connect to one or several existing RTSP servers and read their media streams:
```yml
+5
View File
@@ -1,5 +1,10 @@
# RTMP clients
| | supported codecs |
| ----- | ----------------------------------------------------------------------------- |
| video | AV1, VP9, H265, H264 |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
RTMP is a protocol that allows to read and publish streams. It supports encryption, read [RTMP-specific features](../2-features/28-rtmp-specific-features.md). Streams can be published to the server by using the URL:
```
@@ -1,5 +1,10 @@
# RTMP cameras and servers
| | supported codecs |
| ----- | ----------------------------------------------------------------------------- |
| video | AV1, VP9, H265, H264 |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
You can use _MediaMTX_ to connect to one or several existing RTMP servers and read their media streams:
```yml
@@ -1,5 +1,11 @@
# HLS cameras and servers
| | supported codecs |
| ----- | ---------------------------- |
| video | AV1, VP9, H265, H264 |
| audio | Opus, MPEG-4 Audio (AAC) |
| other | KLV (MPEG-TS-based HLS only) |
HLS is a streaming protocol that works by splitting streams into segments, and by serving these segments and a playlist with the HTTP protocol. You can use _MediaMTX_ to connect to one or several existing HLS servers and read their media streams:
```yml
+6
View File
@@ -1,5 +1,11 @@
# MPEG-TS
| | supported codecs |
| ----- | ----------------------------------------------------- |
| video | H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3 |
| other | KLV |
The server supports ingesting MPEG-TS streams, shipped in two different ways (UDP packets or Unix sockets).
In order to read a UDP MPEG-TS stream, edit `mediamtx.yml` and replace everything inside section `paths` with the following content:
+6
View File
@@ -1,5 +1,11 @@
# RTP
| | supported codecs |
| ----- | ----------------------------------------------------------------------------------------- |
| video | AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, M-JPEG |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM |
| other | KLV, MPEG-TS, any RTP-compatible codec |
The server supports ingesting RTP streams, transmitted with UDP packets.
In order to read a UDP RTP stream, edit `mediamtx.yml` and replace everything inside section `paths` with the following content:
+6
View File
@@ -1,5 +1,11 @@
# SRT clients
| | supported codecs |
| ----- | ----------------------------------------------------- |
| video | H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3 |
| other | KLV |
SRT is a protocol that allows to publish and read live data stream, providing encryption, integrity and a retransmission mechanism. It is usually used to transfer media streams encoded with MPEG-TS. In order to read a stream from the server with the SRT protocol, use this URL:
```
+6
View File
@@ -1,5 +1,11 @@
# WebRTC clients
| | supported codecs |
| ----- | ----------------------------- |
| video | AV1, VP9, VP8, H265, H264 |
| audio | Opus, G722, G711 (PCMA, PCMU) |
| other | KLV |
WebRTC is an API that makes use of a set of protocols and methods to connect two clients together and allow them to exchange live media or data streams. You can read a stream with WebRTC and a web browser by visiting:
```
+6
View File
@@ -1,5 +1,11 @@
# RTSP clients
| | supported codecs |
| ----- | ----------------------------------------------------------------------------------------- |
| video | AV1, VP9, VP8, H265, H264, MPEG-4 Video (H263, Xvid), MPEG-1/2 Video, M-JPEG |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G726, G722, G711 (PCMA, PCMU), LPCM |
| other | KLV, MPEG-TS, any RTP-compatible codec |
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/27-rtsp-specific-features.md)). In order to read a stream with the RTSP protocol, use this URL:
```
+5
View File
@@ -1,5 +1,10 @@
# RTMP clients
| | supported codecs |
| ----- | ----------------------------------------------------------------------------- |
| video | AV1, VP9, H265, H264 |
| audio | Opus, MPEG-4 Audio (AAC), MPEG-1/2 Audio (MP3), AC-3, G711 (PCMA, PCMU), LPCM |
RTMP is a protocol that allows to read and publish streams. It supports encryption, read [RTMP-specific features](../2-features/28-rtmp-specific-features.md). Streams can be read from the server by using the URL:
```
+6
View File
@@ -1,5 +1,11 @@
# HLS
| | supported codecs |
| ----- | ---------------------------- |
| video | AV1, VP9, H265, H264 |
| audio | Opus, MPEG-4 Audio (AAC) |
| other | KLV (MPEG-TS-based HLS only) |
HLS is a protocol that works by splitting streams into segments, and by serving these segments and a playlist with the HTTP protocol. You can use _MediaMTX_ to generate an HLS stream, that is accessible through a web page:
```