NET-AUDIO (Web Random Loader)
NET-AUDIO is an Envion submodule that fetches a set of random audio atoms from the web and feeds them to Envion’s envelope engine. The outcome is procedural, non-deterministic sound: source comes from the network, articulation from your Dynatext ternary envelopes.
Web-first sampling ethos
NET-AUDIO embraces a simple idea: download without foreknowledge. Instead of curating a local library, Envion requests sound from the web and lets your Dynatext envelopes decide how it behaves. The material is contingent and ephemeral; the articulation is yours.
Under the hood, Python queries stitch together direct audio URLs from freesound.org and Internet Archive, producing lightweight lists that Envion streams on demand. No hoarding, no folders to maintain — just fresh atoms on every run.
- Serendipity over selection: let constraints and envelopes sculpt chance.
- Always-now sourcing: URLs, not files — zero local baggage.
- Procedural by design: repeatable logic, irreproducible content.
How the NET-SOUND core works
NET-SOUND follows a deliberate two-layer design: the network layer runs outside Pure Data and assembles lightweight lists of direct audio URLs; the DSP core inside Envion remains a pure Pd environment that only reads and articulates those sources.
By keeping HTTP and file fetching out of Pd, the engine stays stable and portable: no SSL or redirect issues, no URL parsing inside patches, and no remote-stream quirks with loaders. The result is broader compatibility (PlugData, older macOS, even offline with pre-made lists) and zero setup for users — they can drop in a ready list and play.
The network produces material; Envion’s envelopes (Dynatext triplets) produce articulation.
Separation of concerns = robustness
The network produces material; Envion’s envelopes (Dynatext triplets) produce articulation.
By design, Envion keeps source and gesture apart: the web delivers contingent audio atoms, while Dynatext triplets, dual-channel interleaving, and modulation create the phrasing. This separation makes the system resilient and portable — but it also means the exact constellation you hear at any given moment is the product of many moving parts (randomized picks, stereo pairing, envelope timing, micro-collisions).
Because samples lock into each other across the dual channel and are articulated by evolving triplets and modulations, returning to the same sound result is practically impossible. Treat Envion like a camera: keep it armed, and capture the moment the instant something resonates with you.
This mirrors ecosystems like SuperCollider Quarks or FluCoMa datasets: content is sourced or prepared externally, while the sound environment focuses on timing, dynamics, and form.
NET-AUDIO streams all sounds directly from the web and does not download them into your Envion folders. The
netsound/
directory only contains lightweight text lists with the streaming URLs — no audio files are saved on disk.
⚠️ Note: Some retrieved sounds may be subject to copyright — use for educational or non-commercial purposes only.
If you want to save a sound locally:- Open the latest list (e.g.
envion_random_raw_00X.txt
) and copy any URL (without the trailing;
). - Paste it in your browser or use a terminal command such as:
curl -L https://cdn.freesound.org/previews/629/629301_13885154-hq.mp3 -o ~/Desktop/sound.mp3
- Then rename and organize the file as you prefer.
Patch behavior
Sounds loaded from NET-AUDIO automatically inherit the current Envion patch characteristics — including dynamics, envelopes, modulation depth, and the last loaded preset. For percussive material fetched from
netsound
, it’s recommended to lower the stretch parameter (see the Stretch section of this guide) to preserve the transient articulation.
As a starting point, try the ÆTCHR preset — inspired by Autechre — optimized for short, dense, and highly articulated percussive textures.
ÆTCHR — Example preset built on NET-AUDIO material
ÆTCHR is a procedural preset designed within Envion, inspired by Autechre’s complex rhythmic logic and dynamic articulation.
All sound sources in this example were randomly fetched via NET-AUDIO — eight percussive fragments retrieved directly from freesound.org through the netsound
stream.
Each sample inherits the parameters of the current patch and is reshaped by Dynatext envelopes. The result is a dense, granular rhythm that remains entirely generative and unpredictable — no samples are stored locally, all are streamed in real time from the network.
Tip: to achieve similar results, load a recent NET-AUDIO list, reduce the stretch parameter (see the Stretch section), and start from the ÆTCHR preset.
Expanded mode (exploratory & open) NET-AUDIO now includes ready-made URL lists sourced from Internet Archive, Freesound, and BBC Sound Effects. You can start exploring these lists right away — each one opens a different window into the network’s sonic matter. run → get 8 → play.

Why it matters
- Two-layer randomness: remote content × local gesture (Dynatext triplets).
- Always fresh: each run yields a new 8-slot drum palette.
- Eight slots: those 8 links map to buttons 1–8 in the module.
As query control lands, you’ll be able to request more results and different categories.
Wrapper Interface
The NET-SOUND GUI module automatically loads eight random sounds from the web directly into Envion. The eight numeric buttons (1–8) in the GUI trigger the simultaneous loading of all eight slots across both arrays (LEFT and RIGHT), generating a new random combination from the current netsound list each time.
In the DUAL CHANNELS section, you can load three ultra-stereo pairs, each made of two different sounds per channel (LEFT and RIGHT), selected from the most recently loaded list. This allows for hard-panned configurations and wide, dynamic stereo landscapes.
Inside the
netsound/
folder, multiple ready-to-use progressive lists
are already included, named as:
envion_random_raw_XX.txt
(e.g. envion_random_raw_001.txt
,
envion_random_raw_002.txt
, …).
Generate a new list (macOS)
- Open the main Envion folder (the one that contains everything and the
netsound/
subfolder). - In Finder: right-click the folder → Services → New Terminal at Folder.
- Run the included script. It will automatically fetch 8 valid drum URLs and save them as a new progressive file in
netsound/
.
For convenience, the
netsound/
folder already contains four generations of random lists previously generated through the NET-AUDIO script.
Each generation automatically produces a new file with a progressive name:
envion_random_raw_001.txt
envion_random_raw_002.txt
envion_random_raw_003.txt
envion_random_raw_004.txt
This structure allows you to easily compare different random sets or recall previous generations without overwriting earlier results.
The Terminal prints a short log while it searches. Messages like “no valid URL” are normal — the tool skips non-audio responses and keeps going until it collects the 8 valid links.
[OK 1/8] https://cdn.freesound.org/previews/423/423519_7704891-hq.mp3
[SKIP] no valid URL
[OK 2/8] https://cdn.freesound.org/previews/266/266764_2278554-hq.mp3
...
[OK 8/8] https://cdn.freesound.org/previews/239/239087_4313171-hq.mp3
Saved: netsound/envion_random_raw_00X.txt
Each run creates one new file with a progressive name under
netsound/
, e.g.:
netsound/envion_random_raw_001.txt
netsound/envion_random_raw_002.txt
If you delete all of them, the sequence restarts from 001
.
List format
Each line is a direct audio link ending with a semicolon (Pd-friendly):
https://cdn.freesound.org/previews/239/239087_4313171-hq.mp3;
https://cdn.freesound.org/previews/423/423519_7704891-hq.mp3;
https://cdn.freesound.org/previews/266/266764_2278554-hq.mp3;
Any format supported by Pd/PlugData works (mp3, wav, aif, ogg, ...).
Load the list in NET-AUDIO~
- Open Envion and go to the NET-AUDIO~ module.
- Press Open (or your UI’s Click) and select the newest file in
netsound/
, e.g.envion_random_raw_00X.txt
. - The abstraction reads the text (
text define -k
) and loads each URL intosfload
L/R. - Use buttons 1–8 to audition the 8 slots; pair with your Dynatext envelopes for articulation.
Step | What happens |
---|---|
1 — Open | The list is parsed; empty or commented lines are ignored. |
2 — Buffer | Each URL is downloaded and assigned to the stereo buffers. |
3 — Map | The 8 entries are mapped to keys/buttons 1–8. |
4 — Play | Dynatext triplets procedurally articulate the material. |
Procedural power: Dynatext × Web
- Non-determinism: new sources + evolving envelopes keep results alive.
- Rapid exploration: one script run = a fresh kit to perform with.
- Focus on gesture: let the web provide matter; you sculpt articulation and form.
FAQ & Troubleshooting
- Can I change the search terms? Not yet. Current version focuses on drums and generates 8 links per run. Query management for more/different results is in progress.
- Where are the lists? In the
netsound/
folder inside your Envion directory, named progressively. - Can I use my own links? Yes: create a text file with one URL per line, each ending with
;
, and load it the same way.
Why Internet Archive can return “odd” results (vs. Freesound)
TL;DR Internet Archive is a general-purpose media library. Searches match
textual metadata (title, description, subjects), not the audio content itself. That means a query like
click
can hit sermons, lectures, or music tracks that merely mention the word “click” in their text.
What’s different from Freesound?
- Scope: Internet Archive hosts everything (talks, radio, music, archives). Freesound is sound-only and creator-curated.
- Metadata quality: IA metadata is heterogeneous and community-contributed; Freesound enforces structured tags (type, source, category, duration, etc.).
- Search semantics: IA matches keywords in text fields; Freesound’s taxonomy and tags are optimized for audio phenomena (e.g., “click”, “drip”, “switch”).
- Durations: IA items may be long (talks, broadcasts) even if a “click” is mentioned; Freesound entries usually describe the actual sound event.
Practical tips for NET-AUDIO lists
- Add negative terms to avoid false positives (sermons/lectures):
--exclude "sermon,lecture,preach,koran,islam,church,jesus,allah,mosque,religion"
- Prefer short durations for micro-events:
--max-dur 4
or--max-dur 6
. - Be broad with queries but specific with exclusions:
--q "(click OR tap OR tick OR button OR switch OR keypress)"
- Don’t over-filter subjects: many IA items lack consistent “subjects”, so omitting
--include-subjects
can increase recall. - Use curated collections when possible (e.g., BBC SFX), but keep in mind metadata still varies across sets.
Bottom line: IA excels at breadth, but its keyword-based metadata can be noisy. Freesound is narrower, but its tagging makes it more precise for “sound event” searches. Combining both yields the best lowercase-oriented results.