electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » Clavia Nord Modular » Nomad - NM1 Open Source Editor
Module calculation order
Post new topic   Reply to topic Moderators: Nord Modular Editors
Page 2 of 2 [33 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: Previous 1, 2
Author Message
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24079
Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320

PostPosted: Wed Jan 31, 2007 3:06 pm    Post subject: Reply with quote  Mark this post and the followings unread

polychoron wrote:
I'm measuring latency
What procedure do you use for that ? I'm a bit puzzled as to how one would be able to measure delay times of half the sample time.

And I was thinking that maybe there is some asynchroneous aspect involved here due to the way things are being measured.

The really odd thing here seems to be though that a device can be used to measure it's own behaviour, as if it's on a couch, talking to a therapist Very Happy

Well not quite, but still.

_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
chresan



Joined: Jul 11, 2006
Posts: 150
Location: Karlsruhe, Germany

PostPosted: Wed Jan 31, 2007 3:39 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi Rudi,

I assume much time is wasted by creating the patches and setting the module indices. Perhaps you are faster if you have a program to automatically generate the patches from templates. If it helps, I will write this program for you.

Christian

_________________
----------------------
http://nmedit.sf.net
Back to top
View user's profile Send private message Visit poster's website
polychoron



Joined: Dec 12, 2006
Posts: 16
Location: Eindhoven, the Netherlands

PostPosted: Thu Feb 01, 2007 2:35 am    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
The really odd thing here seems to be though that a device can be used to measure it's own behaviour, as if it's on a couch, talking to a therapist Very Happy


.. or is it the couch that's talking Very Happy

I also had doubts whether the NM could be used to check up itself, but there are some things you can do to make sure that what you measure makes sense, e.g. placing two copies of the modules you are testing in series (the total latency should then double) etc. I trusted the method I used completely until i saw the 4-1switch's inner latency.

Just after I posted yesterday I edited my post to include the module `couch' for the 4-1switch. So there you can see how NM's own delay module is used for generating delay to measure against latency. The delay module is perfectly capable of making delays that are not integer multiples of the sample duration --- it probably does interpolation of some kind.

Christian, thanks for the offer, I will think a little about a sensible module couch template.
---Rudi
Back to top
View user's profile Send private message
chresan



Joined: Jul 11, 2006
Posts: 150
Location: Karlsruhe, Germany

PostPosted: Fri Feb 02, 2007 10:32 am    Post subject: Reply with quote  Mark this post and the followings unread

polychoron wrote:
...
Christian, thanks for the offer, I will think a little about a sensible module couch template.
---Rudi


Hi Rudi,

I have hacked together a simple patch file generator app (I have also use for it). You can specify a patch configuration with modules and cables and additionally place holder variables for a class of modules (for example modules in category Audio).
The application will create a patch file for all combinations of the place holder's value. And you have full control over module indices.

Well these explanations are always a bit abstract, so here is how a template file could look like:
Code:

modules:
  dummy = category:Audio
  out = 2Output
  mixer = Mixer
  osc = OscA
  inv = InvLevShift

cables:
  out:input:1 - out:input:0
  mixer:output - out:input:0
  osc:output - inv:input
  osc:output - dummy:input
  inv:output - mixer:input:0
  dummy:output - mixer:input:1

Inside the section 'modules:' you specify the modules like:
variable '=' <module>
or
variable '=' 'category:' <category>
In the 'cables:' section you define the wiring (I'll explain that later if necessary).

In this example the 'dummy' variable acts as place holder and will be replaced by each module in the audio-category .

However, I hope this helps to get an idea how a template file will look like and if you have use for it. If you need some special features, you are welcome to ask for.

Sincerely,
Christian

_________________
----------------------
http://nmedit.sf.net
Back to top
View user's profile Send private message Visit poster's website
polychoron



Joined: Dec 12, 2006
Posts: 16
Location: Eindhoven, the Netherlands

PostPosted: Fri Feb 02, 2007 1:05 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi Christian,

This will be very, very useful. I sort of worked by trusting that after deleting a module and a newly added module would fall in the `hole'. So I was paranoid all the time about the module order (fortunately I had Jan's tool to check it).

In a module couch template, I would like to make two `columns' of modules that are identical and that both contain the same module X that is being scrutinized. So it would be nice if placeholders can appear more than once and be substituted simultaneously with the same module (that is just too many words but you know what i mean). Perhaps this is already a feature of your generator.

It would also be nice if I could connect up all the inputs and all the outputs of module X in each column in a similar manner. So some kind of enumerator of audio in/outputs would be nice, one that survives references to nonexisting in/outputs (so that e.g. the AudioIn can be substituted although cables for its nonexistent inputs are specified in the template).


I think I solved the 4-1switch mystery, that is, i found new evidence that is consistent with it having a delay of half the sample duration. Such a delay can only be created by interpolation, say maybe plain averaging a sample with its predecessor. In any case, there would be a loss of information. And indeed there is information loss in the 4-1switch. If you feed a saw through 64 4-1switches in series, the saw is no longer a saw. I cannot hear it but it is clearly visible on the oscilloscope. It has lost amplitude, and the sharp corners are gone. Exactly what you would expect from averaging.

---Rudi
Back to top
View user's profile Send private message
chresan



Joined: Jul 11, 2006
Posts: 150
Location: Karlsruhe, Germany

PostPosted: Fri Feb 02, 2007 1:45 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi Rudi,

I will add the desired features. I think I can finish the tool somewhen this weekend. By the way, do you have any preferences about how the generated patch files should be named? For example should it be possible to name them after the tested module, or is an ordinary numbering scheme sufficient like in couch1.pch, couch2.pch, ... ?

_________________
----------------------
http://nmedit.sf.net
Back to top
View user's profile Send private message Visit poster's website
polychoron



Joined: Dec 12, 2006
Posts: 16
Location: Eindhoven, the Netherlands

PostPosted: Fri Feb 02, 2007 2:14 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi Chistian,

naming after the module would be nice. There would be a large number of these patches sitting in a directory--- so I could use a reminder Confused . Module numbers are also OK.

Thanks,
Rudi
Back to top
View user's profile Send private message
chresan



Joined: Jul 11, 2006
Posts: 150
Location: Karlsruhe, Germany

PostPosted: Sun Feb 04, 2007 2:53 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi Rudi,

I have finished the patch file generator and attached it to this posting. The license is GPL. To learn how it works, you should
1. read the template file specification doc/pgen.html
2. learn how to use the pgen.jar application:
Code:
java -jar pgen.jar -help

3. ask me if something is badly explained Shocked

You will also need the module descriptions which contain the module names, ids, and connector ids (note in the module descriptions the term 'index' is used instead of 'id'). You can open the module descriptions (RESOURCE/modules.xml) in your browser where it should be rendered as html (Firefox works, IE maybe). If your browser does not render it correctly, let me know and I will send you a html version.

The application comes with a few example templates which are located in the folder templates/. If you run the application with no arguments it will read all templates in this directory and put the results in the directory patches/ . For safety the application will not overwrite any existing files unless you specify -overwrite at the command line. And even if this argument is given, it will never overwrite any patch files generated by the same application instance.

Sincerely,
Christian

Edit: 2007-02-08 : pgen version 0.02


pgen-0.02.zip
 Description:
Patch File Generator 0.02

Download
 Filename:  pgen-0.02.zip
 Filesize:  1.18 MB
 Downloaded:  345 Time(s)


_________________
----------------------
http://nmedit.sf.net
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic Moderators: Nord Modular Editors
Page 2 of 2 [33 Posts]
View unread posts
View new posts in the last week
Goto page: Previous 1, 2
Mark the topic unread :: View previous topic :: View next topic
 Forum index » Clavia Nord Modular » Nomad - NM1 Open Source Editor
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use