On Sun, 02 Apr 2000, Stephane Conversy wrote:

> and tweak a little foo.c to make it compile I got:
> 
> $ ls -l plugins/
> total 168
> -rwxr-xr-x    1 conversy ihm        24896 Apr  2 17:20 delay.so*
> -rwxr-xr-x    1 conversy ihm        25120 Apr  2 17:20 filter.so*
> -rwxr-xr-x    1 conversy ihm        27168 Apr  2 17:22 foo.so*

strange: my plugin directory (LADSPA plus my modifications) looks as follows
[
-rwxrwxr-x   1 benno    benno       10387 Apr  2 18:37 delay.so
-rwxrwxr-x   1 benno    benno        9505 Apr  2 18:37 double2float.so
-rwxrwxr-x   1 benno    benno       11216 Apr  2 18:37 filter.so
-rwxrwxr-x   1 benno    benno       11258 Apr  2 18:37 filter64.so
-rwxrwxr-x   1 benno    benno        9505 Apr  2 18:37 float2double.so

and after strip *.so:
-rwxrwxr-x   1 benno    benno        7852 Apr  2 18:41 delay.so
-rwxrwxr-x   1 benno    benno        7012 Apr  2 18:41 double2float.so
-rwxrwxr-x   1 benno    benno        8640 Apr  2 18:41 filter.so
-rwxrwxr-x   1 benno    benno        8680 Apr  2 18:41 filter64.so
-rwxrwxr-x   1 benno    benno        7012 Apr  2 18:41 float2double.so

plus remeber that the .so code contains not only the executable code but shared
lib header plus symols needed to load the library.
Anyway the waste is very tiny, compared to  today's 64MB+ of RAM you have on
most boxes. ( X11 sucks orders of magniture more than our 7Kbyte plugins)

If you want, LADSPA allows you to put more than one DSP algorithm into a single
.so file ( accessed by the descriptor(index)  , where indexs goes from 0 to
num-algorithms you put into the .so file).

Therefore if you want to combine 100 plugins into a single .so file, that's 
very easy to do. 


> 
> What can we say:
> plugins total size is linear with the number of files
> if all plug-ins were in a single file, then plugins total size would be
> equal to A+nB where n is the number of files.
> 
> I know plug-ins are easier to maintain when written in seperated file,
> and with this scheme, we allow binary-only plugins.
> 
> One remark though: if plugin implementors could be kind enough
> to make sure that global variables, functions, #define etc. are unique
> across plugins, then we could do something like a 'cat', and
> have only a small binary file for all plugins.

???

please use the method I described above, since ,the host automatically
can use every algorithm that you've put into the .so file, by simple specifying
the name , like filter.so , which provides two algorithms: low pass filter
(name to use: lpf) and high pass filter (name to use: hpf). 

>  
> I don't know if it's worth the effort (after all we have a lot
> of RAM and HD space by now)... With C++, namespaces and no #define
> that would be easy.

Again, wrong way to go.

> 
> About VST2: I filled a form to get the sdk. Am I supposed
> to receive an ack from steinberg and then an url ?

No, after you filled the form, it prints a text page , with the URL
of their FTP server, and a login and a password.

Then you have to download the SDK from their FTP server manually.

Benno.

Reply via email to