diff --git a/plugins/channeltx/filesource/filesource.cpp b/plugins/channeltx/filesource/filesource.cpp
index 2815a1a8a..0b77e8ee7 100644
--- a/plugins/channeltx/filesource/filesource.cpp
+++ b/plugins/channeltx/filesource/filesource.cpp
@@ -17,14 +17,6 @@
 
 #include "filesource.h"
 
-#if (defined _WIN32_) || (defined _MSC_VER)
-#include "windows_time.h"
-#include <stdint.h>
-#else
-#include <sys/time.h>
-#include <unistd.h>
-#endif
-
 #include <QDebug>
 #include <QNetworkAccessManager>
 #include <QNetworkReply>
diff --git a/plugins/samplesink/bladerf1output/bladerf1output.cpp b/plugins/samplesink/bladerf1output/bladerf1output.cpp
index dc172ad2d..54b39cec6 100644
--- a/plugins/samplesink/bladerf1output/bladerf1output.cpp
+++ b/plugins/samplesink/bladerf1output/bladerf1output.cpp
@@ -341,9 +341,14 @@ bool Bladerf1Output::applySettings(const BladeRF1OutputSettings& settings, bool
 
 	if ((m_settings.m_devSampleRate != settings.m_devSampleRate) || (m_settings.m_log2Interp != settings.m_log2Interp) || force)
 	{
+#if defined(_MSC_VER)
+        unsigned int fifoRate = (unsigned int) settings.m_devSampleRate / (1<<settings.m_log2Interp);
+        fifoRate = fifoRate < 48000U ? 48000U : fifoRate;
+#else        
         unsigned int fifoRate = std::max(
             (unsigned int) settings.m_devSampleRate / (1<<settings.m_log2Interp),
             DeviceBladeRF1Shared::m_sampleFifoMinRate);
+#endif
         m_sampleSourceFifo.resize(SampleSourceFifo::getSizePolicy(fifoRate));
 	}
 
diff --git a/plugins/samplesink/bladerf2output/bladerf2output.cpp b/plugins/samplesink/bladerf2output/bladerf2output.cpp
index 95a415488..f49efb3ee 100644
--- a/plugins/samplesink/bladerf2output/bladerf2output.cpp
+++ b/plugins/samplesink/bladerf2output/bladerf2output.cpp
@@ -722,9 +722,14 @@ bool BladeRF2Output::applySettings(const BladeRF2OutputSettings& settings, bool
             bladeRF2OutputThread->setFifo(requestedChannel, 0);
         }
 
+#if defined(_MSC_VER)
+        unsigned int fifoRate = (unsigned int) settings.m_devSampleRate / (1<<settings.m_log2Interp);
+        fifoRate = fifoRate < 48000U ? 48000U : fifoRate;
+#else
         unsigned int fifoRate = std::max(
             (unsigned int) settings.m_devSampleRate / (1<<settings.m_log2Interp),
             DeviceBladeRF2Shared::m_sampleFifoMinRate);
+#endif
         m_sampleSourceFifo.resize(SampleSourceFifo::getSizePolicy(fifoRate));
 
         if (fifo) {
diff --git a/plugins/samplesink/limesdroutput/limesdroutput.cpp b/plugins/samplesink/limesdroutput/limesdroutput.cpp
index b782d390e..674d44249 100644
--- a/plugins/samplesink/limesdroutput/limesdroutput.cpp
+++ b/plugins/samplesink/limesdroutput/limesdroutput.cpp
@@ -823,9 +823,14 @@ bool LimeSDROutput::applySettings(const LimeSDROutputSettings& settings, bool fo
         reverseAPIKeys.append("devSampleRate");
         reverseAPIKeys.append("log2SoftInterp");
 
+#if defined(_MSC_VER)
+        unsigned int fifoRate = (unsigned int) settings.m_devSampleRate / (1<<settings.m_log2SoftInterp);
+        fifoRate = fifoRate < 48000U ? 48000U : fifoRate;
+#else
         unsigned int fifoRate = std::max(
             (unsigned int) settings.m_devSampleRate / (1<<settings.m_log2SoftInterp),
             DeviceLimeSDRShared::m_sampleFifoMinRate);
+#endif
         m_sampleSourceFifo.resize(SampleSourceFifo::getSizePolicy(fifoRate));
         qDebug("LimeSDROutput::applySettings: resize FIFO: rate %u", fifoRate);
     }