Difference between revisions of "Developers"

From MOD Wiki
Jump to navigation Jump to search
(Created page with "The MOD Duo as of today (release 1.1) runs Linux, version 3.4, with realtime patch.<br> JACK runs inside as audio backend, with mod-host loading each LV2 plugin as a new JACK...")
 
Line 9: Line 9:
 
The default compile flags are:<br>
 
The default compile flags are:<br>
 
<code>-mcpu=cortex-a7 -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -mvectorize-with-neon-quad</code>
 
<code>-mcpu=cortex-a7 -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -mvectorize-with-neon-quad</code>
 +
 
For aggressive optimization, add these:<br>
 
For aggressive optimization, add these:<br>
 
<code>-ffast-math -fprefetch-loop-arrays -funroll-loops -funsafe-loop-optimizations</code>
 
<code>-ffast-math -fprefetch-loop-arrays -funroll-loops -funsafe-loop-optimizations</code>

Revision as of 09:04, 26 September 2016

The MOD Duo as of today (release 1.1) runs Linux, version 3.4, with realtime patch.
JACK runs inside as audio backend, with mod-host loading each LV2 plugin as a new JACK client.
SSH is open by default, user 'root' and password 'mod'.
ALSA is used for the audio driver.

There's no X11 or any other kind of graphical interface. In fact, X11 libs are not even available.

The CPU is cortex A7, running at constant 912MHz.
The default compile flags are:
-mcpu=cortex-a7 -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -mvectorize-with-neon-quad

For aggressive optimization, add these:
-ffast-math -fprefetch-loop-arrays -funroll-loops -funsafe-loop-optimizations

Linux

Being Linux, developers have access to UNIX and POSIX APIs.
This means <unistd.h>, <pthread.h> and <stdlib.h> for example.

For more information see:
- https://www.kernel.org/doc/man-pages/
- http://pubs.opengroup.org/onlinepubs/9699919799/functions/contents.html

JACK

Also known as Jack Audio Connection Kit, is the audio server running inside the MOD.
Developers can create JACK clients to interact with the audio data directly (without being managed by the plugin host).

For more information see:
- http://jackaudio.org/api/index.html

NOTE: As of release 1.1, MOD Duo uses JACK2.

LV2

Audio and MIDI plugins in MOD Duo are done in LV2 format.


For more information see:
- http://lv2plug.in/pages/developing.html
- http://moddevices.com/ns/mod/
- http://moddevices.com/ns/modgui/