On Wed, 18 Dec 2019 01:04:42 GMT, Alexander Matveev <almat...@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. All my testing looks good. The code changes look fine, although I have a couple questions. modules/javafx.media/src/main/native/gstreamer/gstreamer-lite/gst-plugins-good/gst/spectrum/gstspectrum.c line 915: > 914: bpf = GST_AUDIO_FILTER_BPF (spectrum); > 915: #ifdef OSX > 916: if (spectrum->bps_user != 0 && spectrum->bpf_user != 0) { Should this also be qualified with `GSTREAMER_LITE` since it represents changes specific to our port? 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? ------------- PR: https://git.openjdk.java.net/jfx/pull/69