Re: [PD] Using externals with libpd on Windows

2018-05-11 Thread Christof Ressi
yes, this is a limitation on windows where a DLL can't automatically import 
symbols from the executable where it was loaded (what you get on Linux with 
--export-dynamic). for Pd the solution is to make the app itself a thin wrapper 
around a DLL (pd.dll) which plugins can link to. 

I found this link which might be helpful:

http://forums.codeguru.com/showthread.php?536343-RESOLVED-accessing-symbols-in-appllication-from-within-dynamic-library-MinGW

I guess if you compile libpd as a DLL (with "--export-all-symbols") existing 
externals should load.
 


Gesendet: Freitag, 11. Mai 2018 um 19:21 Uhr
Von: "Joe White" 
An: Pd-list 
Betreff: [PD] Using externals with libpd on Windows

Hi all, 
 
I recently spent a bit of time tracking down why a patch wasn't loading a 
couple of externals in a windows application that embeds libpd.
 
The patch was using vbap [0] and soundfile_info from iemlib [1].
 
The issue I found was that the pre-built binaries that work in the window 
version of the Pd authoring environment were linking against pd.dll (I'm 
assuming from Pd/bin/) in order to correctly link against the plugin API 
methods exposed in m_pd.h.
 
The solution I recently came to, though admittedly a bit of a hack, was to 
generate a custom VS2017 dll project for both vbap, and soundfile_info, include 
the relevant source files, and link against the compiled version of libpd to 
resolve the missing symbols instead of the authoring libraries.
 
The downside of this approach is that the manually compiled externals will no 
longer run in the Pd authoring environment, and it's not really maintainable 
from a development perspective. 
 
From my days of making externals for macos, I don't think I ever had to link 
against Pd, but just include m_pd.h and be done.
 
My question is whether this is usual behaviour when working with 
externals/libpd on Windows or if I'm missing something somewhere?
 
Any perspective would be much appreciated!
 
Thanks,
Joe
 
[0] https://puredata.info/downloads/vbap
[1] 
https://git.iem.at/pd/iemlib[https://git.iem.at/pd/iemlib]___
 Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list[https://lists.puredata.info/listinfo/pd-list]

___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


[PD] Using externals with libpd on Windows

2018-05-11 Thread Joe White
Hi all,

I recently spent a bit of time tracking down why a patch wasn't loading a
couple of externals in a windows application that embeds libpd.

The patch was using *vbap* [0] and *soundfile_info* from iemlib [1].

The issue I found was that the pre-built binaries that work in the window
version of the Pd authoring environment were linking against *pd.dll* (I'm
assuming from Pd/bin/) in order to correctly link against the plugin API
methods exposed in *m_pd.h*.

The solution I recently came to, though admittedly a bit of a hack, was to
generate a custom VS2017 dll project for both *vbap*, and *soundfile_info*,
include the relevant source files, and link against the compiled version of
libpd to resolve the missing symbols instead of the authoring libraries.

The downside of this approach is that the manually compiled externals will
no longer run in the Pd authoring environment, and it's not really
maintainable from a development perspective.

>From my days of making externals for macos, I don't think I ever had to
link against Pd, but just include *m_pd.h* and be done.

My question is whether this is usual behaviour when working with
externals/libpd on Windows or if I'm missing something somewhere?

Any perspective would be much appreciated!

Thanks,
Joe

[0] https://puredata.info/downloads/vbap
[1] https://git.iem.at/pd/iemlib
___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


Re: [PD] polynomial pairs in lpc filter

2018-05-11 Thread Ed Kelly via Pd-list
Ah! Now you've piqued my interest. I wonder if it would also run on a Bela 
board (Beaglebone Black hat - I have one of these).

It's really good that there's some low-latency platforms in small form factors 
coming out now.

Having gone through the grinder with this MSP->Pd port, when I get it working 
I'll be happy to try and phizz it into Bela. I started writing Pd externals 
precisely to enable speech manipulation, but I got stuck and moved on to other 
things. You've re-lit this fire!

Ed

_-_-_-_-_-_-_-^-_-_-_-_-_-_-_

For Lone Shark releases, Pure Data software and published Research, go to 
http://sharktracks.co.uk  

On Friday, 11 May 2018, 06:53:31 GMT+1, Simon Iten  
wrote:  
 
 hi, well it is not a dissertation at all.i am working on some axoloti (a stm32 
with dedicated midi and audioports, lowlatency audio board) modules for lpc 
playback. check out the axoloti, it’s nice!it is pretty hardware specific but 
sure i can share a github link, once it is up there. it progresses slowly right 
now, since i have a life as well (music…)


On 11 May 2018, at 03:46, Ed Kelly via Pd-list  wrote:
Oh gosh! Well spotted!

It loads, but I suspect I will have to interrogate the algorithms to make sure 
they are the correct interpretation of the vDSP algorithms in the original Max 
objects. This was the main part, and I've been a bit rusty at this - it's got 
me almost up-to-scratch again. A few more modules to port and it might just 
work!

Thanks Christof, and all of you...but

Simon Iten - when you've finished your dissertation could you share your 
results?

Still on it...
Ed


_-_-_-_-_-_-_-^-_-_-_-_-_-_-_

For Lone Shark releases, Pure Data software and published Research, go to 
http://sharktracks.co.uk  

On Friday, 11 May 2018, 01:21:29 GMT+1, Christof Ressi 
 wrote:  
 
 you forgot to return your object (x) in mbc_lpc_tilde_new :-)
 
Christof
 

Gesendet: Freitag, 11. Mai 2018 um 02:06 Uhr
Von: "Ed Kelly via Pd-list" 
An: padovani 
Cc: "Pd list" 
Betreff: Re: [PD] polynomial pairs in lpc filter

Jose...
I've stuck my head in the lion's mouth so I may as well go in for one more 
bite, although I promise you that IOhannes Zmoelnig is a REALLY NICE GUY.

 
I agree that edkellytista9 is a pretty stupid github name. It was done in a 
hurry for working on another project, but I'm setting up a more serious one 
because...you know...presentation is important.
 
I'm using Makefile.pdlibbuilder now - very cool. And deken ekext-0.2 coming 
soon.
 
I have a house. It's a bit of a dump but has a studio. I don't live there yet. 
We need to get the builders in!

 

...and my mbc_lpc~ port compiles but spits out an error:
mbc_lpc~: initializing
mbc_lpc~: free memory...
mbc_lpc~: allocated memory
Generating Hamming window for LPC analysis
 mbc_lpc~
... didn't return a patchable object
 mbc_lpc~
... couldn't create
 
I still don't know why. Perhaps Iohannes can help?
Ed
 
_-_-_-_-_-_-_-^-_-_-_-_-_-_-_

For Lone Shark releases, Pure Data software and published Research, go to 
http://sharktracks.co.uk 
 
 

 

On Monday, 7 May 2018, 09:54:49 GMT+1, padovani  
wrote:
 
 

Got late into this discussion, but I'm really interested in this project and 
would like to help (even if I don't have much experience coding new objects and 
have been a little busy with my classes at the University).
 
Ed, any further success last weeks? well... also with the house... ;)
 
José H.

 
 

2018-04-23 4:45 GMT-03:00 IOhannes m zmoelnig 
:On 2018-04-23 00:50, Christof Ressi 
wrote:
>> - please mark all your functions as static.
>
> except for the setup function, of course. just to prevent a possible source 
> of further frustration :-).
>

ouch.
thanks for pointing that out!



__ _
Pd-list@lists.iem.at[mailto:Pd-list@lists.iem.at] mailing list
UNSUBSCRIBE and account-management -> https://lists.puredata.info/ 
listinfo/pd-list[https://lists.puredata.info/listinfo/pd-list]
 
 ___ Pd-list@lists.iem.at mailing 
list UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list[https://lists.puredata.info/listinfo/pd-list]
  ___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


  ___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list