mzero / amidiminder Goto Github PK
View Code? Open in Web Editor NEWALSA utility to keep your MIDI devices connected
License: BSD 2-Clause "Simplified" License
ALSA utility to keep your MIDI devices connected
License: BSD 2-Clause "Simplified" License
If you get the error:
amidiminder.cpp:2:28: fatal error: alsa/asoundlib.h: No such file or directory
Then you can fix this by installing libasound2-dev
:
sudo apt-get install libasound2-dev
Steps to repro:
sudo dpkg -i ...
to install the new version.Your /etc/amidiminder.rules file is now the default. :(
Hi there!
I've got amidiminder working on a Libre Le Potato single board computer, running their customize Raspbian, based on Debian 11.6. I had no problems building and installing it, it seems to be working, hooray!
I'm developing the MIDI tool I'm using mostly on my Ubuntu Studio 22.04 laptop, however, a regular amd64 machine running g++ 11.3.0. When I try to build amidiminder there it fails trying to compile the rule.cpp file. It doesn't like the usage of the Parse
class, raising errors like this:
rule.cpp: In function ‘ClientSpec {anonymous}::parseClientSpec(const string&)’:
rule.cpp:168:56: error: cannot bind non-const lvalue reference of type ‘std::ostream&’ {aka ‘std::basic_ostream<char>&’} to an rvalue of type ‘std::basic_ostream<char>’
168 | throw Parse(Error() << "malformed client '" << s << "'");
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
rule.cpp:159:27: note: initializing argument 1 of ‘{anonymous}::Parse::Parse(std::ostream&)’
159 | Parse(std::ostream& o) : std::string(errormsg(o)) { }
| ~~~~~~~~~~~~~~^
I don't know c++ at all, so I don't really know where to start with this. I tried removing the &
from Parse(std::ostream& o)
since the error talks about a mismatch between std::basic_ostream<char>&
and std::basic_ostream<char>
, but that also fails, with messages like this:
rule.cpp:168:62: error: ‘std::basic_ostream<_CharT, _Traits>::basic_ostream(std::basic_ostream<_CharT, _Traits>&&) [with _CharT = char; _Traits = std::char_traits<char>]’ is protected within this context
Is there an easy fix to get this to build on my laptop?
Thanks!
Awesome project! I have been looking for a good mapping solution for hours and I was about to write my own in python. But this is just what I had in mind. Luckily I found this.
However, the check command does not seem to work (logically)
$ amidiminder -C
no rules file specified, so no rules added
After making changes I need to run
$ systemctl restart amidiminder
It'd be great if this was explicitly mentioned as a requirement to apply changes in the readme / example config. It would be good to mention what the amidiminder
does when it's executed without any parameters.
sudo amidiminder -C
no rules file specified, so no rules added
I setted my simple rules at the /etc/amidiminder.rules , but I cant get it to read them
Running on raspberry pi with PatchBox OS. Works like a charm otherwise , thanks for this marvellous tool !
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.