Hallo!
a threaded soundfiler for PD using libsndfile.
by Tim Blechmann for pd_devel - also adapted now to have a threaded
resize and to work with main pd.
binaries+source here:
http://grh.mur.at/software/sndfiler.html
or in cvs ...
LG
Georg
PS: README file:
REQUIREMENTS:
- pd >= 0.39
- libsndfile
- for main PD you will also need threadlib:
http://grh.mur.at/software/threadlib.html
FEATURES:
- threaded reading of multichannel soundfiles into arrays
- threaded resize of arrays
For more information look at the help patch !
See the file INSTALL for installation instructions.
Hallo!
threadlib is a library for threaded patching and threaded PD externals
heavily based on pd_devel code by Tim Blechmann (his detach/join for
pd_devel)
you can get it there (also binaries):
http://grh.mur.at/software/threadlib.html
or in cvs ...
LG
Georg
PS: README file:
------------------------------------------------------------------------
PD objects for threaded patching:
- detach run part of the patch in a helper thread
- join synchronize messages to pd's main thread
- sleep blocks the system for a specific time
- threadedsf modified threaded soundfiler from pd_devel_0.38
WARNING:
these objects (especially detach/join) are very experimental and may
crash your patches if you use them in the wrong way, because some
externals/internals are not threadsafe!
Features for PD external programmers:
- lockfree FIFO from pd_devel
- callback system like in pd_devel:
Instead of the idle callbacks, which are not really useable
in current main pd, it uses clock callbacks
- USAGE: you have to link your externals against threadlib
(see sndfiler as an example)
- ADVANTAGES: so it's possible to write threaded externals
for main and devel pd with the same source code
(using the lockfree FIFO and sys_callback)
Many thanks to Tim Blechmann for his code and help!
------------------------------------------------------------------------
detach:
Detach is working on control objects only, creates a helper thread
and runs all functions of the following objects in this helper thread.
If a message from that thread reaches a join object a callback for
running the outlet function will be placed in the scheduler and run in
the next scheduler loop - so you can synchronize the message with pd's
main thread again.
Detach is useful if you have a control operation that would be too
CPU-intensive and would disturb dsp.
join:
The message to the inlet will be sent to the outlet during the
next clock callback of the scheduler. It doesn't matter, which thread
the message was coming from. Messages from the main pd thread will be
rescheduled.
Join can be used everywhere, where a message has to be rescheduled, this
is also useful to place behind any threaded external calling the outlet
functions from the helper thread, to make sure the following messages
are being run in the main pd thread.
!!! WARNING: !!!
detach/join provide the possibility of threaded patching.
beware of the risks:
- not every pd object is thread-safe (if unsure, look at the source
code or ask at the pd-list or me)
- pd is not completely thread-safe itself
- everything that is triggered by the detached message will be
detached. don't mix threaded and non-threaded message paths unless you
know what you are doing. use the join external to synchronize with the
main pd thread!!!!
- if detach/join crashes pd during a performance, don't complain ...
- both detach and join have an overhead ... so only use them, if you
really need threaded patching, e.g. have a subpatch that has to run for
quite some time and would interrupt audio or something else
hola,
here is an handy object to display some text in a patch,
scroll it, select some items,
sounds it would be more reasonable now to work
with text in the global fear watching times...
with too much power given to the images...
http://ydegoyon.free.fr/scrolllist.tar.gz
( only for linux here but would be grateful if someone would compile it
on osx,
windows, i forgot that brand since 2000 )
enjoy!!
saludos,
sevy
Still places open at this Tesla workshop held by Roland Roos:
(sorry for crosspostings)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++
rolywholyover-workshop@tesla
time: november 21 - 25th
place: tesla im podewils'schen palais
klosterstr. 68-70
d-10179 berlin
germany
cost: 100 eur.
info: http://tesla-berlin.de/_page.php?aktion=SHOW_PAGE&Page_ID=138
suscribe: info(a)tesla-berlin.de
rolywholyover opens up and discovers new fields of listening.
environmental sounds turn into "objets trouvés" and the whole realm of
the spatial space is newly interpreted.
rolywholyover is a standalone hardware object that can record, store
and playback audio signals. the application mainly entails four small
sampling units and a microprocessor. a software code functions as the
composition; it defines the "on" and "off" and the "when" and "how" a
sound appears and disappears. built into a cd case, rolywholyover is an
instrument whose composition always sounds different and that can be
carried around in order to discover the acoustical environment where
ever you are.
the one week workshop is divided into three different parts. all
participants first build their own rolywholyover object. therefore,
everybody will get all the necessary components and a soldering board.
in the second part, individual compositions are written and stored
directly on the object itself. the final event will be a performance
that is open to the public.
no special skills are required for this workshop. there is no need to
either be a programmer or a hardware modification nerd. after a short
introduction on how to solder all participants will be able to build
their own object. the composition will be written in the easy to use
excel-software and directly fed into the microprocessor afterwards.
the workshop will be taught by roland roos, currently
"projectartist-in-residence" at tesla im podewils'schen palais and
creator of the rolywholyover object.
Dear list,
having a great time this week with a bunch of crazy hacker kids in Sao
Paulo doing PD. Brasil is a very exciting place for free software these
days, and people are really putting a lot of time into development,
education and localization here.
The Estudio Livre group has started a WIKI page for Portuguese
information on PD, as well as translations of the manual and help
patches. Drop by if you are interested or would like to help!
http://www.estudiolivre.org/tiki-index.php?page=PDhttp://www.estudiolivre.org/tiki-index.php?page=MANUAL+DO+PD
d.
--
derek holzer ::: http://www.umatic.nl
---Oblique Strategy # 87:
"Imagine the music as a moving chain or caterpillar"
Hi guys,
As promised, the peakit~ external (thanks to mr
zmoelnig for the memset tip _) is now part of the cvs
repository.
It's a bit shaky, but seems to work. Please let me
know if you find any bugs (or even better, if you fix
any bugs!!!)
Also get listmoses - the two externs are meant to go
together.
Have fun,
Ed
->
->
-->
--->
----->
-------->
-------------> r3search + praktik EK5perimenz
___________________________________________________________
To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com
Hallo,
the [list]-abs collection of abstractions using [list] from pd-0.39 to
do various list operations is now in CVS at http://pure-data.sf.net as
well, directory "abstractions/footils/list-abs". Proper help files for
all abstractions are included.
There are some new additions, so here's the updated README:
list-abs
--------
These are abstractions implementing common list operations. Included are in
alphabetical order:
last-x.pd
get a list containing the last x atoms received.
list-accum.pd
sum all floats in a list.
list-demux.pd
route lists to different outlets (like demux in zexy). Not an abstraction,
just a patch illustrating the idiom.
list-drip.pd
serialize a list automatically (like drip in zexy).
list-drip2.pd
serialize two lists in sync as long as first list lasts.
list-dripslow.pd
serialize a list on demand: each bang will output the next element.
list-inter.pd
element-wise linear interpolation between two (float) lists.
list-inter-example-gem.pd shows a more complicated usage example, but
requires gem for visualisation.
list-len.pd
calculate length of a list.
list-makefilename.pd
apply [makefilename] on list elements, if they are symbols.
list-math.pd
apply [expr OP] with OP in (+,-,*,/) on list elements, if they are floats.
list-minmax.pd
find minimum and maximum float in a list.
list-rev.pd
reverse a list.
list-rot.pd
rotate a list (move X elements from front to back)
sroute.pd
a settable [route] object for a single selector.
take-two.pd
take a list as input and print all combinations of length two without repetition.
triple-scale.pd
this actually is not using [list]: Interpolate between two (x,y,z)-points.
Also see [list-inter], which is more powerful.
Have fun.
Ciao
--
Frank Barknecht _ ______footils.org_ __goto10.org__
Hi,
I collected my [list] abstractions into attached archive. None of
these abstractions require any externals, but of course they need
pd-0.39 at least.
Currently the most recent version always is to be found in my pwd~ at
http://royalrabbit.goto10.org/svn/goto10/pd-patches/fbar/list-abs/ but
later I will check these into CVS as well. (Btw: Does anyone have a
decent script to sync svn and CVS?)
They don't have a proper license, as they are so simple, consider them
public domain or released under the Pd license.
Here's the README:
list-abs
--------
These are abstractions implementing common list operations. Included are in
alphabetical order:
last-x.pd
get a list containing the last x atoms received.
list-demux.pd
route lists to different outlets (like demux in zexy).
list-drip.pd
serialize a list automatically (like drip in zexy).
list-drip2.pd
serialize two lists in sync as long as first list lasts.
list-dripslow.pd
serialize a list on demand: each bang will output the next element.
list-makefilename.pd
apply [makefilename] on list elements, if they are symbols.
list-math.pd
apply [expr OP] with OP in (+,-,*,/) on list elements, if they are floats.
list-rev.pd
reverse a list.
list-rot.pd
rotate a list (move X elements from front to back)
sroute.pd
a settable [route] object for a single selector.
take-two.pd
take a list as input and print all combinations of length two without repetition.
triple-scale.pd
this actually is not using [list]: Interpolate between two (x,y,z)-points.
Have fun, ignore externals.
Ciao
--
Frank Barknecht _ ______footils.org_ __goto10.org__
+
Reminder application deadline friday 28th of october
Call for workshop participation
MAKING SENSE VIII
Tangible Dreams
Wednesday 16th of November - Saturday 19th of November 2005
at Atelier Nord, Oslo/Norway
by Erich Berger(AUT/NO) and Peter Votava(AUT/DE)
Free participation
Application deadline Friday 28th October
+
MAKING SENSE PROJECT
Within a series of workshops Making Sense aims to
introduce basic and advanced concepts of how artists
can work with sensors and effectors, how to build custom
computer interfaces and how to interface them with
different software environments.
Making Sense project URL: http://anart.no/?location=90
+
MAKING SENSE VIII WORKSHOP - Tangible Dreams
invites artists and practitioners to apply with an own
project. The workshop aims to form a group of artists,
theorists, designers and technicians to be able to
illuminate each project in different directions and to
perform together the necessary steps and experiments
to bring the projects closer towards a state of production.
+
WORKSHOP PARTICIPATION
Participation is free of charge.
Artists and practitioners interested in participating
are asked to apply with a project + cv to sense(a)anart.no
Application deadline Friday October 28th.
For participants of the nordic and baltic
region is a possibility to apply
for travel grants at www.nifca.org, see Sleipnir.
+
ADDITIONAL INFORMATION
Workshop director and producer Erich Berger, Peter Votava
http://randomseed.orghttp://www.mego.at/pure.html
Project supporter PNEK
http://pnek.no
Projectbase Atelier Nord
http://anart.no
+
ATELIER NORD
PHONE +47 23060880
FAX +47 23060884
E-MAIL office(a)anart.no