diff --git a/plugins/samplesource/limesdrinput/limesdrinput.cpp b/plugins/samplesource/limesdrinput/limesdrinput.cpp
index 4c121104f..1eb89eed0 100644
--- a/plugins/samplesource/limesdrinput/limesdrinput.cpp
+++ b/plugins/samplesource/limesdrinput/limesdrinput.cpp
@@ -358,7 +358,7 @@ bool LimeSDRInput::handleMessage(const Message& message)
}
else
{
- qDebug() << "LimeSDRInput::handleMessage: got stream status at %llu" << status.timestamp
+ qDebug() << "LimeSDRInput::handleMessage: got stream status at: " << status.timestamp
<< " fifoFilledCount: " << status.fifoFilledCount
<< " fifoSize: " << status.fifoSize
<< " underrun: " << status.underrun
diff --git a/plugins/samplesource/limesdrinput/limesdrinput.h b/plugins/samplesource/limesdrinput/limesdrinput.h
index 9256d4256..c1753e4ad 100644
--- a/plugins/samplesource/limesdrinput/limesdrinput.h
+++ b/plugins/samplesource/limesdrinput/limesdrinput.h
@@ -128,6 +128,7 @@ public:
uint64_t getTimestamp() const { return m_timestamp; }
static MsgReportStreamInfo* create(
+ bool success,
bool active,
uint32_t fifoFilledCount,
uint32_t fifoSize,
@@ -140,6 +141,7 @@ public:
)
{
return new MsgReportStreamInfo(
+ success,
active,
fifoFilledCount,
fifoSize,
diff --git a/plugins/samplesource/limesdrinput/limesdrinputgui.cpp b/plugins/samplesource/limesdrinput/limesdrinputgui.cpp
index 6e38962a9..32d78d697 100644
--- a/plugins/samplesource/limesdrinput/limesdrinputgui.cpp
+++ b/plugins/samplesource/limesdrinput/limesdrinputgui.cpp
@@ -186,21 +186,34 @@ void LimeSDRInputGUI::handleMessagesToGUI()
if (report->getSuccess())
{
- if (report->getActive())
- {
- ui->streamStatusLabel->setStyleSheet("QLabel { background-color : green; }");
- }
- else
- {
- ui->streamStatusLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
+ ui->streamStatusLabel->setStyleSheet("QLabel { background-color : green; }");
+ ui->streamLinkRateText->setText(tr("%1 MB/s").arg(QString::number(report->getLinkRate() / 1000000.0f, 'f', 3)));
+
+ if (report->getUnderrun() > 0) {
+ ui->underrunLabel->setStyleSheet("QLabel { background-color : red; }");
+ } else {
+ ui->underrunLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
}
- ui->streamSampleRateText->setText(tr("%1kS").arg(QString::number(report->getSampleRate() / 1000.0f, 'f', 0)));
- ui->streamLinkRateText->setText(tr("%1kB").arg(QString::number(report->getLinkRate() / 1000.0f, 'f', 0)));
+ if (report->getOverrun() > 0) {
+ ui->overrunLabel->setStyleSheet("QLabel { background-color : red; }");
+ } else {
+ ui->overrunLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
+ }
+
+ if (report->getDroppedPackets() > 0) {
+ ui->droppedLabel->setStyleSheet("QLabel { background-color : red; }");
+ } else {
+ ui->droppedLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
+ }
+
+ ui->fifoBar->setMaximum(report->getFifoSize());
+ ui->fifoBar->setValue(report->getFifoFilledCount());
+ ui->fifoBar->setToolTip(tr("FIFO fill %1/%2 bytes").arg(QString::number(report->getFifoFilledCount())).arg(QString::number(report->getFifoSize())));
}
else
{
- ui->streamStatusLabel->setStyleSheet("QLabel { background-color : red; }");
+ ui->streamStatusLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
}
}
}
diff --git a/plugins/samplesource/limesdrinput/limesdrinputgui.ui b/plugins/samplesource/limesdrinput/limesdrinputgui.ui
index eb4740af8..443cff8d0 100644
--- a/plugins/samplesource/limesdrinput/limesdrinputgui.ui
+++ b/plugins/samplesource/limesdrinput/limesdrinputgui.ui
@@ -628,18 +628,68 @@
-
-
+
- 50
+ 12
0
+
+ Red if underruns
+
+
+ background:rgb(79,79,79);
+
- 00000kS
+ U
- Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+ Qt::AlignCenter
+
+
+
+ -
+
+
+
+ 12
+ 0
+
+
+
+ Red if overruns
+
+
+ background:rgb(79,79,79);
+
+
+ O
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+
+ 12
+ 0
+
+
+
+ Red if dropped packets
+
+
+ background:rgb(79,79,79);
+
+
+ D
+
+
+ Qt::AlignCenter
@@ -647,18 +697,43 @@
- 50
+ 90
0
+
+ Stream link rate (MB/s)
+
- 00000kB
+ 000.000 MB/s
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+ -
+
+
+
+ 16777215
+ 15
+
+
+
+
+ 8
+
+
+
+ border: 2px solid rgb(79, 79, 79);
+text-align: center;
+
+
+ 0
+
+
+
-