Fantasia UI suggestions

You name it!
Post Reply
Posts: 6
Joined: Mon May 25, 2020 7:44 pm

Fantasia UI suggestions

Post by peastman » Wed May 27, 2020 6:35 pm

I recently installed LinuxSampler on MacOS. I found the UI for Fantasia very confusing and hard to figure out. Since we each only get to be a new user once, I'd like to describe my own experience with it. Please take this in the spirit it's meant: not as criticism, but as suggestions for how the UI could be improved to be more welcoming to new users!

I wanted to do something very simple: just load an instrument from a SFZ file and start playing. Since that's exactly what the program is for, you'd think it would be very easy to figure out how to do it. Here is a rough transcript of what actually happened!

First I need to load my file. I see a standard "open" icon in the toolbar, so I try clicking that. I navigate to my SFZ file but it isn't selectable. Maybe that's not the right way. I search through the menu bar, but there are no commands about loading instruments.

Over on the left side is a section labeled "Orchestras". That sounds like the place I would manage instruments. I spend a long time messing with it, trying to figure out how to load an instrument, but ultimately this all proves to be a red herring. That isn't how you load an instrument.

Eventually I stumble across the right answer. In the middle of the window is a totally blank bar. If you look carefully, you notice a small power icon at one end of it. You need to click that icon, and only then does the "Load Instrument" button appear.

Ok, I figured it out! I click the button, select my file, and...
Assigning instrument: No audio output device connected to sampler channel
I wonder what that means? It's the sort of error message that probably makes sense if you already know what it means, but isn't very helpful if you don't. Lots more stumbling around follows. Eventually I come across the answer. Over on the right side is a section labeled "Audio Devices". It contains another of those blank bars with a power icon. I click that then click the "Create" button. Now I have an audio device.

I click "Load Instrument" again, select my file again, but still get the same error message. Lots more stumbling around follows. Eventually I come across the answer. I need to delete the channel I added before (by clicking the power icon???), then add it back again. No idea why. I click "Load Instrument" yet again, select my file yet again, and...
Failed to load instrument!
That's all. No indication why it failed, no hint about how to fix it. Lots more frustration and random clicking. Eventually I figure it out. I need to click on the label that says "GIG engine" and change it to "SFZ engine". (Why do I need to tell it that? If I load a file whose name ends in .sfz, can't it figure out to use the SFZ engine itself?) I load my file yet again, and success! I can play it using the on-screen keyboard.

But nothing happens when I play on my MIDI keyboard. That still isn't connected. But I'm starting to get a sense for how this program works. I've already noticed the "MIDI Devices" section, so I click the power icon and click "Create". Now I have a MIDI device.

But still nothing happens when I play. Grasping what hair I haven't torn out yet, I start clicking at random. Next to the device I added is a triangle button to expand it. In the panel that appears is a label that says, "CORE_MIDI_BIN...". What does that mean? No idea. Next to it is a blank space that doesn't look like a UI widget, but by random clicking I discover that if I click there, a checkbox appears where I can select my MIDI keyboard. Now its name appears in the empty space. Have I finally figure everything out?

No! Still nothing happens when I play! I don't remember exactly how long I was stuck here, but eventually something in the back of my mind makes a connection to an earlier step. I had to delete and reload the instrument after adding an audio device. Maybe I have to do the same after adding a MIDI device? So I delete and reload the instrument (and don't forget to select the right engine first), and finally I can play!

This was an absurdly long and painful process. But with just a few minor changes to the UI it could have been quick and painless. So here are my suggestions about what to change.

Put a prominent "Load Instrument" button in the window! If necessary it should add a channel automatically.

When the window first appears, it should already be configured in a reasonable way. It should automatically add an audio device using the standard driver for the platform (CoreAudio on Mac) and a MIDI device using the standard driver for the platform (CoreMIDI on Mac) with all available MIDI input devices enabled.

When loading an instrument, it should automatically select the correct engine based on the file you load.

It should be more tolerant of minor variations in workflow. It requires you to add the audio and MIDI devices before adding the channel, and silently fails if you don't. It should work equally well whichever order you add them in.

Error messages should be more informative and tell the user how to fix the problem.

Using a power icon to add and remove devices or channels is a nonstandard UI, and therefore confusing to new users. A more standard UI would be to have + and - buttons for add and remove.

Provide a clearer UI for selecting which input devices are enabled.

Thanks for sticking with me through this long post! I hope you'll consider making some of these changes. They would have eliminated all the pain points I hit and I could have been up and running in less than a minute.

User avatar
Posts: 335
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: Fantasia UI suggestions

Post by cuse » Fri Jun 05, 2020 3:17 pm

Unfortunately Fantasia is not maintained for many years. In other words: nobody has changed anything on Fantasia / JSampler for 8 years: ... /jsampler/

You might wanna give QSampler a try instead. It does not have a skin appearance as Fantasia, but you'll probably be more fine with it from usability point of view.

Post Reply