Browse Source

tags/2021-05-28
jules 17 years ago
parent
commit
7007d01fd3
4 changed files with 59 additions and 42 deletions
  1. +23
    -17
      juce_amalgamated.cpp
  2. +32
    -22
      juce_amalgamated.h
  3. +1
    -1
      src/juce_appframework/audio/audio_sources/juce_AudioSourcePlayer.cpp
  4. +3
    -2
      src/juce_appframework/audio/processors/juce_AudioProcessorGraph.cpp

+ 23
- 17
juce_amalgamated.cpp View File

@@ -19520,7 +19520,7 @@ void AudioSourcePlayer::audioDeviceIOCallback (const float** inputChannelData,

source->getNextAudioBlock (info);

for (int i = info.buffer->getNumChannels(); --i >= 0;)
for (i = info.buffer->getNumChannels(); --i >= 0;)
info.buffer->applyGainRamp (i, info.startSample, info.numSamples, lastGain, gain);

lastGain = gain;
@@ -31709,7 +31709,8 @@ void AudioProcessorGraph::processBlock (AudioSampleBuffer& buffer, MidiBuffer& m
currentMidiInputBuffer = &midiMessages;
currentMidiOutputBuffer.clear();

for (int i = 0; i < renderingOps.size(); ++i)
int i;
for (i = 0; i < renderingOps.size(); ++i)
{
GraphRenderingOps::AudioGraphRenderingOp* const op
= (GraphRenderingOps::AudioGraphRenderingOp*) renderingOps.getUnchecked(i);
@@ -31717,7 +31718,7 @@ void AudioProcessorGraph::processBlock (AudioSampleBuffer& buffer, MidiBuffer& m
op->perform (renderingBuffers, midiBuffers, numSamples);
}

for (int i = 0; i < buffer.getNumChannels(); ++i)
for (i = 0; i < buffer.getNumChannels(); ++i)
buffer.copyFrom (i, 0, currentAudioOutputBuffer, i, 0, numSamples);
}

@@ -66661,8 +66662,6 @@ void MidiKeyboardComponent::setMidiChannelsToDisplay (const int midiChannelMask)

void MidiKeyboardComponent::setVelocity (const float velocity_)
{
jassert (velocity > 0 && velocity <= 1.0f);

velocity = jlimit (0.0f, 1.0f, velocity_);
}

@@ -236887,8 +236886,6 @@ const String DSoundAudioIODevice::openDevice (const BitArray& inputChannels,
{
closeDevice();
totalSamplesOut = 0;
enabledInputs.clear();
enabledOutputs.clear();

sampleRate = sampleRate_;

@@ -236901,20 +236898,24 @@ const String DSoundAudioIODevice::openDevice (const BitArray& inputChannels,
dlh.scanForDevices();

enabledInputs = inputChannels;
numInputBuffers = inputChannels.countNumberOfSetBits();
enabledInputs.setRange (inChannels.size(),
enabledInputs.getHighestBit() + 1 - inChannels.size(),
false);

numInputBuffers = enabledInputs.countNumberOfSetBits();
inputBuffers = new float* [numInputBuffers + 2];
zeromem (inputBuffers, sizeof (inputBuffers));
int i, numIns = 0;

for (i = 0; i < inputChannels.getHighestBit(); i += 2)
for (i = 0; i <= enabledInputs.getHighestBit(); i += 2)
{
float* left = 0;
float* right = 0;

if (inputChannels[i])
if (enabledInputs[i])
left = inputBuffers[numIns++] = (float*) juce_calloc ((bufferSizeSamples + 16) * sizeof (float));

if (inputChannels[i + 1])
if (enabledInputs[i + 1])
right = inputBuffers[numIns++] = (float*) juce_calloc ((bufferSizeSamples + 16) * sizeof (float));

if (left != 0 || right != 0)
@@ -236925,20 +236926,24 @@ const String DSoundAudioIODevice::openDevice (const BitArray& inputChannels,
}

enabledOutputs = outputChannels;
numOutputBuffers = outputChannels.countNumberOfSetBits();
enabledOutputs.setRange (outChannels.size(),
enabledOutputs.getHighestBit() + 1 - outChannels.size(),
false);

numOutputBuffers = enabledOutputs.countNumberOfSetBits();
outputBuffers = new float* [numOutputBuffers + 2];
zeromem (outputBuffers, sizeof (outputBuffers));
int numOuts = 0;

for (i = 0; i < outputChannels.getHighestBit(); i += 2)
for (i = 0; i <= enabledOutputs.getHighestBit(); i += 2)
{
float* left = 0;
float* right = 0;

if (inputChannels[i])
if (enabledOutputs[i])
left = outputBuffers[numOuts++] = (float*) juce_calloc ((bufferSizeSamples + 16) * sizeof (float));

if (inputChannels[i + 1])
if (enabledOutputs[i + 1])
right = outputBuffers[numOuts++] = (float*) juce_calloc ((bufferSizeSamples + 16) * sizeof (float));

if (left != 0 || right != 0)
@@ -244281,7 +244286,6 @@ int juce_seekInInternetFile (void* handle, int newPosition)

return 0;
}

/********* End of inlined file: juce_mac_HTTPStream.h *********/

int SystemStats::getMACAddresses (int64* addresses, int maxNum, const bool littleEndian) throw()
@@ -252712,7 +252716,6 @@ int juce_seekInInternetFile (void* handle, int newPosition)

return 0;
}

/********* End of inlined file: juce_mac_HTTPStream.h *********/

static bool GetEthernetIterator (io_iterator_t* matchingServices) throw()
@@ -255128,6 +255131,9 @@ void FileChooser::showPlatformDialog (OwnedArray<File>& results,
options.clientName = PlatformUtilities::juceStringToCFString (name);
CFStringRef message = PlatformUtilities::juceStringToCFString (title);

if (userInfo.defaultLocationValid)
options.saveFileName = PlatformUtilities::juceStringToCFString (currentFileOrDirectory.getFileName());

// nasty layout bug if the message text is set for a directory browser..
if (selectsDirectory)
options.windowTitle = message;


+ 32
- 22
juce_amalgamated.h View File

@@ -41,8 +41,8 @@
==============================================================================
*/

#ifndef __ALL_JUCE_HEADERS_H__
#define __ALL_JUCE_HEADERS_H__
#ifndef __JUCE_AMALGAMATED_TEMPLATE_JUCEHEADER__
#define __JUCE_AMALGAMATED_TEMPLATE_JUCEHEADER__

#define DONT_AUTOLINK_TO_JUCE_LIBRARY 1

@@ -201,7 +201,7 @@
/** Enabling this builds support for AudioUnit audio plugins.
@see AudioUnitPluginFormat, AudioPluginFormat, AudioPluginFormatManager, JUCE_PLUGINHOST_VST
*/
#define JUCE_PLUGINHOST_AU 1
//#define JUCE_PLUGINHOST_AU 1

/** Disabling this will avoid linking to any UI code. This is handy for
writing command-line utilities, e.g. on linux boxes which don't have some
@@ -2721,8 +2721,7 @@ protected:
/** Destructor. */
~ArrayAllocationBase() throw()
{
if (elements != 0)
juce_free (elements);
delete[] elements;
}

/** Changes the amount of storage allocated.
@@ -2736,23 +2735,26 @@ protected:
{
if (numAllocated != numElements)
{
numAllocated = numElements;

if (numElements > 0)
{
if (elements == 0)
elements = (ElementType*) juce_malloc (sizeof (ElementType) * numElements);
else
elements = (ElementType*) juce_realloc (elements, sizeof (ElementType) * numElements);
ElementType* const newElements = new ElementType [numElements];

const int itemsToRetain = jmin (numElements, numAllocated);

for (int i = 0; i < itemsToRetain; ++i)
newElements[i] = elements[i];

delete[] elements;
elements = newElements;

}
else
else if (elements != 0)
{
if (elements != 0)
{
juce_free (elements);
elements = 0;
}
delete[] elements;
elements = 0;
}

numAllocated = numElements;
}
}

@@ -12271,6 +12273,9 @@ public:
for lengthy POST operations, so that you can provide user feedback.
@param progressCallbackContext if a callback is specified, this value will be passed to
the function
@param extraHeaders if not empty, this string is appended onto the headers that
are used for the request. It must therefore be a valid set of HTML
header directives, separated by newlines.
*/
InputStream* createInputStream (const bool usePostCommand,
OpenStreamProgressCallback* const progressCallback = 0,
@@ -41062,6 +41067,7 @@ public:
dragged.

@param sourceDescription the description string passed into DragAndDropContainer::startDragging()
@param sourceComponent the component that was passed into DragAndDropContainer::startDragging()
@returns true if this component wants to receive the other callbacks regarging this
type of object; if it returns false, no other callbacks will be made.
*/
@@ -41077,7 +41083,7 @@ public:
user feedback about whether the item can be dropped here or not.

@param sourceDescription the description string passed into DragAndDropContainer::startDragging()
@param sourceComponent the component passed into DragAndDropContainer::startDragging()
@param sourceComponent the component that was passed into DragAndDropContainer::startDragging()
@param x the mouse x position, relative to this component
@param y the mouse y position, relative to this component
@see itemDragExit
@@ -41094,7 +41100,7 @@ public:
this lets you know what happens in-between.

@param sourceDescription the description string passed into DragAndDropContainer::startDragging()
@param sourceComponent the component passed into DragAndDropContainer::startDragging()
@param sourceComponent the component that was passed into DragAndDropContainer::startDragging()
@param x the mouse x position, relative to this component
@param y the mouse y position, relative to this component
*/
@@ -41112,7 +41118,7 @@ public:
as a signal to repaint it in its normal state.

@param sourceDescription the description string passed into DragAndDropContainer::startDragging()
@param sourceComponent the component passed into DragAndDropContainer::startDragging()
@param sourceComponent the component that was passed into DragAndDropContainer::startDragging()
@see itemDragEnter
*/
virtual void itemDragExit (const String& sourceDescription,
@@ -41127,7 +41133,7 @@ public:
clean up in here if there's anything you need to do when the drag finishes.

@param sourceDescription the description string passed into DragAndDropContainer::startDragging()
@param sourceComponent the component passed into DragAndDropContainer::startDragging()
@param sourceComponent the component that was passed into DragAndDropContainer::startDragging()
@param x the mouse x position, relative to this component
@param y the mouse y position, relative to this component
*/
@@ -44363,6 +44369,8 @@ public:
to be treated as a movement
@param offset values greater than 0.0 increase the minimum speed that will be used when
the threshold is reached
@param userCanPressKeyToSwapMode if true, then the user can hold down the ctrl or command
key to toggle velocity-sensitive mode
*/
void setVelocityModeParameters (const double sensitivity = 1.0,
const int threshold = 1.0,
@@ -50231,6 +50239,8 @@ public:
@param timeOutMsWhenCancelling when 'cancel' is pressed, this is how long to wait for
the thread to stop before killing it forcibly (see
Thread::stopThread() )
@param cancelButtonText the text that should be shown in the cancel button
(if it has one)
*/
ThreadWithProgressWindow (const String& windowTitle,
const bool hasProgressBar,
@@ -53356,4 +53366,4 @@ END_JUCE_NAMESPACE
#endif // __JUCE_JUCEHEADER__
/********* End of inlined file: juce.h *********/

#endif
#endif // __JUCE_AMALGAMATED_TEMPLATE_JUCEHEADER__

+ 1
- 1
src/juce_appframework/audio/audio_sources/juce_AudioSourcePlayer.cpp View File

@@ -162,7 +162,7 @@ void AudioSourcePlayer::audioDeviceIOCallback (const float** inputChannelData,
source->getNextAudioBlock (info);
for (int i = info.buffer->getNumChannels(); --i >= 0;)
for (i = info.buffer->getNumChannels(); --i >= 0;)
info.buffer->applyGainRamp (i, info.startSample, info.numSamples, lastGain, gain);
lastGain = gain;


+ 3
- 2
src/juce_appframework/audio/processors/juce_AudioProcessorGraph.cpp View File

@@ -1101,7 +1101,8 @@ void AudioProcessorGraph::processBlock (AudioSampleBuffer& buffer, MidiBuffer& m
currentMidiInputBuffer = &midiMessages;
currentMidiOutputBuffer.clear();
for (int i = 0; i < renderingOps.size(); ++i)
int i;
for (i = 0; i < renderingOps.size(); ++i)
{
GraphRenderingOps::AudioGraphRenderingOp* const op
= (GraphRenderingOps::AudioGraphRenderingOp*) renderingOps.getUnchecked(i);
@@ -1109,7 +1110,7 @@ void AudioProcessorGraph::processBlock (AudioSampleBuffer& buffer, MidiBuffer& m
op->perform (renderingBuffers, midiBuffers, numSamples);
}
for (int i = 0; i < buffer.getNumChannels(); ++i)
for (i = 0; i < buffer.getNumChannels(); ++i)
buffer.copyFrom (i, 0, currentAudioOutputBuffer, i, 0, numSamples);
}


Loading…
Cancel
Save