If you have a USB sound card, you can use less CPU using it instead of ev3dev ALSA sound card - you also get stereo sound, 16 kHz sound much better than EV3 speaker and you can even use an audio amplifier. Timidity worked (as above).Īlso fluidsynth is too demanding - even timidity with a big soundfont is. I do remember trying fluidsynth but I don't remember ever made it work. Very very sorrow but I cannot find my notes from that time. Nevertheless having MIDI support in ev3dev is still a great thing, thanks for the effort! So it seems that programatically using MIDI on the EV3 is really to much and my approach with MQTT is still the best, at least for now - mido also has a MIDI client/server feature, will try it one of these days. I uncommented all performance options in timidity.cfg and even started timidity manually so I can tell it to use mono but no luck.
![midipipe alternative midipipe alternative](https://qqse.cartuner.pl/templates/f16dc396e088c7c707eabe9d7479e7a2/img/91db979411ba6f604533591aaba9fc2f.jpg)
Sound is acceptable but latency is awful - each note plays almost 15 seconds after the instruction. I installed python-rtmidi and mido and managed to choose the instrument and play notes through timidity in a similar way to mingus through fluidsynth.
![midipipe alternative midipipe alternative](https://qvdp.pilkawka.pl/templates/f16dc396e088c7c707eabe9d7479e7a2/img/11767ba94d33ed050fd2e43f67baf09f.png)
MIDIPIPE ALTERNATIVE UPDATE
just a last update (and thanks for advertising my harp at the front page)įluydsynth seems to heavy for the EV3, I can start it from command line and load a small soundfont but there's to much clicking and when starting it from python with mingus I cannot pass parameters to reduce sampling rate, it doesn't work at all. Sorry to keep writing to a closed issued. But in ev3dev, when mingus initialize fluidsynth, I immediately get a clicking noise (even before playing a note) In Ubuntu I can play some nice notes, even several at same time. The soundfount that cames with fluidsynth is to big to load on memory but I found two small soundfonts that load fine. Then I went for fluidsynth and mingus, a python library that works with fluidsynth and ALSA.
MIDIPIPE ALTERNATIVE SOFTWARE
I installed timidity++ (a software MIDI synth) but id doesn't work, it seems to need a module snd_seq that doesn't exists. I can easily change the instrument (me and my wife had the idea to use NFC tags to identify the "artist" or the "instrument"). It has polyphony, there are some python libraries and since it uses soundfonts And it doesn't allow multiple notes at the same time. Sounds much better but samples are to long so the "artist" have to wait for the end of each note before moving the hand to another "string".
![midipipe alternative midipipe alternative](https://images.sftcdn.net/images/t_app-cover-l,f_auto/p/d5b835b0-9b67-11e6-be5e-00163ec9f5fa/3388702899/sonic-visualiser-screenshot.jpg)
So I tried ay with some harp samples I found on the net. I can play tones (with Sound.tone) but of course it doesn't sound like an harp. I can already read the 6 sensors in python. I already have 6 EV3 color sensors (and a MindSensors MUX, another one in the way for a 7th sensor and an ultrasonic sensor to read the distance of the hand). I can't play anything but my wife has some music theory background and plays piano, I gave her a MIDI keyboard some years ago and she used it to generate scores in an UbuntuStudio computer, it was her first contact with Linux and my first contact with the linux sound system.Įv3dev kernel: Linux ev3dev 4.4.17-14-ev3dev-ev3 I think I might be pushing the limits of the EV3 but I'm trying a laser harp.