Forum rss-feed

Forum

Developers: Examples, examples, examples

Most Recent

written by: sfellner

Hi all,
thank you very much for your help.

I did manage to build the code in EigenD-Contrib from Github after having added before the paths (ending with /tmp/plugins) to /Users/sfellner/Library/Eigenlabs/Global/paths.txt.
The built plugins appeared inside in the Eigenlabs-EigenD-bfbc5a9/tmp/plugins path (which was unexpected) when I did issue "make" there.

In the launchbar of my self-built EigenD the entry "workbench" is inactive.
But very unexpected for me, the plugins do appear in the Workbench of the installed Eigend2 "create an agent" dialog. (Thanks Ferdinand, for the information that there are connections being made).

My last poor understanding was that I had to find first the names of the plugins in "example_version.py", e.g. "example" for the cfiltertemplate to be able to select them in "create an agent".

Finally I could add all plugins from (EigenD-Contrib) except "Vu meter" which disappears a short while after it has been created.

All seems fine now, thank you all for your help! This will enable me to explore the code further. And it will hopefully end in some contribution...

best regards,
stefan


written by: jsn

Mon, 6 Feb 2012 11:59:33 +0000 GMT

Can we get the examples fleshed out to show us the right/best ways of doing basic programming patterns, and help us understand some of the mechanisms. For example,

  • how to define/use verbs
  • simple audio processing (this is done with current Cfilter example)
  • passing data back/forth between Python/C - e.g.
  • when to use _nb_ structures vs. non-_nb_
  • creating out-of-processing threads and passing data to/from them
  • processing keypress streams
  • manipulating LEDs (directly and through keygroups)


    I'm sure there's more. Possibly another wiki page required? I'd be happy to help write these, but I need the guidance/review from you Eigenlabbers.


written by: 0beron

Mon, 6 Feb 2012 12:47:35 +0000 GMT

I'd like to add events in general to that list (ie an outline of the event handling world beyond cfilter).


written by: sfellner

Mon, 13 Feb 2012 16:12:37 +0000 GMT

Would have liked so much to participate in the DevCon2012, but in the last months my brain is, due to an TBI in august, too slow for acting as such of an "adventurous user". I recently did purchase an EigenD Pro subscription, and tried to use it together with the documents and videos from the DevCon2012.

Got the code (branch 2.0) from github to compile in Lion (excluding VSTs - they created too many build errors -, and using vanilla installations of xcode 4, python2.7.2 and ctags 5.8), but the results do not contain the Workbench and none of the agents inserted into the Code from Samples in "Writing an Agent From Scratch". The released version "EigenD Pro 2.0.35-experimental" does indeed contain the Workbench, but it is not obvious to me whether and where to copy parts of the release into the output built from the github source, branch 2.0, or whether this should be done vice versa.

Sorry if this is obvious to everyone else, but from my view some information is missing how to join the github source and the EigenD Pro version if this is really necessary. John did mention that "Agents can be copied from your paid for binaries into the GPL'd system" (http://www.eigenlabs.com/forum/threads/id/815/?page=1#post_form). I wonder how to do this, e.g. there are different code-files in /usr/pi/release-2.0.35-experimental/plugins/Eigenlabs/plg_osc and in /Users/.../Code/Eigenlabs-EigenD-bfbc5a9/plg_osc, thus copying would mean overwrite. A hint or an example would be nice.

So my question is: how to create a new agent (e.g. one from the samples), and integrate it in a local build, which contains a workbench as well.

My aim is to understand the workbench, its wiring and the modules and agents visible in it, just to be able to create setups for the pico and / or to augment functions.

Sorry for my brain being in "slow thread" mode, seeking for examples...
Stefan.


written by: stbohne

Mon, 13 Feb 2012 16:45:38 +0000 GMT

Hi Stefan,

you should take a look at DevCon_2012 which contains pretty much everything (all the presentations and slides) from the conference.

Your question is answered in page 10 of the Creating an Agent from Scratch pdf. You basically have to add the path to your compiled agent to Eigenlabs\Global\paths.txt. Your agent should then be loaded by any (sufficiently recent) version of eigenD.

Btw, good job, Eigenlabs. The videos and documentation are very nice and comprehensive. I have just discovered them today. You should make a post about it for all the developers who weren't there.

Stefan


written by: sfellner

Mon, 13 Feb 2012 17:31:49 +0000 GMT

Hi Stefan,

thanks for the hint.
I found these documents already last saturday and studied them.
And I did already add the plugin path(s) to /Users/sfellner/Library/Eigenlabs/Global/paths.txt, even trying this without "/tmp/plugins" and with this extra path suffix.

My problem is that the build from the github-code (branch 2.0) does not contain the workbench, thus there is no possibility for me to add and to wire the plugin(s), unless i switch to the installed Eigend2Pro Version. But then how to copy the new plugins into it?

I even tried to checkout EigenD-Contrib.git. as the Documentation Wiki says: "If you have the latest EigenD installed, you should be able to build all the Agents in this repo.". So far I didn't succeed.

Maybe I am just being too unfit.

Stefan


written by: geert

Mon, 13 Feb 2012 18:08:36 +0000 GMT

Hi Sfellner,

You should indeed just be able to build the agents in contrib when you have 2.0.35 installed. Can you please give more detailed information on what you do, what you type and the errors you get?

Once the build directory of an agent is added (you have to do this for each agent) to paths.txt, it should just show up in workbench from 2.0.35, no need to copy anything around.

Take care,

Geert


written by: geert

Mon, 13 Feb 2012 18:14:55 +0000 GMT

Hi Stbohne,

Thanks for your kind words about the videos an the DevCon 2012, we only just finished preparing them all and will make some announcements about these soon.

Take care,

Geert


written by: NothanUmber

Mon, 13 Feb 2012 18:25:08 +0000 GMT

Hi Stefan,

The Workbench is indeed not part of the open source EigenD version (at least yet). Neither is Stage nor the audio out agent.

There are two levels of "hacking EigenD" now. The easiest is completely sufficient as long as you want to build your own agents: Just set the plugin path to your custom plugins in the config file as described in the DevCon slides. Then you can just use the commercial EigenD binary+Workbench and load your custom agent with it - if set up correctly your new agent just appears in the list of addable agents in Workbench beside all the premade ones.

If you really want to hack on internals of EigenD (and replace the commercial EigenD binary) you have to copy a few files:

* copy everything from \usr\pi\release-2.0.35-experimental\plugins\Eigenlabs\plg_audio to the tmp\plugins\Eigenlabs directory of your github version

You don't have to copy Stage or Workbench - just e.g. pin the commercial ones to your launchbar. Now start your self-built EigenD and then Workbench and/or Stage from the launchbar - they will connect to your self built EigenD now instead of the commercial one. (If you really want you can also copy the Stage and Workbench binaries over of course, so you can start them from the main menu of your self built EigenD. They are in the bin subdirectory in the release-2.0.35-experimental folder called "Stage" and "Workbench" - but as said, it's not necessary).

All the best,
Ferdinand


written by: sfellner

Mon, 13 Feb 2012 19:09:15 +0000 GMT

Hi all,
thank you very much for your help.

I did manage to build the code in EigenD-Contrib from Github after having added before the paths (ending with /tmp/plugins) to /Users/sfellner/Library/Eigenlabs/Global/paths.txt.
The built plugins appeared inside in the Eigenlabs-EigenD-bfbc5a9/tmp/plugins path (which was unexpected) when I did issue "make" there.

In the launchbar of my self-built EigenD the entry "workbench" is inactive.
But very unexpected for me, the plugins do appear in the Workbench of the installed Eigend2 "create an agent" dialog. (Thanks Ferdinand, for the information that there are connections being made).

My last poor understanding was that I had to find first the names of the plugins in "example_version.py", e.g. "example" for the cfiltertemplate to be able to select them in "create an agent".

Finally I could add all plugins from (EigenD-Contrib) except "Vu meter" which disappears a short while after it has been created.

All seems fine now, thank you all for your help! This will enable me to explore the code further. And it will hopefully end in some contribution...

best regards,
stefan




Please log in to join the discussions