The metrics available

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 aquisition principles

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:

3. profile2 includes:

As a result, for the stream stream1 on test1.flashphoner.com node the following metric sets will be aquired: