aboutsummaryrefslogtreecommitdiffstats
path: root/doc/STATS.md
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2020-03-11 12:25:20 +0100
committerMatthias P. Braendli <matthias.braendli@mpb.li>2020-03-11 12:25:20 +0100
commitccbb69188c53eb693853969327bd081c73f02552 (patch)
treea615ecd71e087bf87f8e700649a417dfac9eda40 /doc/STATS.md
parentf213daab829e68495c42009f73d540837df42fff (diff)
downloaddabmux-ccbb69188c53eb693853969327bd081c73f02552.tar.gz
dabmux-ccbb69188c53eb693853969327bd081c73f02552.tar.bz2
dabmux-ccbb69188c53eb693853969327bd081c73f02552.zip
Describe statistics in doc/STATS.md
Diffstat (limited to 'doc/STATS.md')
-rw-r--r--doc/STATS.md33
1 files changed, 33 insertions, 0 deletions
diff --git a/doc/STATS.md b/doc/STATS.md
new file mode 100644
index 0000000..385d41e
--- /dev/null
+++ b/doc/STATS.md
@@ -0,0 +1,33 @@
+Stats available through Management Server
+=========================================
+
+Interface
+---------
+
+The management server makes statistics about the inputs available through a ZMQ request/reply socket.
+
+The `show_dabmux_stats.py` illustrates how to access this information.
+
+Meaning of values
+-----------------
+
+`max` and `min` indicate input buffer fullness in bytes.
+
+`under` and `over` count the number of buffer underruns and overruns.
+
+`audio L` and `audio R` show the maximum audio level in dBFS over the last 500ms.
+
+`peak L` and `audio R` show the max audio level in dBFS over the last 5 minutes.
+
+The audio levels are measured in the audio encoder and carried in the EDI
+`ODRa` TAG, or in the ZMQ metadata. Otherwise ODR-DabMux would have to decode
+all audio contributions to measure the audio level.
+
+`State` is either NoData, Unstable, Silence, Streaming.
+Unstable means that underruns or overruns have occurred in the previous 30 minutes.
+Silence means the stream is working, but audio levels are always below -50dBFS.
+
+`version` and `uptime` are fields directly coming from the contribution source,
+and are only supported for the EDI input. These are carried over EDI using custom
+TAG `ODRv` (see function `parse_odr_version_data` in `lib/edi/common.cpp`).
+