Browse Source

tags/2021-05-28
jules 18 years ago
parent
commit
6f28298e4c
1 changed files with 12 additions and 2 deletions
  1. +12
    -2
      build/linux/platform_specific_code/juce_linux_Audio.cpp

+ 12
- 2
build/linux/platform_specific_code/juce_linux_Audio.cpp View File

@@ -366,11 +366,11 @@ public:
: Thread ("Juce ALSA"), : Thread ("Juce ALSA"),
sampleRate (0), sampleRate (0),
bufferSize (0), bufferSize (0),
callback (0),
deviceName (deviceName_), deviceName (deviceName_),
outputDevice (0), outputDevice (0),
inputDevice (0), inputDevice (0),
numCallbacks (0), numCallbacks (0),
callback (0),
totalNumInputChannels (0), totalNumInputChannels (0),
totalNumOutputChannels (0) totalNumOutputChannels (0)
{ {
@@ -604,6 +604,7 @@ public:
Array <int> sampleRates; Array <int> sampleRates;
StringArray channelNamesOut, channelNamesIn; StringArray channelNamesOut, channelNamesIn;
AudioIODeviceCallback* callback;
private: private:
//============================================================================== //==============================================================================
@@ -612,7 +613,6 @@ private:
ALSADevice* inputDevice; ALSADevice* inputDevice;
int numCallbacks; int numCallbacks;
AudioIODeviceCallback* callback;
CriticalSection callbackLock; CriticalSection callbackLock;
float* outputChannelData [maxNumChans]; float* outputChannelData [maxNumChans];
@@ -791,12 +791,22 @@ public:
callback = 0; callback = 0;
internal->setCallback (callback); internal->setCallback (callback);
if (callback != 0)
callback->audioDeviceAboutToStart (internal->sampleRate,
internal->bufferSize);
isStarted = (callback != 0); isStarted = (callback != 0);
} }
void stop() void stop()
{ {
AudioIODeviceCallback* const oldCallback = internal->callback;
start (0); start (0);
if (oldCallback != 0)
oldCallback->audioDeviceStopped();
} }
bool isPlaying() bool isPlaying()


Loading…
Cancel
Save