2.1 KiB
2.1 KiB
Compatibility Matrix
Mandatory Acceptance Matrix
The deterministic acceptance matrix is driven by tester binaries, not by a dummy pipeline source.
Run it with:
cmake -B build -S .
cmake --build build
./scripts/acceptance_standalone.sh
Covered rows:
| Row | Protocol | Codec | Transport | Runner |
|---|---|---|---|---|
| 1 | RTP | H.264 | UDP RTP | ./scripts/acceptance_standalone.sh |
| 2 | RTP | H.265 | UDP RTP | ./scripts/acceptance_standalone.sh |
| 3 | RTMP | H.264 | libavformat |
./scripts/acceptance_standalone.sh |
| 4 | RTMP | H.265 | libavformat |
./scripts/acceptance_standalone.sh |
| 5 | RTMP | H.264 | ffmpeg_process |
./scripts/acceptance_standalone.sh |
| 6 | RTMP | H.265 | ffmpeg_process |
./scripts/acceptance_standalone.sh |
Notes:
- RTMP is Enhanced RTMP only.
- The custom RTMP packetizer and domestic mode are removed.
encoder.backendremainsauto|ffmpeg; both resolve to FFmpeg.
Optional Checks (Non-Blocking)
These are useful interoperability checks, but they are not part of the mandatory acceptance gate:
./scripts/rtmp_srs_smoke.sh./scripts/live_srs_forward_smoke.sh '<cvmmap-uri>'- manual WHEP playback through SRS
- manual ZLMediaKit interoperability checks
- live MCAP capture, validation, and paced replay
Recording Coverage
MCAP support is validated separately with:
./build/mcap_reader_tester./build/mcap_replay_tester./scripts/replay_mcap.sh
Current recording scope:
| Output | Codec | Notes |
|---|---|---|
MCAP foxglove.CompressedVideo |
H.264 | Stored as Annex B access units |
MCAP foxglove.CompressedVideo |
H.265 | Stored as Annex B access units |
Current Defaults
| Setting | Value |
|---|---|
| Encoder backend | auto -> FFmpeg |
| RTMP transport | libavformat |
| RTMP mode | Enhanced only |
| Encoder device | auto |
| Low-latency GOP | 30 |
| B-frames | 0 |
What Is No Longer Supported
- GStreamer encoder backend
- custom RTMP packetizer
- RTMP domestic mode
- dummy input flags in the main runtime
- direct in-repo RTSP/WebRTC publishing