On Fri, 20 Dec 2019 22:24:36 GMT, Kevin Rushforth <k...@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