diff --git a/plugins/channelrx/demoddatv/datvdemod.cpp b/plugins/channelrx/demoddatv/datvdemod.cpp
index 78fb44057..4834f2217 100644
--- a/plugins/channelrx/demoddatv/datvdemod.cpp
+++ b/plugins/channelrx/demoddatv/datvdemod.cpp
@@ -576,6 +576,7 @@ void DATVDemod::webapiFormatChannelReport(SWGSDRangel::SWGChannelReport& respons
response.getDatvDemodReport()->setChannelPowerDb(CalcDb::dbPower(magsq));
response.getDatvDemodReport()->setAudioActive(audioActive() ? 1 : 0);
response.getDatvDemodReport()->setAudioDecodeOk(audioDecodeOK() ? 1 : 0);
+ response.getDatvDemodReport()->setSymbolRate(m_settings.m_symbolRate); // This is repeated from settings for convenience
response.getDatvDemodReport()->setModcodCodeRate(getModcodCodeRate());
response.getDatvDemodReport()->setModcodModulation(getModcodModulation());
response.getDatvDemodReport()->setSetByModcod(isCstlnSetByModcod() ? 1 : 0);
diff --git a/sdrbase/resources/webapi/doc/html2/index.html b/sdrbase/resources/webapi/doc/html2/index.html
index 1c0a1eb6e..1161844fd 100644
--- a/sdrbase/resources/webapi/doc/html2/index.html
+++ b/sdrbase/resources/webapi/doc/html2/index.html
@@ -4877,6 +4877,10 @@ margin-bottom: 20px;
"type" : "integer",
"description" : "UDP thread (1 running, 0 idle)"
},
+ "symbolRate" : {
+ "type" : "integer",
+ "description" : "Symbol rate in symbols per second - repeated from settings for convenience\n"
+ },
"modcodModulation" : {
"type" : "integer",
"description" : "Modulation set by DVB-S2 MODCOD\n * -1: Unset\n * 0: BPSK\n * 1: QPSK\n * 2: PSK8\n * 3: APSK16\n * 4: APSK32\n * 5: APSK64E\n * 6: QAM16\n * 7: QAM64\n * 8: QAM256\n"
@@ -59468,7 +59472,7 @@ except ApiException as e:
- Generated 2025-05-03T03:12:21.688+02:00
+ Generated 2025-05-03T17:59:40.379+02:00
diff --git a/sdrbase/resources/webapi/doc/swagger/include/DATVDemod.yaml b/sdrbase/resources/webapi/doc/swagger/include/DATVDemod.yaml
index 39c01c646..c254382af 100644
--- a/sdrbase/resources/webapi/doc/swagger/include/DATVDemod.yaml
+++ b/sdrbase/resources/webapi/doc/swagger/include/DATVDemod.yaml
@@ -145,6 +145,10 @@ DATVDemodReport:
udpRunning:
description: UDP thread (1 running, 0 idle)
type: integer
+ symbolRate:
+ type: integer
+ description: >
+ Symbol rate in symbols per second - repeated from settings for convenience
modcodModulation:
type: integer
description: >
diff --git a/swagger/sdrangel/api/swagger/include/DATVDemod.yaml b/swagger/sdrangel/api/swagger/include/DATVDemod.yaml
index 51f32fc7e..538c9b71c 100644
--- a/swagger/sdrangel/api/swagger/include/DATVDemod.yaml
+++ b/swagger/sdrangel/api/swagger/include/DATVDemod.yaml
@@ -145,6 +145,10 @@ DATVDemodReport:
udpRunning:
description: UDP thread (1 running, 0 idle)
type: integer
+ symbolRate:
+ type: integer
+ description: >
+ Symbol rate in symbols per second - repeated from settings for convenience
modcodModulation:
type: integer
description: >
diff --git a/swagger/sdrangel/code/html2/index.html b/swagger/sdrangel/code/html2/index.html
index 1c0a1eb6e..1161844fd 100644
--- a/swagger/sdrangel/code/html2/index.html
+++ b/swagger/sdrangel/code/html2/index.html
@@ -4877,6 +4877,10 @@ margin-bottom: 20px;
"type" : "integer",
"description" : "UDP thread (1 running, 0 idle)"
},
+ "symbolRate" : {
+ "type" : "integer",
+ "description" : "Symbol rate in symbols per second - repeated from settings for convenience\n"
+ },
"modcodModulation" : {
"type" : "integer",
"description" : "Modulation set by DVB-S2 MODCOD\n * -1: Unset\n * 0: BPSK\n * 1: QPSK\n * 2: PSK8\n * 3: APSK16\n * 4: APSK32\n * 5: APSK64E\n * 6: QAM16\n * 7: QAM64\n * 8: QAM256\n"
@@ -59468,7 +59472,7 @@ except ApiException as e:
- Generated 2025-05-03T03:12:21.688+02:00
+ Generated 2025-05-03T17:59:40.379+02:00
diff --git a/swagger/sdrangel/code/qt5/client/SWGDATVDemodReport.cpp b/swagger/sdrangel/code/qt5/client/SWGDATVDemodReport.cpp
index d90cca7d6..b99ae33ed 100644
--- a/swagger/sdrangel/code/qt5/client/SWGDATVDemodReport.cpp
+++ b/swagger/sdrangel/code/qt5/client/SWGDATVDemodReport.cpp
@@ -40,6 +40,8 @@ SWGDATVDemodReport::SWGDATVDemodReport() {
m_video_decode_ok_isSet = false;
udp_running = 0;
m_udp_running_isSet = false;
+ symbol_rate = 0;
+ m_symbol_rate_isSet = false;
modcod_modulation = 0;
m_modcod_modulation_isSet = false;
modcod_code_rate = 0;
@@ -70,6 +72,8 @@ SWGDATVDemodReport::init() {
m_video_decode_ok_isSet = false;
udp_running = 0;
m_udp_running_isSet = false;
+ symbol_rate = 0;
+ m_symbol_rate_isSet = false;
modcod_modulation = 0;
m_modcod_modulation_isSet = false;
modcod_code_rate = 0;
@@ -95,6 +99,7 @@ SWGDATVDemodReport::cleanup() {
+
}
SWGDATVDemodReport*
@@ -120,6 +125,8 @@ SWGDATVDemodReport::fromJsonObject(QJsonObject &pJson) {
::SWGSDRangel::setValue(&udp_running, pJson["udpRunning"], "qint32", "");
+ ::SWGSDRangel::setValue(&symbol_rate, pJson["symbolRate"], "qint32", "");
+
::SWGSDRangel::setValue(&modcod_modulation, pJson["modcodModulation"], "qint32", "");
::SWGSDRangel::setValue(&modcod_code_rate, pJson["modcodCodeRate"], "qint32", "");
@@ -164,6 +171,9 @@ SWGDATVDemodReport::asJsonObject() {
if(m_udp_running_isSet){
obj->insert("udpRunning", QJsonValue(udp_running));
}
+ if(m_symbol_rate_isSet){
+ obj->insert("symbolRate", QJsonValue(symbol_rate));
+ }
if(m_modcod_modulation_isSet){
obj->insert("modcodModulation", QJsonValue(modcod_modulation));
}
@@ -243,6 +253,16 @@ SWGDATVDemodReport::setUdpRunning(qint32 udp_running) {
this->m_udp_running_isSet = true;
}
+qint32
+SWGDATVDemodReport::getSymbolRate() {
+ return symbol_rate;
+}
+void
+SWGDATVDemodReport::setSymbolRate(qint32 symbol_rate) {
+ this->symbol_rate = symbol_rate;
+ this->m_symbol_rate_isSet = true;
+}
+
qint32
SWGDATVDemodReport::getModcodModulation() {
return modcod_modulation;
@@ -316,6 +336,9 @@ SWGDATVDemodReport::isSet(){
if(m_udp_running_isSet){
isObjectUpdated = true; break;
}
+ if(m_symbol_rate_isSet){
+ isObjectUpdated = true; break;
+ }
if(m_modcod_modulation_isSet){
isObjectUpdated = true; break;
}
diff --git a/swagger/sdrangel/code/qt5/client/SWGDATVDemodReport.h b/swagger/sdrangel/code/qt5/client/SWGDATVDemodReport.h
index a99e0249f..f2cb07c0f 100644
--- a/swagger/sdrangel/code/qt5/client/SWGDATVDemodReport.h
+++ b/swagger/sdrangel/code/qt5/client/SWGDATVDemodReport.h
@@ -59,6 +59,9 @@ public:
qint32 getUdpRunning();
void setUdpRunning(qint32 udp_running);
+ qint32 getSymbolRate();
+ void setSymbolRate(qint32 symbol_rate);
+
qint32 getModcodModulation();
void setModcodModulation(qint32 modcod_modulation);
@@ -96,6 +99,9 @@ private:
qint32 udp_running;
bool m_udp_running_isSet;
+ qint32 symbol_rate;
+ bool m_symbol_rate_isSet;
+
qint32 modcod_modulation;
bool m_modcod_modulation_isSet;