This PR adds separate audio and video frame counting to the HTTP API
(`/api/v1/streams/`) for better stream observability. The API now
reports three frame fields:
- `frames` - Total frames (video + audio)
- `video_frames` - Video frames/packets only
- `audio_frames` - Audio frames/packets only
This enhancement provides better visibility into stream composition and
helps detect issues with CBR/VBR streams, audio/video sync problems, and
codec-specific behavior.
**Before:**
```json
{
"streams": [
{
"frames": 0, // video frames.
}
]
}
```
**After:**
```json
{
"streams": [
{
"frames": 6912, // video frames.
"audio_frames": 5678, // audio frames.
"video_frames": 1234, // video frames.
}
]
}
```
Frame Counting Strategy
- All protocols report frames every N frames to balance accuracy and
performance
- Frames are counted at the protocol-specific message/packet level:
- RTMP: Counts RTMP messages (video/audio)
- WebRTC: Counts RTP packets (video/audio)
- SRT: Counts MPEG-TS messages (H.264/HEVC/AAC)
|
||
|---|---|---|
| .. | ||
| Architecture.md | ||
| CHANGELOG.md | ||
| Dockers.md | ||
| Features.md | ||
| ffmpeg-logo.png | ||
| ffmpeg-min.png | ||
| PERFORMANCE.md | ||
| README.md | ||
| readme.txt | ||
| Resources.md | ||
| source.200kbps.768x320.flv | ||
| source.flv | ||
| srs-logo.ico | ||
| srs-logo.png | ||