aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README.md33
-rw-r--r--src/dabplussnoop.cpp2
-rw-r--r--src/etisnoop.cpp4
-rwxr-xr-xyamlexample.py3
4 files changed, 39 insertions, 3 deletions
diff --git a/README.md b/README.md
index a69cbb7..2179371 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
ETISnoop analyser
=================
-The ETISnoop analyser decodes a RAW ETI file and prints out
+The ETISnoop analyser decodes a RAW ETI (see https://wiki.opendigitalradio.org/Ensemble_Transport_Interface ) file and prints out
its contents in YAML for easier analysis.
It can show information about the signalling, details about the FIGs,
@@ -20,6 +20,37 @@ Then do
./configure
make
sudo make install
+
+
+Usage
+-----
+
+```
+etisnoop [options] [(-i|-I) filename]
+
+ -i the file contains RAW ETI
+ -I the file contains FIC
+ -v increase verbosity (can be given more than once)
+ -d N decode subchannel N into stream-N.dab file
+ if DAB+: decode audio to stream-N.wav file and extract PAD to stream-N.dab
+ (superframes with RS coding)
+ -s <filename.yaml>
+ statistics mode: decode all subchannels and measure audio level, write statistics to file
+ -n N stop analysing after N ETI frames
+ -f analyse FIC carousel (no YAML output)
+ -r analyse FIG rates in FIGs per second
+ -R analyse FIG rates in frames per FIG
+ -w decode CRC-DABMUX and ODR-DabMux watermark.
+ -e decode frames with SYNC error and decode FIGs with invalid CRC
+ -F <type>/<ext>
+ add FIG type/ext to list of FIGs to display.
+ if the option is not given, all FIGs are displayed.
+```
+
+You can open the stream-N.dab file in https://www.basicmaster.de/xpadxpert/
+(remark: in case of DAB please rename the .dab to .mp2)
+
+Hint: subchannel N means the (N+1)th subchannel in a mux (including data subchannels!)
About
-----
diff --git a/src/dabplussnoop.cpp b/src/dabplussnoop.cpp
index 2f28982..b064d11 100644
--- a/src/dabplussnoop.cpp
+++ b/src/dabplussnoop.cpp
@@ -338,7 +338,7 @@ void StreamSnoop::push(uint8_t* streamdata, size_t streamsize)
// First dump to subchannel file (superframe+parity word)
if (m_dump_to_file and m_raw_data_stream_fd == nullptr) {
stringstream dump_filename;
- dump_filename << "stream-" << m_index << ".msc";
+ dump_filename << "stream-" << m_index << ".dab";
m_raw_data_stream_fd = fopen(dump_filename.str().c_str(), "w");
diff --git a/src/etisnoop.cpp b/src/etisnoop.cpp
index 45f4f9e..d727146 100644
--- a/src/etisnoop.cpp
+++ b/src/etisnoop.cpp
@@ -94,7 +94,9 @@ void usage(void)
" -i the file contains RAW ETI\n"
" -I the file contains FIC\n"
" -v increase verbosity (can be given more than once)\n"
- " -d N decode subchannel N into .msc file and if DAB+, decode to .wav file\n"
+ " -d N decode subchannel N into stream-N.dab file\n"
+ " if DAB+: decode audio to stream-N.wav file and extract PAD to stream-N.dab\n"
+ " (superframes with RS coding)\n"
" -s <filename.yaml>\n"
" statistics mode: decode all subchannels and measure audio level, write statistics to file\n"
" -n N stop analysing after N ETI frames\n"
diff --git a/yamlexample.py b/yamlexample.py
index 7001b23..6bd73e1 100755
--- a/yamlexample.py
+++ b/yamlexample.py
@@ -3,6 +3,9 @@
# An example on how to read the YAML output from etisnoop
# Pipe etisnoop to this script
#
+# On Ubuntu 20.04+ install the following package:
+# `sudo apt install python-is-python3`
+#
# License: public domain
import sys