Simulating a mod on my Linux PC


#1

Hello there!

I had the pleasure to do a dry/wet guitar rig with advanced routing using a MOD Duo someone brought to our jam session. I already subscribed to the waiting list and damn it, that experience made it even harder to wait for my own. :wink:

In the meantime, I’d like to try building some pedal boards on my linux PC, that I could use later on. I installed modhost, mod-lv2-data and mod-ui. I also tried adding the x86 versions of certain plugins to the LV2 path in the hope, I can use them. Stuff seems to work, however, there doesn’t seem to be any signal passing from input to output.

Is there some tutorial on how to set up such an simulation environment?

Cheers
Bollie


#2

I haven’t tested this myself so I am pretty much just speculating. But do you have Jack installed and running? If I am not mistaken the Mod uses Jack for audio routing (like most pro audio software on Linux)


#3

Yes, I have jack running.


#4

Taking advantage of the topic, there is a docker, image or something similar to the development environment? I’m thinking of refactor and decouple the graphics (html) of the logic in the mod-ui


#5

mod-sdk already has the graphics from mod-ui and runs standalone.
of course it doesn’t really load any plugins, only metadata (so no audio).

assuming you have mod-host and jack already setup and running, you can use mod-app to get a mod-like experience.
see https://github.com/moddevices/mod-app
(linux only for now)

pretty much all lv2 plugins don’t have official/upstream MOD support though, so you’ll end up with mostly gui-less plugins.


#6

@faltTX, an opinion.

I thought about doing something like separate GUI so you can create an application for Android (as an example).

The reason:
The Zynthian staff are adapting the mod-ui to use in their project. I have a project for college for audio plugins too - would need an interface.

In my opinion, it would be interesting that the interface (html, js + css) stay separate business rules - that is, the business would be a service that the UI consume and if someone wanted to take advantage of this magnificent work (mod-ui) in another place only implement the service layer.

Another justification, for example, would you create another product (mod-one) and - for some reason business logic is different, work to use the same interface would be reduced, I think.

You could also think that someone could create other programs to control the mod-duo using WebSocket API + REST

You have discussed something in the project?


#7

mod-host can be controlled via sockets, and regarding the html interfaces please see this project:


It still depends on mod-ui, but we have plans to make it a standalone project.

mod-sdk can also load the html interfaces, so they’re not really tied to mod-ui.

EDIT: If what you want is an alternative remote interface (instead of the browser), go for it I guess.
These are the REST calls you can make: https://github.com/moddevices/mod-ui/blob/master/mod/webserver.py#L1229
Some calls are done in the websocket, because they don’t need a callback response and websockets are faster than rest/ajax calls, those are in https://github.com/moddevices/mod-ui/blob/master/mod/webserver.py#L591

do note that some rest cals are not used anymore, that code needs a little cleanup…
also the calls vary between OS releases


#8

Hi @SrMouraSilva

If you are using our software for any work outside the MOD scope, I’d like to kindly ask to properly inform where did the GUI came from and if possible, do some promotion on the MOD system.

The Zynthian guys did an announcement all wrong, disclosing one of our developers - @falktx - as the creator e totally omitting the MOD system itself.

This is not the first time I see something like this happening. It seems that because we are a commnercial endeavor, the “opens source code of conduct” simply does not apply.

It is very frustrating and offending to spend years putting money on a project and release it entirely open source and then having some people using your code without even bothering about promoting, or to the very least simply disclosing its origins.

This kind of incident makes us reconsider whether we should continue releasing our source code or not.

So I kindly ask you to at least be careful about that.

Kind regards

Gianfranco


#9

@gianfranco Open source is what makes your product so interesting and unique and that’s what is needed to kick the industry’s ass. I have a dry/wet guitar setup and I haven’t found any multi fx system, that offers me the flexible routing options I want, except for the MOD (I was lucky to try one and looking forward to get my own). The prospect of even porting my favorite LV2 plugins or even create completely new FX is what makes it really awesome.

So, there is the opportunity to create a lively and creative community around the MOD, of users and contributors. I totally agree with you, that there has to be a certain kind of fairness and naming the source of the code that is being used is the least one should do.

Cheers
Bollie


#10

The discourse limits me, then i will reply in parts :disappointed_relieved:

“Sorry, new users can only put 2 links in a post.”


Thanks @falkTX for informations. I will analize! :smile:

@gianfranco

If you are using our software for any work outside the MOD scope, I’d like to kindly ask to properly inform where did the GUI came from and if possible, do some promotion on the MOD system.

My project - that is academic - is something like the Mod-Duo, open source multi effects for the Raspberry Pi 3. It is at an early stage with serious problems of latency. I would like to congratulate the work you have in Linux: I thought the RPI 3 had similar configurations with the Mod duo (CPU - RAM, not audio interface), but the initial results I have had are something to be desired.

I’m not usign the mod-ui now. I’m usign the mod-host and - in a near future - lilvlib fork (https://github.com/PedalPi/lilvlib). For tests, I’m usign too the your plugins data. For my Apk, I’m usign your 2 images too (knob and footswitch - view the presentation [slide 14] in next reply)

I’m currently doing work for the degree course (Bacharelado em Ciência da Computação) in IFCE - Campus Maracanaú.


Any plan for smartphones?
#11

I recently presented my project - which is ongoing - the scientific methodology discipline. The presentation is in Brazilian Portuguese. I hope I have made it clear that I am using the mod-host, however, any criticism or the need to reinforce, if possible, tell me!

Do I have an article on the subject, but - as I intend to publish - could only send (what is written so far) specifically for you.

I thought of using the mod-ui (or similar) to be an alternative to my Apk https://github.com/PedalPi/Apk. The presentation (slide 16 - Arquitetura), I think is possible understand the care that I’m trying to have to separate the design of the modules to facilitate possible changes.

So from what I understand - which was apparently wrong - would have to make some modifications to the mod-ui. I thought then to try to help and send pull requests if I could do the mod-ui run on my machine (I’m having some problems with the jack on the notebook), so the original question.

It is very frustrating and offending to spend years putting money on a project and release it entirely open source and then having some people using your code without even bothering about promoting, or to the very least simply disclosing its origins.

This kind of incident makes us reconsider whether we should continue releasing our source code or not.

So I kindly ask you to at least be careful about that.

I imagine. I hope not to do something that displease.

Perhaps it would be interesting to you to post in the blog metrics to use the project or image for publicity purposes. Or something, maybe minimize a bit.

Boa sorte no seu trabalho!
É algo magnífico!

Paulo


#12

Yay. The MOD makes it into academic presentations and with proper references as well! That’s very cool.


#13

IIRC you need to set some environment variables. probably


but best ask on IRC.


#14

yes, either MOD_DEV_ENVIRONMENT or MOD_DEV_HOST needs to be set in the environment to “1”.
that will enable the communication with mod-host, which must be running already.


#15

Hi, don’t want to bother you, but maybe you can help me.
I’m trying to test mod. I’ve installed mod-host and mod-app.
Jack is OK, webserver is running… But I get a 500 error.
/mod-app/source/modules/mod-ui/html/resources/templates/pedal-default.html
So I put mod-ui source in that folder…
Then it’s missing /mod-app/source/modules/mod-ui/mod/…/utils/libmod_utils.so
Is it a module I have to compile?
Thank you


#16

yes, you need to build mod-ui first.
the readme on the project mentions how.


#17

Hello guys,

I installed the mod-host and mod-ui (from git) in my notebook for testing, but I can not get any sound.

When I make some connection to a new effect Jackd returns me a message like this:

Unknown destination port in attempted (dis)connection src_name [system:capture_1] dst_name [mod-monitor:in_1]
Unknown source port in attempted (dis)connection src_name [mod-monitor:in_1] dst_name [system:capture_1]

I tried to change the settings in the settings.py file, as below:

DEV_ENVIRONMENT = bool(int(os.environ.get(‘MOD_DEV_ENVIRONMENT’, True)))

But I still have no sound.

Could you tell me what changes I should make?

Thank you


#18

Have you checked that jackd is running?

Try “jack_load mod-monitor” before starting mod-ui.

Regards, Holger


#19

I modified some things, and now ‘jack_load mod-monitor’ might be required before loading mod-ui.
At some point soon I’m going to start pointing users to mod-app instead, as the setup for running mod-ui requires some manual work. But mod-app needs a little love first…


#20

Here even after “jack_load mod-monitor” the audio (direct through) works at the start, then when you add an effect no jack client is created for that effect and no audio is routed through the effect.

Using mod-app everything works fine with effect_0, effect_1 etc being created.