WCS sends the following stream parameters for aquisition:
Metric | Id | Description |
VIDEO_HEIGHT | 2 | Video height |
VIDEO_WIDTH | 3 | Video width |
VIDEO_RATE | 4 | Video bitrate, bps |
VIDEO_SYNC | 5 | Video synchronization |
VIDEO_FPS | 6 | Video frame rate per second |
VIDEO_NACK | 7 | NACK requests count |
VIDEO_PLI | 8 | PLI packets count |
VIDEO_CODEC | 9 | Video codec |
AUDIO_SYNC | 10 | Audio synchronization |
AUDIO_RATE | 11 | Audio bitrate |
AUDIO_LOST | 12 | Lost audio packets count |
AUDIO_CODEC | 13 | Audio codec |
The available metrics list can be obtained using REST API query /api/metric/list
https://hostname:8090/api/metric/list { "id": "4" } |
Where:
If metric Id is set, the response will contain information about the metric with this Id only. In other case, response will contain all the metrics list.
The response contains the following fields:
[ { "id": 4, "name": "Video rate", "note": "", "enumName": "VIDEO_RATE" } ] |
Metrics are combined to profiles to collect from specific nodes. Every profile contains specific metrics set and aquisition rate. A couple of metric aquisition rules can be set for certain profile which are applied to stream on node.
A number of profiles can be applied to one node (WCS instance). In this case, metric sets and rules from profiles are summarized, and minimum aquisition rate for same metric is applied. Let's look to the example:
1. The profiles profile1 and profile2 are applied to test1.flasphoner.com node
2. profile1 includes:
Stream name == stream1
3. profile2 includes:
Stream name == stream1
As a result, for the stream stream1 on test1.flashphoner.com node the following metric sets will be aquired: