Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LV2 plugin does not produce (much) sound #2

Open
danielappelt opened this issue Feb 22, 2017 · 3 comments · Fixed by NixOS/nixpkgs#72318
Open

LV2 plugin does not produce (much) sound #2

danielappelt opened this issue Feb 22, 2017 · 3 comments · Fixed by NixOS/nixpkgs#72318

Comments

@danielappelt
Copy link

Unfortunately, the only sound that I am able to produce with the LV2 plugin of libfmsynth is a very quiet, low-pitched "hummm" if I send MIDI notes to it.

I have created the LV2 on a recent Arch Linux / x86_64 according to your documentation. The plugin loads fine in jalv.gtkmm. I am able to load one of the provided presets and can see corresponding value changes in the plugin's GUI. MIDI notes are send using jack-keyboard, and the required jack connections are created using Catia. The same setup produces audible sounds using for example TAL-Noisemaker LV2. I can reproduce the same behaviour using Carla as a host.

Apart from that I have created the test program. If I run the program providing a file name it creates this text file containing two columns of numbers.

Do you have any idea what might went wrong?

@magnetophon
Copy link

Same issue here.
I love this synth; it would be great to have working again!

@x42
Copy link

x42 commented Oct 30, 2019

Quick debug session with @magnetophon - it works on his box when compiled without AVX,SSE

make SIMD=0

I don't have this issue, here both AVX and SSE are fine (Intel i7-5600U). tested by manually commenting

libfmsynth/src/fmsynth.c

Lines 682 to 687 in 9ffa1d2

#if defined(__AVX__) && defined(FMSYNTH_SIMD)
#include "x86/fmsynth_avx.c"
#elif defined(__SSE__) && defined(FMSYNTH_SIMD)
#include "x86/fmsynth_sse.c"
#elif defined(__ARM_NEON__) && defined(FMSYNTH_SIMD)
#include "arm/fmsynth_arm.c"

So it seems that some of the dedicated asm code is not portable or fails on some CPUs (even if AVX or SSE are supported)

@x42
Copy link

x42 commented Oct 30, 2019

Could the issue be alignment? I don't see boilerplate that tests if float* oleft, float *oright or voice->phases was allocated and aligned with posix_memalign

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants