Suggestion for tools to use programming GUI + MIDI?

Programming applications for making music on Linux.

Moderators: MattKingUSA, khz

Post Reply
tavasti
Established Member
Posts: 969
Joined: Tue Feb 16, 2016 6:56 am
Location: Kangasala, Finland
Contact:

Suggestion for tools to use programming GUI + MIDI?

Post by tavasti »

Hi!

I was considering if I should try programming Midi drum pattern browser plugin or actually, stand alone program. Now searching suitable tools for it. What would be needeed:

- GUI, should have also support for drag'n'drop source, so that midi could be dragged from app to DAW
- Midi, so that there is libs for opening midi files & manipulating them in memory (change tempo)
- Midi connection, so that program can send midi to daw.

I can program python, perl, C/C++, bash, and most likely many more languages would work ok for me.

Sure making proper plugin would be great, but I don't think I have time & energy for that, but quick hack should be doable.
Linux veteran & Novice musician

Hear my music at https://audiu.net/users/tawaste

rghvdberg
Established Member
Posts: 960
Joined: Mon May 12, 2014 7:11 am

Re: Suggestion for tools to use programming GUI + MIDI?

Post by rghvdberg »

Qt/Qml
or PyQT perhaps
I kinda started a simple sample file browser once with pyqt. Never got around to actually finish it.
https://github.com/rghvdberg/simple_sample_browser

tavasti
Established Member
Posts: 969
Joined: Tue Feb 16, 2016 6:56 am
Location: Kangasala, Finland
Contact:

Re: Suggestion for tools to use programming GUI + MIDI?

Post by tavasti »

On irc wxPython was suggested.
Linux veteran & Novice musician

Hear my music at https://audiu.net/users/tawaste

User avatar
SpotlightKid
Established Member
Posts: 121
Joined: Sun Jul 02, 2017 1:24 pm

Re: Suggestion for tools to use programming GUI + MIDI?

Post by SpotlightKid »

You might one check Patroneo for some inspiration regarding the GUI, PyQT usage and sequencing. The program does not import or export MIDI, though, AFAIK.

tavasti
Established Member
Posts: 969
Joined: Tue Feb 16, 2016 6:56 am
Location: Kangasala, Finland
Contact:

Re: Suggestion for tools to use programming GUI + MIDI?

Post by tavasti »

Comparing PyQT and wxPython:
https://opensource.com/article/17/4/pyq ... s-wxpython

Simple text editor is shorter in wxPython, and both implement drag & drop, so wxPython will be my choise. And in addition, I have programmed wxWidget code with C++ (loooong time ago).

Have to look midi libs, will it be https://github.com/vishnubob/python-midi or https://github.com/olemb/mido/

And then there is sending midi over jack midi.
Linux veteran & Novice musician

Hear my music at https://audiu.net/users/tawaste

User avatar
Linuxmusician01
Established Member
Posts: 700
Joined: Mon Feb 23, 2015 2:38 pm
Location: Holland

Re: Suggestion for tools to use programming GUI + MIDI?

Post by Linuxmusician01 »

From a Linux user that cannot program if his life depended on it: please use C! The only applications that I could compile on Linux and that run stable are C applications. I think that programming in Python Ruby and what have you not is more pleasant for most programmers, but from a users perspective I hope that those languages die out like Latin and Sanskrit.

Sorry or the rant, but this has been bugging me for ages. I don't understand why somebody would want to program an application that's buggy and doesn't work anymore after a few years.

jonetsu
Established Member
Posts: 1677
Joined: Sat Jun 11, 2016 12:05 am

Re: Suggestion for tools to use programming GUI + MIDI?

Post by jonetsu »

Linuxmusician01 wrote:From a Linux user that cannot program if his life depended on it: please use C! The only applications that I could compile on Linux and that run stable are C applications. I think that programming in Python Ruby and what have you not is more pleasant for most programmers, but from a users perspective I hope that those languages die out like Latin and Sanskrit.

Sorry or the rant, but this has been bugging me for ages. I don't understand why somebody would want to program an application that's buggy and doesn't work anymore after a few years.
People are still using C and not C++ ?

In any case, a C/C++ app can be made obsolete like any other.

Basslint
Established Member
Posts: 253
Joined: Sun Jan 27, 2019 2:25 pm
Location: Italy

Re: Suggestion for tools to use programming GUI + MIDI?

Post by Basslint »

Linuxmusician01 wrote:From a Linux user that cannot program if his life depended on it: please use C! The only applications that I could compile on Linux and that run stable are C applications. I think that programming in Python Ruby and what have you not is more pleasant for most programmers, but from a users perspective I hope that those languages die out like Latin and Sanskrit.

Sorry or the rant, but this has been bugging me for ages. I don't understand why somebody would want to program an application that's buggy and doesn't work anymore after a few years.
Maybe you had a bad experience with some badly written programs :(

Python and Ruby in their current standard implementations are unsuitable for audio programming for a number of reasons (including the way they manage memory and their general performance) but using C does not make programs automatically better: if anything, if the coder is not skilled in low level programming (i.e. memory management, again :lol:) it's very likely that the program will have serious issues, such as segmentation faults.
The community of believers was of one heart and mind, and no one claimed that any of his possessions was his own, but they had everything in common. [Acts 4:32]

Wanna make music on openSUSE? Check out Geekos DAW!

tramp
Established Member
Posts: 1552
Joined: Mon Jul 01, 2013 8:13 am

Re: Suggestion for tools to use programming GUI + MIDI?

Post by tramp »

Development in python is nice for quick prototyping, or to write some development tools. But, for release a application it's a bad choice in my opinion as well. The ongoing development in python modules gives a shit on backward compatibility. Python development is really, really fast, so that only virtual envs could ensure that your prototype or the tool you've written still work next month the same way as last month.
And it could bite you really hard, when you realize that numpy comes now to a completely different result on a plain, simple math operationon with arrays then in the last release. :o
This may render your work useless really fast.
On the road again.

Post Reply