brummer10 / fluida.lv2 Goto Github PK
View Code? Open in Web Editor NEWFluidsynth as LV2 plugin
License: GNU General Public License v2.0
Fluidsynth as LV2 plugin
License: GNU General Public License v2.0
Hi,
According this post https://forum.juce.com/t/lv2-issues/52412/21 makeResident
is unsupported feature, thus Fluida.lv2 (as some other Gx plugins) won't show in JUCE LV2 hosts.
Simple removing of lv2:requiredFeature guiext:makeResident;
line from the Fluida.ttl
fixes the issue, also it passes lv2lint
and works with jalv
.
shouldn't this be an instrument? http://lv2plug.in/ns/lv2core#InstrumentPlugin
Hi
I'd love to be able to drag'n drop soundfont file onto Fluida (to be able to use my favorite file browser, that is definitively not build-in Fluida one ;))
Do you plan to add this ? I'd find this VERY useful !
Thanks
Linux Mint 20.2 (Ubuntu 20.04) 64-bit
brian@Esprimo-P400:/tmp$ git clone https://github.com/brummer10/Fluida.lv2.git
Klone nach 'Fluida.lv2' ...
remote: Enumerating objects: 188, done.
remote: Counting objects: 100% (188/188), done.
remote: Compressing objects: 100% (128/128), done.
remote: Total 188 (delta 121), reused 121 (delta 59), pack-reused 0
Empfange Objekte: 100% (188/188), 95.35 KiB | 508.00 KiB/s, fertig.
Löse Unterschiede auf: 100% (121/121), fertig.
brian@Esprimo-P400:/tmp$ cd Fluida.lv2
brian@Esprimo-P400:/tmp/Fluida.lv2$ git submodule init
Submodul 'libxputty' (https://github.com/brummer10/libxputty.git) für Pfad 'libxputty' in die Konfiguration eingetragen.
brian@Esprimo-P400:/tmp/Fluida.lv2$ git submodule update
Klone nach '/tmp/Fluida.lv2/libxputty' ...
Submodul-Pfad: 'libxputty': '5c69824ff8cdd6a81511fae34dfe684d263da267' ausgecheckt
brian@Esprimo-P400:/tmp/Fluida.lv2$ make
Submodule up to date
make[1]: Verzeichnis „/tmp/Fluida.lv2/libxputty“ wird betreten
make[2]: Verzeichnis „/tmp/Fluida.lv2/libxputty/Build“ wird betreten
cd ../xputty/resources/ && xxd -i directory_open.png > ../../Build/directory_open.c
cc -c directory_open.c -o directory_open.o
cd ../xputty/resources/ && xxd -i save.png > ../../Build/save.c
cc -c save.c -o save.o
cd ../xputty/resources/ && xxd -i choice.png > ../../Build/choice.c
cc -c choice.c -o choice.o
cd ../xputty/resources/ && xxd -i directory_select.png > ../../Build/directory_select.c
cc -c directory_select.c -o directory_select.o
cd ../xputty/resources/ && xxd -i approved.png > ../../Build/approved.c
cc -c approved.c -o approved.o
cd ../xputty/resources/ && xxd -i midikeyboard.png > ../../Build/midikeyboard.c
cc -c midikeyboard.c -o midikeyboard.o
cd ../xputty/resources/ && xxd -i colors.png > ../../Build/colors.c
cc -c colors.c -o colors.o
cd ../xputty/resources/ && xxd -i error.png > ../../Build/error.c
cc -c error.c -o error.o
cd ../xputty/resources/ && xxd -i gear.png > ../../Build/gear.c
cc -c gear.c -o gear.o
cd ../xputty/resources/ && xxd -i grid.png > ../../Build/grid.c
cc -c grid.c -o grid.o
cd ../xputty/resources/ && xxd -i settings.png > ../../Build/settings.c
cc -c settings.c -o settings.o
cd ../xputty/resources/ && xxd -i message.png > ../../Build/message.c
cc -c message.c -o message.o
cd ../xputty/resources/ && xxd -i image_directory.png > ../../Build/image_directory.c
cc -c image_directory.c -o image_directory.o
cd ../xputty/resources/ && xxd -i question.png > ../../Build/question.c
cc -c question.c -o question.o
cd ../xputty/resources/ && xxd -i cancel.png > ../../Build/cancel.c
cc -c cancel.c -o cancel.o
cd ../xputty/resources/ && xxd -i info.png > ../../Build/info.c
cc -c info.c -o info.o
cd ../xputty/resources/ && xxd -i exit.png > ../../Build/exit.c
cc -c exit.c -o exit.o
cd ../xputty/resources/ && xxd -i xputty_logo.png > ../../Build/xputty_logo.c
cc -c xputty_logo.c -o xputty_logo.o
cd ../xputty/resources/ && xxd -i file.png > ../../Build/file.c
cc -c file.c -o file.o
cd ../xputty/resources/ && xxd -i directory.png > ../../Build/directory.c
cc -c directory.c -o directory.o
cd ../xputty/resources/ && xxd -i warning.png > ../../Build/warning.c
cc -c warning.c -o warning.o
rm -f ../xputty/resources/xresources.h
for f in directory_open_png save_png choice_png directory_select_png approved_png midikeyboard_png colors_png error_png gear_png grid_png settings_png message_png image_directory_png question_png cancel_png info_png exit_png xputty_logo_png file_png directory_png warning_png; do \
echo 'EXTLD('${f}')' >> ../xputty/resources/xresources.h ; \
done
cc -MMD -Wall -c ../xputty/xfilepicker.c -o xfilepicker.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xwidget_private.c -o xwidget_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xadjustment.c -o xadjustment.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xasprintf.c -o xasprintf.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xputty.c -o xputty.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xcolor.c -o xcolor.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xpngloader.c -o xpngloader.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xchildlist.c -o xchildlist.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xadjustment_private.c -o xadjustment_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xchildlist_private.c -o xchildlist_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xwidget.c -o xwidget.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xplayhead.c -o xplayhead.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xwaveview_private.c -o xwaveview_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlistbox_private.c -o xlistbox_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlabel.c -o xlabel.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlistview.c -o xlistview.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xknob_private.c -o xknob_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xbutton_private.c -o xbutton_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xplayhead_private.c -o xplayhead_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtooltip_private.c -o xtooltip_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xcombobox.c -o xcombobox.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtooltip.c -o xtooltip.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmultilistview.c -o xmultilistview.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xframe_private.c -o xframe_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtabbox.c -o xtabbox.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlistview_private.c -o xlistview_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xvaluedisplay.c -o xvaluedisplay.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xframe.c -o xframe.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xslider.c -o xslider.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmenu.c -o xmenu.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmeter_private.c -o xmeter_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xcombobox_private.c -o xcombobox_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtuner.c -o xtuner.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmultilistview_private.c -o xmultilistview_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtabbox_private.c -o xtabbox_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xwaveview.c -o xwaveview.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xvaluedisplay_private.c -o xvaluedisplay_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlistbox.c -o xlistbox.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xslider_private.c -o xslider_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xknob.c -o xknob.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmenu_private.c -o xmenu_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlabel_private.c -o xlabel_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmeter.c -o xmeter.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xbutton.c -o xbutton.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtuner_private.c -o xtuner_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xfile-dialog.c -o xfile-dialog.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xdirectory-dialog.c -o xdirectory-dialog.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xsavefile-dialoge.c -o xsavefile-dialoge.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xmidi_keyboard.c -o xmidi_keyboard.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xmessage-dialog.c -o xmessage-dialog.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmime.c -o xdgmime.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimecache.c -o xdgmimecache.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimeparent.c -o xdgmimeparent.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimeint.c -o xdgmimeint.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimeicon.c -o xdgmimeicon.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimeglob.c -o xdgmimeglob.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimealias.c -o xdgmimealias.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimemagic.c -o xdgmimemagic.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -fPIC `pkg-config --cflags --libs cairo x11` -lm
ar rcs libxputty.a xfilepicker.o xwidget_private.o xadjustment.o xasprintf.o xputty.o xcolor.o xpngloader.o xchildlist.o xadjustment_private.o xchildlist_private.o xwidget.o xplayhead.o xwaveview_private.o xlistbox_private.o xlabel.o xlistview.o xknob_private.o xbutton_private.o xplayhead_private.o xtooltip_private.o xcombobox.o xtooltip.o xmultilistview.o xframe_private.o xtabbox.o xlistview_private.o xvaluedisplay.o xframe.o xslider.o xmenu.o xmeter_private.o xcombobox_private.o xtuner.o xmultilistview_private.o xtabbox_private.o xwaveview.o xvaluedisplay_private.o xlistbox.o xslider_private.o xknob.o xmenu_private.o xlabel_private.o xmeter.o xbutton.o xtuner_private.o xfile-dialog.o xdirectory-dialog.o xsavefile-dialoge.o xmidi_keyboard.o xmessage-dialog.o directory_open.o save.o choice.o directory_select.o approved.o midikeyboard.o colors.o error.o gear.o grid.o settings.o message.o image_directory.o question.o cancel.o info.o exit.o xputty_logo.o file.o directory.o warning.o xdgmime.o xdgmimecache.o xdgmimeparent.o xdgmimeint.o xdgmimeicon.o xdgmimeglob.o xdgmimealias.o xdgmimemagic.o
mkdir -p ../libxputty/include/
cp ../xputty/header/*.h ../libxputty/include/
cp ../xputty/header/widgets/*.h ../libxputty/include/
cp ../xputty/header/dialogs/*.h ../libxputty/include/
cp ../xputty/resources/xresources.h ../libxputty/include/
cp ../xputty/xdgmime/*.h ../libxputty/include/
cp -r ../xputty/lv2_plugin ../libxputty/
cp libxputty.a ../libxputty/
make[2]: Verzeichnis „/tmp/Fluida.lv2/libxputty/Build“ wird verlassen
make[1]: Verzeichnis „/tmp/Fluida.lv2/libxputty“ wird verlassen
make[1]: Verzeichnis „/tmp/Fluida.lv2/Fluida“ wird betreten
g++ -std=c++11 -D_FORTIFY_SOURCE=2 -I. -I./dsp -I./plugin -fPIC -DPIC -O2 -Wall -funroll-loops -fstack-protector -ffast-math -fomit-frame-pointer -fstrength-reduce `pkg-config --cflags --libs fluidsynth` -fdata-sections -Wl,--gc-sections -Wl,-z,relro,-z,now -Wl,--exclude-libs,ALL -msse3 -mfpmath=sse -mfxsr fluida.cpp XSynth.cpp -I. -lm -pthread -lpthread -shared -lm -Wl,-z,noexecstack -Wl,--no-undefined -fvisibility=hidden `pkg-config --cflags --libs fluidsynth` -o Fluida.so
XSynth.cpp: In member function ‘void xsynth::XSynth::set_reverb_on(int)’:
XSynth.cpp:237:9: error: ‘fluid_synth_reverb_on’ was not declared in this scope; did you mean ‘fluid_synth_set_reverb_on’?
237 | fluid_synth_reverb_on(synth, -1, on);
| ^~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_reverb_on
XSynth.cpp: In member function ‘void xsynth::XSynth::set_reverb_levels()’:
XSynth.cpp:249:9: error: ‘fluid_synth_set_reverb_group_damp’ was not declared in this scope; did you mean ‘fluid_synth_set_reverb_damp’?
249 | fluid_synth_set_reverb_group_damp(synth, -1, reverb_damp);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_reverb_damp
XSynth.cpp:250:9: error: ‘fluid_synth_set_reverb_group_level’ was not declared in this scope; did you mean ‘fluid_synth_set_reverb_level’?
250 | fluid_synth_set_reverb_group_level(synth, -1, reverb_level);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_reverb_level
XSynth.cpp:251:9: error: ‘fluid_synth_set_reverb_group_roomsize’ was not declared in this scope; did you mean ‘fluid_synth_set_reverb_roomsize’?
251 | fluid_synth_set_reverb_group_roomsize(synth, -1, reverb_roomsize);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_reverb_roomsize
XSynth.cpp:252:9: error: ‘fluid_synth_set_reverb_group_width’ was not declared in this scope; did you mean ‘fluid_synth_set_reverb_width’?
252 | fluid_synth_set_reverb_group_width(synth, -1, reverb_width);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_reverb_width
XSynth.cpp: In member function ‘void xsynth::XSynth::set_chorus_on(int)’:
XSynth.cpp:262:9: error: ‘fluid_synth_chorus_on’ was not declared in this scope; did you mean ‘fluid_synth_set_chorus_on’?
262 | fluid_synth_chorus_on(synth, -1, on);
| ^~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_chorus_on
XSynth.cpp: In member function ‘void xsynth::XSynth::set_chorus_levels()’:
XSynth.cpp:274:9: error: ‘fluid_synth_set_chorus_group_depth’ was not declared in this scope; did you mean ‘fluid_synth_set_chorus_depth’?
274 | fluid_synth_set_chorus_group_depth(synth, -1, chorus_depth);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_chorus_depth
XSynth.cpp:275:9: error: ‘fluid_synth_set_chorus_group_level’ was not declared in this scope; did you mean ‘fluid_synth_set_chorus_level’?
275 | fluid_synth_set_chorus_group_level(synth, -1, chorus_level);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_chorus_level
XSynth.cpp:276:9: error: ‘fluid_synth_set_chorus_group_nr’ was not declared in this scope; did you mean ‘fluid_synth_set_chorus_on’?
276 | fluid_synth_set_chorus_group_nr(synth, -1, chorus_voices);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_chorus_on
XSynth.cpp:277:9: error: ‘fluid_synth_set_chorus_group_speed’ was not declared in this scope; did you mean ‘fluid_synth_set_chorus_speed’?
277 | fluid_synth_set_chorus_group_speed(synth, -1, chorus_speed);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_chorus_speed
XSynth.cpp:278:9: error: ‘fluid_synth_set_chorus_group_type’ was not declared in this scope; did you mean ‘fluid_synth_set_chorus_type’?
278 | fluid_synth_set_chorus_group_type(synth, -1, chorus_type);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| fluid_synth_set_chorus_type
make[1]: *** [Makefile:106: Fluida] Fehler 1
make[1]: Verzeichnis „/tmp/Fluida.lv2/Fluida“ wird verlassen
make: *** [Makefile:27: Fluida] Fehler 2
Current version will not run as a Reaper plugin. Immediately crashes with no log messages.
System: Fedora Jam 35
Fluida.lv2-0.7 built Jan 30, 2022
from dmesg:
reaper[23868]: segfault at 10 ip 00007fb310b9ea85 sp 00007ffeb18962c0 error 6 in Fluida_ui.so[7fb310b99000+37000]
[18383.602885] Code: 00 00 00 00 e8 fc a5 ff ff 48 89 c7 e8 f4 ac ff ff 48 8b bd f0 00 00 00 48 89 83 70 01 00 00 48 8b 9b f8 00 00 00 48 8b 73 18 <48> 89 46 10 48 83 c4 38 5b 5d 41 5c 41 5d 41 5e 41 5f e9 b0 63 00
[18749.538559] reaper[24706]: segfault at 10 ip 00007fd81e845a85 sp 00007ffed9cea090 error 6 in Fluida_ui.so[7fd81e840000+37000]
[18749.538565] Code: 00 00 00 00 e8 fc a5 ff ff 48 89 c7 e8 f4 ac ff ff 48 8b bd f0 00 00 00 48 89 83 70 01 00 00 48 8b 9b f8 00 00 00 48 8b 73 18 <48> 89 46 10 48 83 c4 38 5b 5d 41 5c 41 5d 41 5e 41 5f e9 b0 63 00
[18864.515449] reaper[24954]: segfault at 10 ip 00007f7f6cf43a85 sp 00007ffc4501f2d0 error 6 in Fluida_ui.so[7f7f6cf3e000+37000]
[18864.515458] Code: 00 00 00 00 e8 fc a5 ff ff 48 89 c7 e8 f4 ac ff ff 48 8b bd f0 00 00 00 48 89 83 70 01 00 00 48 8b 9b f8 00 00 00 48 8b 73 18 <48> 89 46 10 48 83 c4 38 5b 5d 41 5c 41 5d 41 5e 41 5f e9 b0 63 00
Tested on Linux Mint 21.3 (Cinnamon desktop), Reaper 7.07, Fluida 0.9.2.
The UI is not scaled correctly. Specifically,
The above two issues make the plugin unusable with 4K monitors and painful to use even on 1080p. Check attached screenshots.
Tested on Linux Mint 21.3 (Cinnamon desktop), Reaper 7.07, Fluida 0.9.2.
If you have a multi-insturment SF2 loaded in Fluida in Reaper, the instrument index in the GUI seems to mostly (but not always) revert to the one in index 0, even though the correct instrument keeps playing.
In the below video I'm using the "General User GS" SF2 ( https://schristiancollins.com/generaluser.php ), the "HonkyTonk" instrument. Most of the time when closing the plugin window and reopening, it reverts to the instrument at index 0 which is "Stereo Grand". Later in the video I show the same thing happening when choosing the instrument " Marimba".
https://imgur.com/a/wABaFvM
Unlike the issue mentioned here, #18 , for me it does not show None as current path, it shows the correct path to the SF2 file.
OS: FreeBSD 12.2
Hi!
I'm trying to use Reaper 6.83 and Fluida on my Lubuntu 23.10 machine.
Fluida won't load any of the .sf2 instruments I've tried. When I select a file and click Load it takes me back to the main GUI without anything loaded. It still says None.
Thanks in advance!
Hello, first of all thank you for your plugins.
I'm on Debian 12 / KDE / X11. I build Ardour with and without the gtk2 replacement "ytk" (which integrates a stripped-down gtk2), so this parameter could be ruled out for the following issue, I guess.
A build I had compiled shortly after your last commit in January now crashes Ardour (Ardour backtrace showed it, x42 confirmed this). Possibly this already could have happend before I stumbled over it last week.
I'd have to create a new BT in Ardour, the old one is lost. Or is there a "simple" way to debug Fluida.lv2?
regards
Otherwise missing symbols are not detected, for example building here:
/home/falktx/.lv2/Fluida.lv2/Fluida.so: undefined symbol: fluid_audio_driver_register
My build of fluidsynth has the audio/midi drivers taken out, so they dont conflict ever with host stuff.
I have a /Shared
symlink to some common useful files inside an external disk, fluida file browser cannot enter this folder, I am guessing because it is a symlink.
That makes it a bit painful, because then I have to to manually go to /media/falktx/.../Personal/...etcetc
Using the 0.9.2 release, I seemed to have a microtuning issue that should’ve been fixed in Fluidsynth 2.2.2 a while ago. Which version of Fluidsynth is used?
I see it doesn’t seem to appear in the dependencies explicitly, so maybe an outdated version is installed on a machine where the builds are generated? I don’t know.
I used the Windows build.
The way to check the bug is there (if in other builds it’s not there) is loading a melodic sf2 instrument, and applying a tuning...
Contrary, when the tuning is applied as should be in Fluidsynth ≥ 2.2.2, a note’s target sample, and thus timbre, will depend only on its actual pitch and not on which MIDI note was received (samples get chosen by notes’ frequencies).
I’ll re-check if I heard what I heard if you don’t find anything suspicious (or the version of Fluidsynth used is recent enough).
After loading a sf2, clicking on the instrument name in the instrument dropdown (when not unfolded) advances the dropdown to the next instrument and the correct instrument is displayed. When I now click the dropdown arrow the wrong instrument is highlighted. When I now select an instrument from the dropdown, the highlight is correct again.
I think this might be due to different handlers for when clicking to advance to next instruments and selecting from the dropdown, though after an hour of reading code I have not found the specific eventhandlers for this in Fluida / libxputty.
This came across me when I shuffled through several soundfont and, after clicking through it for a bit, wanted to know what's in "the general vicinity of the current instrument" (as they often have a similar sound), but was then only shown the instrument from which I started my "journey".
Hi there - I installed the dependencies, but when I compile, I run across this error related to xwidgets.h, but I can't find any dev files to resolve. Thoughts about how to address? Thanks!
$ make
g++ -std=c++11 -D_FORTIFY_SOURCE=2 -I. -I./dsp -I./plugin -fPIC -DPIC -O2 -Wall -funroll-loops -fstack-protector -ffast-math -fomit-frame-pointer -fstrength-reduce pkg-config --cflags --libs fluidsynth
-fdata-sections -Wl,--gc-sections -Wl,-z,relro,-z,now -Wl,--exclude-libs,ALL -msse3 -mfpmath=sse -mfxsr fluida.cpp XSynth.cpp -I. -lm -pthread -lpthread -shared -lm -Wl,-z,noexecstack -Wl,--no-undefined -fvisibility=hidden pkg-config --cflags --libs fluidsynth
-o Fluida.so
cc -D_FORTIFY_SOURCE=2 -I. -I./dsp -I./plugin -fPIC -DPIC -O2 -Wall -funroll-loops -fstack-protector -ffast-math -fomit-frame-pointer -fstrength-reduce pkg-config --cflags --libs fluidsynth
-fdata-sections -Wl,--gc-sections -Wl,-z,relro,-z,now -Wl,--exclude-libs,ALL -msse3 -mfpmath=sse -mfxsr -Wl,-z,nodelete fluida_ui.c -I../libxputty/libxputty/include/ -Wl,-z,noexecstack -Wl,--no-undefined -fvisibility=hidden -L. ../libxputty/libxputty/libxputty.a -shared pkg-config --cflags --libs cairo x11
-lm -o Fluida_ui.so
In file included from lv2_plugin.cc:22,
from fluida_ui.c:46:
lv2_plugin.h:26:10: fatal error: xwidgets.h: No such file or directory
26 | #include "xwidgets.h"
| ^~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:107: Fluida] Error 1
Selecting files in browser does not open anything in reaper for linux. Inscription None remains near the folder button. Nothing is loaded.
Hi brummer.
Trying to package it for LZK-3, the 32 bits build fails with:
make -j4 "INSTALL=install --strip-program=true"
make[1]: Entering directory '/build/fluida.lv2-0.5'
Submodule up to date
make[2]: Entering directory '/build/fluida.lv2-0.5'
make[2]: warning: -j1 forced in submake: resetting jobserver mode.
make[3]: Entering directory '/build/fluida.lv2-0.5/libxputty/Build'
cd ../xputty/resources/ && ld -r -b binary directory_open.png -o ../../Build/directory_open.o
cd ../xputty/resources/ && ld -r -b binary midikeyboard.png -o ../../Build/midikeyboard.o
cd ../xputty/resources/ && ld -r -b binary error.png -o ../../Build/error.o
cd ../xputty/resources/ && ld -r -b binary choice.png -o ../../Build/choice.o
cd ../xputty/resources/ && ld -r -b binary message.png -o ../../Build/message.o
cd ../xputty/resources/ && ld -r -b binary question.png -o ../../Build/question.o
cd ../xputty/resources/ && ld -r -b binary xputty_logo.png -o ../../Build/xputty_logo.o
cd ../xputty/resources/ && ld -r -b binary info.png -o ../../Build/info.o
cd ../xputty/resources/ && ld -r -b binary directory.png -o ../../Build/directory.o
cd ../xputty/resources/ && ld -r -b binary warning.png -o ../../Build/warning.o
rm -f ../xputty/resources/xresources.h
for f in directory_open_png midikeyboard_png error_png choice_png message_png question_png xputty_logo_png info_png directory_png warning_png; do \
echo 'EXTLD('${f}')' >> ../xputty/resources/xresources.h ; \
done
cc -MMD -Wall -c ../xputty/xfilepicker.c -o xfilepicker.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xwidget_private.c -o xwidget_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xadjustment.c -o xadjustment.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xasprintf.c -o xasprintf.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xputty.c -o xputty.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xcolor.c -o xcolor.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xpngloader.c -o xpngloader.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xchildlist.c -o xchildlist.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xadjustment_private.c -o xadjustment_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xchildlist_private.c -o xchildlist_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/xwidget.c -o xwidget.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
In file included from ../xputty/header/xwidget.h:26,
from ../xputty/xwidget.c:22:
../xputty/xwidget.c: In function 'create_window':
../xputty/xwidget.c:268:17: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'unsigned int' [-Wformat=]
debug_print("size of Func_t = %lu\n", sizeof(w->func)/sizeof(void*));
^~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../xputty/header/xputty.h:80:47: note: in definition of macro 'debug_print'
((void)((DEBUG) ? fprintf(stderr, __VA_ARGS__) : 0))
^~~~~~~~~~~
../xputty/xwidget.c: In function 'create_widget':
../xputty/xwidget.c:384:17: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'unsigned int' [-Wformat=]
debug_print("size of Widget_t = %ld\n", sizeof(struct Widget_t));
^~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
../xputty/header/xputty.h:80:47: note: in definition of macro 'debug_print'
((void)((DEBUG) ? fprintf(stderr, __VA_ARGS__) : 0))
^~~~~~~~~~~
cc -MMD -Wall -c ../xputty/widgets/xplayhead.c -o xplayhead.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtooltip.c -o xtooltip.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlistbox_private.c -o xlistbox_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlabel.c -o xlabel.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlistview.c -o xlistview.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xknob_private.c -o xknob_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xbutton_private.c -o xbutton_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xplayhead_private.c -o xplayhead_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmeter.c -o xmeter.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlabel_private.c -o xlabel_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlistview_private.c -o xlistview_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xvaluedisplay.c -o xvaluedisplay.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xslider.c -o xslider.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmenu.c -o xmenu.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmeter_private.c -o xmeter_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xcombobox_private.c -o xcombobox_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtooltip_private.c -o xtooltip_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtuner.c -o xtuner.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xvaluedisplay_private.c -o xvaluedisplay_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xlistbox.c -o xlistbox.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xslider_private.c -o xslider_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xknob.c -o xknob.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xmenu_private.c -o xmenu_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xbutton.c -o xbutton.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xcombobox.c -o xcombobox.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/widgets/xtuner_private.c -o xtuner_private.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xfile-dialog.c -o xfile-dialog.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xdirectory-dialog.c -o xdirectory-dialog.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xsavefile-dialoge.c -o xsavefile-dialoge.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xmidi_keyboard.c -o xmidi_keyboard.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -c ../xputty/dialogs/xmessage-dialog.c -o xmessage-dialog.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmime.c -o xdgmime.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimecache.c -o xdgmimecache.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimeparent.c -o xdgmimeparent.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimeint.c -o xdgmimeint.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimeicon.c -o xdgmimeicon.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimeglob.c -o xdgmimeglob.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimealias.c -o xdgmimealias.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
cc -MMD -Wall -DHAVE_MMAP -c ../xputty/xdgmime/xdgmimemagic.c -o xdgmimemagic.o -I. -I../xputty/header/ -I../xputty/header/widgets/ -I../xputty/resources/ -I../xputty/header/dialogs/ -I../xputty/xdgmime/ -Wl,-z,relro -fPIC `pkg-config --cflags --libs cairo x11` -lm
ar rcs libxputty.a xfilepicker.o xwidget_private.o xadjustment.o xasprintf.o xputty.o xcolor.o xpngloader.o xchildlist.o xadjustment_private.o xchildlist_private.o xwidget.o xplayhead.o xtooltip.o xlistbox_private.o xlabel.o xlistview.o xknob_private.o xbutton_private.o xplayhead_private.o xmeter.o xlabel_private.o xlistview_private.o xvaluedisplay.o xslider.o xmenu.o xmeter_private.o xcombobox_private.o xtooltip_private.o xtuner.o xvaluedisplay_private.o xlistbox.o xslider_private.o xknob.o xmenu_private.o xbutton.o xcombobox.o xtuner_private.o xfile-dialog.o xdirectory-dialog.o xsavefile-dialoge.o xmidi_keyboard.o xmessage-dialog.o directory_open.o midikeyboard.o error.o choice.o message.o question.o xputty_logo.o info.o directory.o warning.o xdgmime.o xdgmimecache.o xdgmimeparent.o xdgmimeint.o xdgmimeicon.o xdgmimeglob.o xdgmimealias.o xdgmimemagic.o
mkdir -p ../libxputty/include/
cp ../xputty/header/*.h ../libxputty/include/
cp ../xputty/header/widgets/*.h ../libxputty/include/
cp ../xputty/header/dialogs/*.h ../libxputty/include/
cp ../xputty/resources/xresources.h ../libxputty/include/
cp ../xputty/xdgmime/*.h ../libxputty/include/
cp -r ../xputty/lv2_plugin ../libxputty/
cp libxputty.a ../libxputty/
make[3]: Leaving directory '/build/fluida.lv2-0.5/libxputty/Build'
make[2]: Leaving directory '/build/fluida.lv2-0.5/libxputty'
make[2]: Entering directory '/build/fluida.lv2-0.5'
make[2]: warning: -j1 forced in submake: resetting jobserver mode.
g++ -g -O2 -fdebug-prefix-map=/build/fluida.lv2-0.5=. -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -I. -I./dsp -I./plugin -fPIC -DPIC -O2 -Wall -funroll-loops -fstack-protector -ffast-math -fomit-frame-pointer -fstrength-reduce `pkg-config --cflags --libs fluidsynth` -fdata-sections -Wl,--gc-sections -Wl,-z,relro,-z,now -Wl,--exclude-libs,ALL -msse3 -mfpmath=sse fluida.cpp XSynth.cpp -Wl,-z,relro -I. -shared -lm -Wl,-z,noexecstack -fvisibility=hidden `pkg-config --cflags --libs fluidsynth` -o Fluida.so
fluida.cpp: In constructor 'fluida::DenormalProtection::DenormalProtection()':
fluida.cpp:97:9: error: '__builtin_ia32_fxsave' was not declared in this scope
__builtin_ia32_fxsave(&fxsave);
^~~~~~~~~~~~~~~~~~~~~
fluida.cpp:97:9: note: suggested alternative: '__builtin_ia32_xsave'
__builtin_ia32_fxsave(&fxsave);
^~~~~~~~~~~~~~~~~~~~~
__builtin_ia32_xsave
make[2]: *** [Makefile:100: Fluida] Error 1
make[2]: Leaving directory '/build/fluida.lv2-0.5/Fluida'
make[1]: *** [Makefile:26: Fluida] Error 2
make[1]: Leaving directory '/build/fluida.lv2-0.5'
Note that this is done in a pbuilder 32 bits chroot. The pbuilder 64 bits chroot build fine and the resulting LV2 is working great. I didn't have time yet to start a 32 bits version of the OS and try to make a simple CLI make
(ie: no pbuilder chroot). I'll probably try on the next days if I found some time.
I'd like to see the fluida file selector get a few tweaks:
There doesn't currently seem to be a way to quickly jump to and browse the parent directory, either being able to click on a double dot icon or an up icon next to the path dialog.
If the places column is going to remain as-is, please add /usr/share/sounds/sf2 as one of the default paths as this is where Debian and Ubuntu store their soundfonts.
I'd rather see places replaced by a list of bookmarked paths. Users would be able to drag n' drop dirs into that column for quick access to specific paths.
It would be nice if the path dialog was editable so paths could be entered manually instead of having to use the mouse to browse to them.
Let me start with this disclaimer: I'm not sure if this is a problem with my setup, with Fluida or with reaper. I can observe something similar when I'm using carla though.
I'm trying to use Fluida with reaper 6.71 + FluidR3_GM.sf2
. I started out using a self compiled version of current master, but then went on to the prebuild version linked in the midi for a common baseline (most notably I compiled against libfluidsynth3, prebuild uses 2). I can add the plugin as a FX to a track, play the piano, hear sound, change instruments.
The moment I hide the gui (closing and reopening the FX window or changing to another plugin, then back to Fluida) Fluida loses its GUI state. It shows None as current path and current selected input, all knobs/buttons are back at starting position. I can still hear the preselected instrument. If I had the reverb turned on previously, I could now turn it on and then off again to get it off, but the old state is somewhere stuck in there. This is reproducible with my selfcompiled and the stock version of Fluida on my system.
Secondly, if I now remove the plugin and readd it to my FX chain, then reaper segfaults. This is the stacktrace I got from coredumpctl:
Stack trace of thread 24837:
#0 0x00007fafd77744e7 __strcmp_avx2 (libc.so.6 + 0x1554e7)
#1 0x00007fafd6798c09 g_str_equal (libglib-2.0.so.0 + 0x42c09)
#2 0x00007fafd679770a g_hash_table_lookup (libglib-2.0.so.0 + 0x4170a)
#3 0x00007fafd67babf4 g_intern_static_string (libglib-2.0.so.0 + 0x64bf4)
#4 0x00007fafc1567f8d n/a (libinstpatch-1.0.so.2 + 0x29f8d)
#5 0x00007fafc15682e5 ipatch_base_get_type (libinstpatch-1.0.so.2 + 0x2a2e5)
#6 0x00007fafc15c30a2 ipatch_init (libinstpatch-1.0.so.2 + 0x850a2)
#7 0x00007fafd53608b0 new_fluid_synth (libfluidsynth.so.2 + 0x378b0)
#8 0x00007fafd59b4e60 n/a (/home/seba/.lv2/Fluida.lv2/Fluida.so + 0xbe60)
ELF object binary architecture: AMD x86-64
Any idea what could be causing this?
When I run Fluida.lv2 in BespokeSynth, Carla or reaper changing instruments works fine until I connect my MIDI keyboard (a "Novation Launchkey 37 MK3"), then I cannot change the instrument anymore. The instrument changes in the UI, but the instrument I hear does not change. It only changes once I have disconnected the midikeyboard (in my plugin host only, the keyboard remains plugged in via USB the whole time) and THEN choose a new instrument.
I could not reproduce this with a virtual midi keyboard or a self-made midi footswitch (they all don't provide a midi clock).
While trying to figure this out I took a look at the midi loop and one difference I can see is that my keyboard sends out a MIDI clock and that quite frequently, at least there are a lot of messages with type 0xF8 aka LV2_MIDI_MSG_CLOCK
in Fluida_::run_dsp_()
that otherwise seem to have a zero payload.
Turning off the MIDI clock in the settings of my keyboard seems to do the trick and instrument changing works again. I wonder though, is this is something that is a problem in Fluida that could be fixed there?
I've tested that it plays fine a SF2 and a SF3, and I've tried to load a SFZ (don't ask me why...).
Bang!
https://github.com/lv2/lv2/wiki#midnam
Ardour could then display note names from the plugin in it's piano roll.
I've loaded up Fluida.lv2 in ardour and reaper, chose an instrument (that is not the first instrument in the sf2). When saving the project, closing the DAW, reopening the DAW and then reloading the project the instrument choice of all Fluida.lv2 instances is set back to the first instrument.
In reaper this also happens to all Fluida.lv2 instances when the project is rendered to a soundfile, meaning only the first instrument can be used in the output format (but as this is a closed source app...).
Any idea what could be causing this?
When I check the LV2 bundle of version 0.9 with lv2lint
, I get the following errors:
$ lv2lint -Mpack -I bin/Fluida.lv2 https://github.com/brummer10/Fluida.lv2
lv2lint 0.16.2
Copyright (c) 2016-2021 Hanspeter Portner ([email protected])
Released under Artistic License 2.0 by Open Music Kontrollers
<https://github.com/brummer10/Fluida.lv2>
[WARN] Plugin Author Email
foaf:mbox not found
seeAlso: <http://lv2plug.in/ns/lv2core#project>
[WARN] Plugin Author Homepage
foaf:homepage not found
seeAlso: <http://lv2plug.in/ns/lv2core#project>
<https://github.com/brummer10/Fluida.lv2#gain>
[FAIL] Parameter Range
lv2:minimum not a float
seeAlso: <http://lv2plug.in/ns/lv2core#minimum>
<https://github.com/brummer10/Fluida.lv2#gain>
[FAIL] Parameter Range
lv2:minimum not a float
seeAlso: <http://lv2plug.in/ns/lv2core#minimum>
<https://github.com/brummer10/Fluida_gui>
[FAIL] UI Symbols
binary exports superfluous globally visible symbols:
* widget_get_scaled_png
* _draw_combobox_button
* _xdg_mime_cache_get_mime_type_for_file
* have_key_in_matrix
* os_grab_pointer
* set_pattern
* _button_released
* os_is_directory
* _xdg_mime_magic_get_buffer_extents
* add_check_button
* ... there is more, but the rest is being truncated
seeAlso: <http://lv2plug.in/ns/lv2core#binary>
For the superfluous exported symbols, falkTX has this solution:
https://github.com/DISTRHO/DPF/blob/main/Makefile.plugins.mk#L318
The other error (not sure why it occurs twice) needs to be fixed in Fluida/Fluida.ttl
, line 146.
If the host has the plugin GUI has "transient" to itself (that is, on top of the base host window), the file browser window can appear behind the host and plugin GUI, making it hard to find.
Please add the transient window id to the parent of the plugin UI (that is, the Window it embeds into), so Window managers can properly place/stack the window.
cc -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer -isystem /usr/local/include -D_FORTIFY_SOURCE=2 -I. -I./dsp -I./plugin -fPIC -DPIC -O2 -Wall -funroll-loops -fstack-protector -ffast-math -fomit-frame-pointer -fstrength-reduce `pkg-config --cflags --libs fluidsynth` -fdata-sections -Wl,--gc-sections -Wl,-z,relro,-z,now -Wl,--exclude-libs,ALL -Wl,-z,nodelete fluida_ui.c -I../libxputty/libxputty/include/ -Wl,-z,noexecstack -Wl,--no-undefined -fvisibility=hidden -L. ../libxputty/libxputty/libxputty.a -shared `pkg-config --cflags --libs cairo x11` -lm -o Fluida_ui.so
cc: error: no such file or directory: '../libxputty/libxputty/libxputty.a'
cc: warning: optimization flag '-fstrength-reduce' is not supported [-Wignored-optimization-argument]
gmake[2]: *** [Makefile:107: Fluida] Error 1
libxputty.a isn't built.
FreeBSD 13.1 STABLE
Hi
I wondered: is there any reason why yo do not provide complied .so
files in releases ?
I forked the project to make an example of release with it: https://github.com/brunetton/Fluida.lv2/releases/tag/v0.7 (Fluida-0.7.lv2.zip)
With some sf2 files (maybe broken?) the call to :
XSynth.cpp
Line 242 : int XSynth::get_instrument_for_channel(int channel)
will return -1 on:
Line 246: if (!preset) return -1;
On the host non-mixer-xt (I am the developer), the lv2 file is saved in .ttl format with
lilv_state_save(). The -1 value gets saved in the channel_list - Example:
<https://github.com/brummer10/Fluida.lv2#channel_list> [
a atom:Vector ;
atom:childType atom:Int ;
rdf:value (
"0"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
"-1"^^xsd:int
)
]
When attempting to restore the plugin state, the -1 channel value causes Fluida.lv2 to crash with a:
terminate called after throwing an instance of 'std::length_error'
what(): basic_string::_M_create
or some other similar related error.
I patched with:
-- if (!preset) return -1;
++ if (!preset) return 0;
Which changed the -1 channel_list saving to 0 and stopped the plugin from crashing on re-load, with no
side effects that I could determine.
I also noticed that the calls to XSynth::get_instrument_for_channel() do not handle the -1 error
in any case. I'm not sure what the best solution is for the error conditions, but returning 0
seemed to work if no preset was found.
Anyhow you may know of a better solution...
Thanks.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.