TL;DR : Faster, better, stronger, WebPd 1.0 is coming (featuring
WebAssembly, Audio Worklet and more) ... but it needs your support !
WebPd is a highly modular web audio programming toolkit inspired by Pure Data.
→ it allows Pure Data patches to run in web pages, therefore enabling
non-programmers (artists musicians, etc ... ) to design live and
interactive audio for the web.
→ it provides experienced web programmers with a complete audio
toolkit that is production-ready, and enables efficient audio
synthesis and processing in the browser.
🌱 You can try a demo of the upcoming version here :
https://sebpiq.github.io/WebPd_demos/the-graph/www/.
🌱 You can donate money to help making it real :
https://opencollective.com/webpd#category-CONTRIBUTE.
🌱 Your money will help moving forward the following roadmap :
https://github.com/sebpiq/WebPd/blob/master/README.md#roadmap.
----------------------
FULL VERSION
For the past weeks, development of WebPd (1) has picked up a good
pace, and the project has reached a state where I feel now confident
for sharing a demo (2), a public update on what's going on and a call
for crowdfunding (3).
🔊 1. How WebPd Got Here
The project was started in 2010 by Chris Mc Cormick when Firefox
released the first implementation of an API that enabled live audio
synthesis in the web browser. In 2012, I took over and ported WebPd to
a different API called Web Audio API (4), which has since become the
web standard for live audio.
The Web Audio API implementation of WebPd is still the current version
(v0.4) and hasn't seen any significant update for many years. It
works, but it is hackish and limited. This is due to the fact that the
Web Audio API impose its own synthesis and processing functions
(oscillators, filters, etc, ... ), and is therefore nearly impossible
to customize.
Luckily, the situation is now very different than it was 10 years ago.
New APIs and standards have been proposed and adopted by all major
browser vendors, making it finally possible to build serious custom
audio apps for the web browser :
- The AudioWorklet (5) : a recent fix to the Web Audio API allowing it
to run custom audio code with good performance.
- WebAssembly (6) : a binary instruction format which allows to
compile code so that it can run in the browser with performance close
to that of native applications.
With these in mind, I've been meaning to re build WebPd from scratch
for several years already but it's a daunting task : it requires an
entire re-design of the audio engine, and a full re-write of the code
to make the project future proof. Another problem is that there isn't
yet a good ecosystem of libraries for writing code with the new web
audio technologies mentioned above. Therefore, some generic web audio
packages need to be built as part of the project (adding to the
complexity and the amount of work).
🔊 2. What's planned for this new version, WebPd 1.0
First, let me say that WebPd does not intend to be a fully-fledged
application like Pure Data is on the desktop, but rather a library for
developing web applications. In that sense, conceptually, it is closer
to libpd (7) than to Pure Data. Of course, you could build a
fully-featured user interface, a Pure Data on the web, using WebPd,
but that is out of the scope of the project.
WebPd's goals are :
→ to allow artists to take their Pure Data patches and run these in
web pages, therefore enabling non-programmers (sound designers,
musicians, etc ... ) to design live and interactive audio for the web.
→ to provide experienced web programmers with a complete audio toolkit
that is production-ready, and enables efficient audio synthesis and
processing in the browser.
For this to be possible, WebPd needs a small community of users and
developers. In fact, I have received many messages inquiring about the
status of the project and many have offered help with development, so
I know that this community exists.
The first milestone is therefore to build a minimum viable product,
write good docs, resources for beginners to find help, find a good
platform for questions and discussion, etc ... making it more easy for
others to contribute. In the long run, I would like the development
work to be as collaborative as possible, and progressively hand over
ownership of the project to the community.
🔊 3. Crowdfunding campaign
In order to help reach this first milestone, I am starting a small
crowdfunding campaign so I can spend more time on the project in the
coming months. You can find here
(https://github.com/sebpiq/WebPd/blob/master/README.md#roadmap) a list
of what I plan to achieve for WebPd 1.0 with help from that money.
If this is something you'd like to help with, you can donate on the
opencollective page of the project
(https://opencollective.com/webpd#category-CONTRIBUTE). Any amount is
welcome.
You can also ask questions, or come share ideas here
(https://github.com/sebpiq/WebPd/issues/113) or here
(https://opencollective.com/webpd/conversations/announcing-webpd-complete-re…).
(1) https://github.com/sebpiq/WebPd
(2) https://sebpiq.github.io/WebPd_demos/the-graph/www/
(3) https://opencollective.com/webpd/contribute/backer-42114/checkout
(4) https://webaudio.github.io/web-audio-api/
(5) https://webaudio.github.io/web-audio-api/#AudioWorklet
(6) https://webassembly.org/
(7) https://github.com/libpd/libpd
Dave Smith, MIDI Pioneer, passed away at 72. As a hommage, I'd like to
announce the release of ELSE 1.0 Release Candidate 2, whose main attraction
is the Sound Font player object called [sfont~], more details at
https://github.com/porres/pd-else/releases/tag/v1.0-rc2
By the way, if any of you are on instagram, I'm posting Pd/ELSE related
stuff over there, check this post with an example using [sfont~] to play
some MIDI sequences you people can easily find online -->
https://www.instagram.com/p/CeTwd4VNal9/ General MIDI Sound Fonts are also
easy to get, have fun!
Of course the nice thing about Pd is that we can do crazier stuff than just
playing these, tell me what you feel like doing. Also, note [sfont~] has
nice microtonal capabilities, check its help file for more.
*And please test to see if it's all working fine. *It took me over 2.5
years to get this sound font player into ELSE, it was quite challenging and
lots of people helped me, especially Roman and Lucarda with the compilation
issues. I hope it's all good!
You can download the latest ELSE directly from Pd. Heads up, the next
release of ELSE will include a major overhaul in the [midi] object (perhaps
it will even have a new name). Compatibility will break but we'll be able
to do lots more with it, like writing multi track MIDI files and deal with
"meta" information.
Have fun with MIDI and Sound Fonts, Happy patching.
RIP Dave Smith
Hi all,
"flite" is and old "text to speech" external.
I had made some updates which includes:
- single binary without dependencies.
- support for the 5 voices
- read from a text file
- threaded functions for "synthesis" and "read file"
There are amd64 builds for tests at
https://github.com/Lucarda/pd-flite/releases
click on "Assets" and get the version for your OS.
Let me know if this is good enough for a Deken release or whatever.
Lucarda.
--
Mensaje telepatico asistido por maquinas.
hi
i'd like to announce the release of deken-v0.9.2
https://github.com/pure-data/deken/releases/v0.9.2
the GUI-plugin can be installed via deken.
just go to "Help -> Find externals" and enter
"deken-plugin" as the search string.
this is the first bugfix release of deken-v0.9, which solves an
important regression (aka: crash) on some older versions of Pd on macOS.
i hope this is now ready for inclusion in the next Pd release as the
standard "find externals" implementation.
in any case: please test!
changes since 0.9:
deken-plugin ("Find externals" within Pd)
=========================================
- fix crash on some macOS versions of Pd (basically reverting to the old
list view in selected cases)
- double-click on the "library" heading now will open/close all library
nodes
- double-click on any other heading (e.g. "version") will also re-sort
the libraries
- (single-click will only re-sort packages within each library node,
but leave the library-sorting itself intact)
deken-xtra-apt-plugin
=====================
- fix the deken-extension to also include packages installed via
`apt-get` (on Debian and derivatives)
deken cmdline (create and upload packages)
==========================================
- fix overriding of destination URL with `--destination`
- minor fixes in the GPG/SHA256 verification code
- make flags for enabling/disabling certain features consistent
- make wrapper script POSIX compliant
- fixes to help Debian packaging of the the cmdline tool
- update Docker image
- reduce size
- prepare Docker image for GPG signing
binaries and a Docker image for the cmdline tool are available from the
releases page.
happy patching
gfmdasr
IOhannes
hi
i'd like to announce the release of deken-v0.9
https://github.com/pure-data/deken/releases/v0.9
the GUI-plugin can be installed via deken.
just go to "Help -> Find externals" and enter
"deken-plugin" as the search string.
this is the version i'd like to get into the next Pd release as the
standard "find externals" implementation.
so please test!
deken-plugin ("Find externals" within Pd)
=========================================
- brand-new excel-like interface
- sort by library/version/uploader/date
- quick link from a package to it's deken homepage (which features
objectlists and more)
- simple selection of multiple packages
- INSTALL button
- watch the installation as it unfolds
- proper menu for installing pre-downloaded package files
- fast SHA256 verification on all platforms
- option to uninstall packages
- proper menu for proper ties
- advertise https://deken.puredata.info
- better feedback if search returned no result
- tooltip
- balloons
- improve guessing of deken architecture
- fix version sorting
- fix all bugs
- fix some more bugs
- implement many bugs
deken cmdline (create and upload packages)
==========================================
- ported to hy-1.0a4
- improve detection of single/double precision externals
- fix detection of FreeBSD/NetBSD/OpenBSD externals
- fix `==` version comparator (for finding packages of an exact version)
- add `~=` version comparator (for finding packages of a compatible version)
- allow mixing of libraries with version constraints and libraries
without in search terms.
- allow the user to specify a target directory when downloading
- more output at higher verbosities
- drop Python2 support
- allow the user to switch off GPG-signing with a envvar
- fix some more bugs
- add brand new bugs
binaries a Docker image for the deken cmdline tool are available from
the releases page.
with this release, the repository switched to using `main` as the
primary release branch.
happy patching
dsrax
IOhannes
** sorry for xx-posting **
--
PikselXX is scheduled for November 17 – 20. 2022
Piksel 20 years Anniversary
Dear friends,
We are glad to announce the call for projects for the 20 years Piksel
edition!
To celebrate the anniversary we open a new track for texts, if you are
a previous Piksel participant and want to share with us your
experience, this section is yours. Selected articles from the open call
together with some curated texts from Piksel artists and colleagues
will be included in the Piksel 20 years book.
Piksel will go hybrid again. Screen-based artworks and PikselSavers are
primarily intended for the Piksel XX Cyber Salon. Ideas for
collaborative online/physical activities are welcome. This year we want
to be back to physicality, we encourage you to present art
installations that can be built in Bergen to minimize the international
transport, according to the green strategy.
Please feel free to submit your projects to any one of the open tracks:
Presentations, workshops, concerts, installations, and the texts call.
Deadline is 31st of July!!
Please use the online submit form at: https://pretalx.com/piksel22/
Piksel22 is supported by the Municipality of Bergen, Arts Council
Norway, Vestland fylkeskommune and others.
more info: https://piksel.no/
**Piksel is an international festival for electronic art and
technological freedom. Part workshop, part festival, it is organised in
Bergen, Norway, and involves participants from more than a dozen
countries exchanging ideas, coding, presenting art and software
projects, doing workshops, performances and discussions on the
aesthetics and politics of art and free technologies.**
--
**open CALL for PROJECTS**
For the exhibition and other parts of the program we currently seek
projects in the following categories:
**1. Installations**
Projects to be included in the exhibitions.
The works must be realized by the use of free and open source
technologies.
**2. Audiovisual performance**
Live art realized by the use of free software and/or open/DIY
hardware. We encourage audio-visual projects, online “orchestra”
collaborations with local actors,...
**3. Presentations**
Innovative DIY/open hardware and audiovisual software tools or software
art released under a free/open license. (Also includes presentations of
artistic projects realized using free/open technologies.)
**4. Workshops**
Hands on workshops utilizing free software and/or open/DIY hardware for
artistic use. Workshops can be on a virtual basis too.
**5. PikselSavers**
Video and software art based on the screensaver format – short
audiovisual (non)narratives made for endless looping. Possible thematic
fields includes but are not limited to: sustainable resource
allocation, renewable technologies, energy harvesting, fair trade
hardware, free content, open access, open data, DIY economy, shared
development. The works must be realized by the use of free/open source
technologies.
**6. Texts**
Anecdotes and reflections from the 20 years history of Piksel for the
anniversary book. We are specially interested in hearing about
collaborations and projects that was initiated as a result of artists
meeting at the festival.
**Deadline to July 31. 2022**
Please use the online submit form at: https://pretalx.com/piksel22/
--
--
--
Gisle Frøysland
Piksel Produksjoner
Strandgaten 207
5004 Bergen, Norway
+47 90665018
www.piksel.no
Hey, first update of ELSE and the tutorial in 2022 has been released. Total
number of objects is now 446, total number of examples in the tutorial is
now 464..
I never take this long but there are lots and lots of changes here. Many
breaking changes on one hand but on the other I'm finally moving on to a
next development phase of "Release Candidates" aiming towards more
stability. One big change was having flags come first as they always should
have.
Many many fixes and many new objects.
*Highlights:*
- [metronome]: this object was added in the last update, I made many
changes and included several new high level funciontanilities. Specially, I
Added support for quite crazier time signatures.
- [tabplayer~]: now can trigger start and stop playing at audio rate with
signal input with gates and impulses.
- new [score]/[score2] objects to write and play musical score sequences
with a friendly syntax with bars, time signatures and fractional note
durations
- [polymetro]/[polymetro~]: polymetric metronomes at control and audio
rates.
The Live Electronics Tutorial has also been updated, check detailed
changelog at: https://github.com/porres/pd-else/releases/tag/v1.0-rc1
I also added in the readme alternatives to cyclone in ELSE.
Find binaries for the main 64 bits systems in deken (Linux, Windows and
macOS intel/arm), more to come soon and extra binaries will be available
and found only in the release downloads from the repository.
Cheers
Hi
I added the current version of Pure Data to my personal package archive
(PPA), so that it is finally possible to get a recent version of Pd on
Ubuntu without compiling.
Kudos goes to IOhannes who maintains the puredata package on Debian and
who makes sure that the most recent release of Pd is available in the
backports repository. His work enabled me to just¹ get his package
sources and push them to my PPA.
I also rewrote the "How to install on Debian/Ubuntu" FAQ page on
puredata.into who was referring to the retired apt.puredata.info repo
and Pd-extended.
You find instructions on how to get the most recent version of Pd on
Debian and on Ubuntu here:
https://puredata.info/docs/faq/debian
Roman
¹well, a little work was necessary...