RFR: 8232589: Remove CoreAudio Utility Classes

Alexander Matveev almatvee at openjdk.java.net
Mon Jan 6 23:37:06 UTC 2020

On Fri, 20 Dec 2019 22:24:36 GMT, Kevin Rushforth <kcr at openjdk.org> wrote:

>> https://bugs.openjdk.java.net/browse/JDK-8232589
>> - Removed CoreAudio Utility classes.
>> - Spectrum which was depended on CoreAudio Utility classes for doing computations will now run GStreamer spectrum element to do spectrum. Element will be run without pipeline and will be used as utility library to do spectrum calculation. I added extra APIs to bypass proper element initialization.
>> - Equalizer and audio unit (volume and balance) where modified, so we can run then directly without CoreAudio pipeline.
> modules/javafx.media/src/main/native/jfxmedia/platform/osx/avf/AVFAudioEqualizer.cpp line 422:
>> 421:             mEQBufferA = (double*)calloc(mEQBufferSize, sizeof(double));
>> 422:             mEQBufferB = (double*)calloc(mEQBufferSize, sizeof(double));
>> 423:         }
> This is allocating 8 times (i.e., `sizeof(double)`) as much memory as before. I presume this is intentional?

No, it is allocating same amount of memory as before, unless I am missing something.
We used to have CAAutoFree<double> mEQBufferA and
CAAutoFree.alloc(size_t numItems) method allocates (numItems * sizeof(T)) bytes. See deleted CAAutoDisposer.h for CAAutoFree class implementation.


PR: https://git.openjdk.java.net/jfx/pull/69

More information about the openjfx-dev mailing list