Browse Source

ASIO fixes.

tags/2021-05-28
jules 12 years ago
parent
commit
1b8e22ca2b
1 changed files with 2 additions and 40 deletions
  1. +2
    -40
      modules/juce_audio_devices/native/juce_win32_ASIO.cpp

+ 2
- 40
modules/juce_audio_devices/native/juce_win32_ASIO.cpp View File

@@ -510,8 +510,6 @@ public:
} }
error = String::empty; error = String::empty;
needToReset = false;
isReSync = false;
err = 0; err = 0;
buffersCreated = false; buffersCreated = false;
@@ -538,9 +536,6 @@ public:
if (needToReset) if (needToReset)
{ {
if (isReSync)
JUCE_ASIO_LOG ("Resync request");
JUCE_ASIO_LOG ("! Resetting ASIO after sample rate change"); JUCE_ASIO_LOG ("! Resetting ASIO after sample rate change");
removeCurrentDriver(); removeCurrentDriver();
@@ -551,7 +546,6 @@ public:
JUCE_ASIO_LOG ("ASIOInit: " + error); JUCE_ASIO_LOG ("ASIOInit: " + error);
needToReset = false; needToReset = false;
isReSync = false;
} }
numActiveInputChans = 0; numActiveInputChans = 0;
@@ -737,8 +731,6 @@ public:
} }
needToReset = false; needToReset = false;
isReSync = false;
return error; return error;
} }
@@ -755,7 +747,6 @@ public:
deviceIsOpen = false; deviceIsOpen = false;
isStarted = false; isStarted = false;
needToReset = false; needToReset = false;
isReSync = false;
JUCE_ASIO_LOG ("ASIO - stopping"); JUCE_ASIO_LOG ("ASIO - stopping");
@@ -851,12 +842,6 @@ public:
startTimer (500); startTimer (500);
} }
void resyncRequest() noexcept
{
isReSync = true;
resetRequest();
}
void timerCallback() void timerCallback()
{ {
if (! insideControlPanelModalLoop) if (! insideControlPanelModalLoop)
@@ -920,7 +905,7 @@ private:
bool deviceIsOpen, isStarted, buffersCreated; bool deviceIsOpen, isStarted, buffersCreated;
bool volatile isASIOOpen; bool volatile isASIOOpen;
bool volatile calledback; bool volatile calledback;
bool volatile littleEndian, postOutput, needToReset, isReSync;
bool volatile littleEndian, postOutput, needToReset;
bool volatile insideControlPanelModalLoop; bool volatile insideControlPanelModalLoop;
bool volatile shouldUsePreferredSize; bool volatile shouldUsePreferredSize;
@@ -1018,7 +1003,6 @@ private:
JUCE_ASIO_LOG ("opening ASIO device: " + getName()); JUCE_ASIO_LOG ("opening ASIO device: " + getName());
needToReset = false; needToReset = false;
isReSync = false;
outputChannelNames.clear(); outputChannelNames.clear();
inputChannelNames.clear(); inputChannelNames.clear();
bufferSizes.clear(); bufferSizes.clear();
@@ -1235,8 +1219,6 @@ private:
deviceIsOpen = false; deviceIsOpen = false;
needToReset = false; needToReset = false;
isReSync = false;
return error; return error;
} }
@@ -1273,21 +1255,6 @@ private:
const ScopedLock sl (callbackLock); const ScopedLock sl (callbackLock);
if (needToReset)
{
needToReset = false;
if (isReSync)
{
JUCE_ASIO_LOG ("! ASIO resync");
isReSync = false;
}
else
{
startTimer (20);
}
}
if (bi >= 0) if (bi >= 0)
{ {
const int samps = currentBlockSizeSamples; const int samps = currentBlockSizeSamples;
@@ -1377,14 +1344,9 @@ private:
case kAsioBufferSizeChange: case kAsioBufferSizeChange:
case kAsioResetRequest: case kAsioResetRequest:
if (currentASIODev[deviceIndex] != nullptr)
currentASIODev[deviceIndex]->resetRequest();
return 1;
case kAsioResyncRequest: case kAsioResyncRequest:
if (currentASIODev[deviceIndex] != nullptr) if (currentASIODev[deviceIndex] != nullptr)
currentASIODev[deviceIndex]->resyncRequest();
currentASIODev[deviceIndex]->resetRequest();
return 1; return 1;


Loading…
Cancel
Save