Configuration
Scout is configured via properties in the application’s
/usr/local/WowzaStreamingEngine/conf/<appName>/Application.xml.
All Scout properties are set inside the <Properties> element. The module re-reads them
only at application startup — a WSE application restart is required to apply changes.
Property syntax
Each property follows the standard WSE format:
<Property>
<Name>cmsdMqa.example</Name>
<Value>someValue</Value>
<Type>String</Type> <!-- String | Boolean | Integer -->
</Property>
Full example
The following excerpt shows all Scout properties with their defaults. Only the license key is mandatory; all other properties are optional.
<Properties>
<!-- ── License (required) ───────────────────────────────────────────────── -->
<Property>
<Name>raskenlund.scout.license</Name>
<Value>YOUR-LICENSE-KEY</Value>
<Type>String</Type>
</Property>
<!-- ── Core ─────────────────────────────────────────────────────────────── -->
<Property>
<Name>cmsdMqa.enabled</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>
<!-- ── MQA input ─────────────────────────────────────────────────────────── -->
<!-- Parse H.264 SEI user_data_unregistered for SVTA2128 MQA scores -->
<Property>
<Name>cmsdMqa.input.seiParsing</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>
<!-- Enable the embedded MQA REST receiver (Standard+) -->
<Property>
<Name>cmsdMqa.input.restApi</Name>
<Value>false</Value>
<Type>Boolean</Type>
</Property>
<Property>
<Name>cmsdMqa.input.restApiPort</Name>
<Value>8090</Value>
<Type>Integer</Type>
</Property>
<!-- ── CMSD output ───────────────────────────────────────────────────────── -->
<Property>
<Name>cmsdMqa.output.cmsdHeaders</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>
<!-- Inject CMSD-Static (ot, sf, st, br) -->
<Property>
<Name>cmsdMqa.output.includeStatic</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>
<!-- Inject CMSD-Dynamic (vmaf, psnr, ssim) when quality scores are present -->
<Property>
<Name>cmsdMqa.output.includeDynamic</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>
<!-- ── Prometheus (Standard+) ────────────────────────────────────────────── -->
<Property>
<Name>cmsdMqa.telemetry.prometheus.enabled</Name>
<Value>true</Value>
<Type>Boolean</Type>
</Property>
<Property>
<Name>cmsdMqa.telemetry.prometheus.port</Name>
<Value>9090</Value>
<Type>Integer</Type>
</Property>
<Property>
<Name>cmsdMqa.telemetry.prometheus.path</Name>
<Value>/metrics</Value>
<Type>String</Type>
</Property>
<!-- ── Webhook JSON export (Standard+) ───────────────────────────────────── -->
<Property>
<Name>cmsdMqa.telemetry.webhook.enabled</Name>
<Value>false</Value>
<Type>Boolean</Type>
</Property>
<Property>
<Name>cmsdMqa.telemetry.webhook.url</Name>
<Value>https://your-endpoint/metrics</Value>
<Type>String</Type>
</Property>
<Property>
<Name>cmsdMqa.telemetry.webhook.intervalMs</Name>
<Value>5000</Value>
<Type>Integer</Type>
</Property>
<!-- ── OpenTelemetry / OTLP (Integration+) ────────────────────────────────── -->
<Property>
<Name>cmsdMqa.telemetry.otlp.enabled</Name>
<Value>false</Value>
<Type>Boolean</Type>
</Property>
<!-- gRPC collector at port 4317; HTTP/protobuf at port 4318 (auto-detected) -->
<Property>
<Name>cmsdMqa.telemetry.otlp.endpoint</Name>
<Value>http://otel-collector:4317</Value>
<Type>String</Type>
</Property>
<!-- ── Kafka (Integration+) ───────────────────────────────────────────────── -->
<Property>
<Name>cmsdMqa.telemetry.kafka.enabled</Name>
<Value>false</Value>
<Type>Boolean</Type>
</Property>
<Property>
<Name>cmsdMqa.telemetry.kafka.brokers</Name>
<Value>broker1:9092,broker2:9092</Value>
<Type>String</Type>
</Property>
<Property>
<Name>cmsdMqa.telemetry.kafka.topic</Name>
<Value>cmsd-mqa-metrics</Value>
<Type>String</Type>
</Property>
<!-- ── Alerting (Enterprise) ──────────────────────────────────────────────── -->
<Property>
<Name>cmsdMqa.alerting.enabled</Name>
<Value>false</Value>
<Type>Boolean</Type>
</Property>
<Property>
<Name>cmsdMqa.alerting.webhookUrl</Name>
<Value>https://your-endpoint/alerts</Value>
<Type>String</Type>
</Property>
<Property>
<Name>cmsdMqa.alerting.vmafThreshold</Name>
<Value>70</Value>
<Type>Integer</Type>
</Property>
<!-- ── Metrics store TTL ─────────────────────────────────────────────────── -->
<!-- Evict stream entries with no updates for this many seconds -->
<Property>
<Name>cmsdMqa.store.scoreTtlSeconds</Name>
<Value>60</Value>
<Type>Integer</Type>
</Property>
</Properties>
Property reference
Core
Property |
Description |
Default |
|---|---|---|
|
Your Scout license key. Required — the module will not start without it. |
— |
|
Set to |
|
MQA input
Property |
Description |
Default |
|---|---|---|
|
Parse H.264 SEI |
|
|
Enable the embedded REST receiver that accepts scores pushed by an external tool (Standard+). See Media Quality Assessment (MQA). |
|
|
TCP port the REST receiver listens on. |
|
CMSD output
Property |
Description |
Default |
|---|---|---|
|
Enable CMSD header injection. Set to |
|
|
Inject the |
|
|
Inject the |
|
Prometheus settings
Requires Standard or higher license. See Telemetry.
Property |
Description |
Default |
|---|---|---|
|
Enable the Prometheus metrics HTTP endpoint. |
|
|
TCP port the endpoint listens on. |
|
|
HTTP path for the metrics endpoint. |
|
Webhook settings
Requires Standard or higher license. See Telemetry.
Property |
Description |
Default |
|---|---|---|
|
Enable periodic JSON push to a webhook URL. |
|
|
Destination URL for webhook pushes. |
(none) |
|
How often to push, in milliseconds. |
|
OpenTelemetry (OTLP) settings
Requires Integration or higher license. See Telemetry.
Property |
Description |
Default |
|---|---|---|
|
Enable OTLP metric export. |
|
|
Collector endpoint URL. Port 4317 triggers gRPC; port 4318 triggers HTTP/protobuf (auto-detected). |
(none) |
Kafka settings
Requires Integration or higher license. See Telemetry.
Property |
Description |
Default |
|---|---|---|
|
Enable Kafka metric publishing. |
|
|
Comma-separated Kafka broker list ( |
(none) |
|
Kafka topic to publish to. |
|
Alerting settings
Requires Enterprise license. See Quality Alerting.
Property |
Description |
Default |
|---|---|---|
|
Enable quality alerting. |
|
|
URL to POST alert payloads to. |
(none) |
|
VMAF score below which an alert fires (0–100). |
|
Metrics store
Property |
Description |
Default |
|---|---|---|
|
Evict stream entries that have not been updated for this many seconds. Keeps the metrics store from accumulating data for streams that have ended. |
|