# Sound,

Published articles for Sound,.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## A Speaker That Clips to City Poles and Leaves No Mark

DevFeed: [A Speaker That Clips to City Poles and Leaves No Mark](<https://devfeed.tech/articles/a-speaker-that-clips-to-city-poles-and-leaves-no-mark-34917.md>)

Original publisher: [Read original article](<https://www.yankodesign.com/2026/09/16/a-speaker-that-clips-to-city-poles-and-leaves-no-mark/>)

Author: Ida Torres

Published: 2026-09-16T22:30:15Z

Content type: article

Language: en

Sources: [Yanko Design](<https://devfeed.tech/sources/yanko-design.md>)

Topics: [systems](<https://devfeed.tech/topics/systems.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [audio](<https://devfeed.tech/tags/audio.md>), [audio-technology-concept-designs-public-speaker](<https://devfeed.tech/tags/audio-technology-concept-designs-public-speaker.md>), [building](<https://devfeed.tech/tags/building.md>), [concept-designs](<https://devfeed.tech/tags/concept-designs.md>), [design](<https://devfeed.tech/tags/design.md>), [public](<https://devfeed.tech/tags/public.md>), [sound](<https://devfeed.tech/tags/sound.md>), [space](<https://devfeed.tech/tags/space.md>), [speaker](<https://devfeed.tech/tags/speaker.md>), [technology](<https://devfeed.tech/tags/technology.md>)

### AI overview

Mariami Kurtishvili's Orchid Sound System is a graduate thesis proposing stainless steel high-frequency horns that clip onto existing urban infrastructure without screws, drilling, or permanent marks. The project explores temporary communal sound in public spaces.

### Source excerpt

A Speaker That Clips to City Poles and Leaves No Mark Walk down almost any street in an American city without your headphones in, and you will notice how little of that walk actually belongs to...

## Give Your Screenshots a Sound -- a Stream Deck Button That Dings When the Image Is on the Clipboard

DevFeed: [Give Your Screenshots a Sound -- a Stream Deck Button That Dings When the Image Is on the Clipboard](<https://devfeed.tech/articles/give-your-screenshots-a-sound-a-stream-deck-button-that-dings-when-the-image-is-on-the-clipboard-25176.md>)

Original publisher: [Read original article](<https://www.ivanmorgillo.com/2026/06/17/stream-deck-screenshot-ding-clipboard/>)

Author: Ivan Morgillo

Published: 2026-06-17T12:30:00Z

Content type: tutorial

Language: en

Sources: [Ivan Morgillo](<https://devfeed.tech/sources/ivan-morgillo.md>)

Topics: [Large Screen](<https://devfeed.tech/topics/large-screen.md>), [Wireless Debugging](<https://devfeed.tech/topics/wireless-debugging.md>), [Google](<https://devfeed.tech/topics/google.md>)

Tags: [adb](<https://devfeed.tech/tags/adb.md>), [display](<https://devfeed.tech/tags/display.md>), [screenshot](<https://devfeed.tech/tags/screenshot.md>), [sound](<https://devfeed.tech/tags/sound.md>)

### AI overview

The article describes a Stream Deck workflow that captures Android phone screenshots to the clipboard and plays a sound when the pipeline completes. It explains that foldable phones can emit display-selection warnings into the image stream, corrupting the PNG, and discusses capturing the active display instead of hardcoding a display ID.

### Source excerpt

A Stream Deck button that plays a ding the instant a phone screenshot lands in the clipboard -- no more counting to three. Plus a foldable multi-display gotcha (and the fix), with a hat tip to Roberto Orgiu.

## Build and Deploy an MQTT-Triggered Spin Application on Kubernetes

DevFeed: [Build and Deploy an MQTT-Triggered Spin Application on Kubernetes](<https://devfeed.tech/articles/measuring-crowd-engagement-with-an-mqtt-based-iot-app-15303.md>)

Original publisher: [Read original article](<https://www.fermyon.com/blog/mqtt_trigger_spinkube>)

Author: Kate Goldenring

Published: 2024-10-22T12:00:00Z

Content type: tutorial

Language: en

Sources: [Fermyon - Experience the next wave of cloud computing.](<https://devfeed.tech/sources/fermyon-experience-the-next-wave-of-cloud-computing.md>)

Topics: [App](<https://devfeed.tech/topics/app.md>), [MQTT](<https://devfeed.tech/topics/mqtt.md>), [Internet of things](<https://devfeed.tech/topics/iot.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [build](<https://devfeed.tech/tags/build.md>), [deploy](<https://devfeed.tech/tags/deploy.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [iot](<https://devfeed.tech/tags/iot.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [mqtt](<https://devfeed.tech/tags/mqtt.md>), [sensor](<https://devfeed.tech/tags/sensor.md>), [sound](<https://devfeed.tech/tags/sound.md>)

### AI overview

A tutorial on building a Spin application triggered by an MQTT-based sound sensor and deploying it to a Kubernetes cluster with SpinKube.

### Source excerpt

Learn how to build a Spin application that is triggered by an MQTT-based sound sensor and deploy that application to a Kubernetes cluster with SpinKube

## Tuning PipeWire for best audio quality on Ubuntu

DevFeed: [Tuning PipeWire for best audio quality on Ubuntu](<https://devfeed.tech/articles/tuning-pipewire-for-best-audio-quality-on-ubuntu-27694.md>)

Original publisher: [Read original article](<https://gagor.pro/2024/01/tuning-pipewire-for-best-audio-quality-on-ubuntu/>)

Author: Tom

Published: 2024-01-28T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Pipewire](<https://devfeed.tech/topics/pipewire.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Ubuntu](<https://devfeed.tech/topics/ubuntu.md>)

Tags: [asus](<https://devfeed.tech/tags/asus.md>), [audio](<https://devfeed.tech/tags/audio.md>), [best-audio-settings-pipewire](<https://devfeed.tech/tags/best-audio-settings-pipewire.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [latency](<https://devfeed.tech/tags/latency.md>), [legacy](<https://devfeed.tech/tags/legacy.md>), [linux](<https://devfeed.tech/tags/linux.md>), [linux-sound-optimization](<https://devfeed.tech/tags/linux-sound-optimization.md>), [performance](<https://devfeed.tech/tags/performance.md>), [pipewire-configuration](<https://devfeed.tech/tags/pipewire-configuration.md>), [pipewire-tuning](<https://devfeed.tech/tags/pipewire-tuning.md>), [quality](<https://devfeed.tech/tags/quality.md>), [reddit](<https://devfeed.tech/tags/reddit.md>), [sound](<https://devfeed.tech/tags/sound.md>), [systems](<https://devfeed.tech/tags/systems.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>), [ubuntu-audio-quality](<https://devfeed.tech/tags/ubuntu-audio-quality.md>), [ubuntu-sound-performance](<https://devfeed.tech/tags/ubuntu-sound-performance.md>), [usb](<https://devfeed.tech/tags/usb.md>), [windows-11](<https://devfeed.tech/tags/windows-11.md>)

### AI overview

A tutorial on tuning PipeWire on Ubuntu to improve audio quality. It explains the author's hardware, discusses PulseAudio's latency and resampling behavior, and introduces PipeWire configuration for obtaining better results from supported audio devices.

### Source excerpt

Learn how to tune PipeWire for the best audio quality on Ubuntu, ensuring optimal sound performance for your Linux system.

## Clojure Sound - 5 - Double Click with Foot Control

DevFeed: [Clojure Sound - 5 - Double Click with Foot Control](<https://devfeed.tech/articles/clojure-sound-5-double-click-with-foot-control-20723.md>)

Original publisher: [Read original article](<http://dragan.rocks/articles/22/Clojure-Sound-5-Double-Click-with-Foot-Control>)

Published: 2022-07-30T15:45:00Z

Content type: tutorial

Language: en

Sources: [Dragan Djuric](<https://devfeed.tech/sources/dragan-djuric.md>)

Topics: [Clojure](<https://devfeed.tech/topics/clojure.md>), [MIDI](<https://devfeed.tech/topics/midi.md>), [Playback](<https://devfeed.tech/topics/playback.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [audio](<https://devfeed.tech/tags/audio.md>), [clojure](<https://devfeed.tech/tags/clojure.md>), [desktop](<https://devfeed.tech/tags/desktop.md>), [interface](<https://devfeed.tech/tags/interface.md>), [music](<https://devfeed.tech/tags/music.md>), [playback](<https://devfeed.tech/tags/playback.md>), [sound](<https://devfeed.tech/tags/sound.md>), [user-interface](<https://devfeed.tech/tags/user-interface.md>)

### AI overview

This article discusses designing foot-controller gestures for a Clojure audio player. It examines button press, release, and double-click signals, and describes how those signals could control clip playback and address the need to rewind tracks.

### Source excerpt

In the last article we created a receiver function that listened to signals from our foot controller and started or stopped playback on consecutive clicks. The trouble with our player it that it only works until the end of the track. The start! function does not automatically rewind the playback. Neither stop! does that. Our program is responsible for detecting that the track should be rewound, perhaps by detecting that we reached the end of track (but even that is not fool proof, since audio infrastructure is not that precise). Now we have to think about a foot user interface that is useful and simple at the same time - there's not many different precise actions that a foot can do. My idea at this time is the following: distinguish three gestures: Button (un)pressed (value 0) Button pressed (value 127) Button pressed twice in a short time span (doubleclick). This can have two varieties: First pressed (value 127), then (un)pressed (value 0) (Un)pressed (value 0), then pressed (value 127). The values 0 and 127 always interchange, there's no way to send the same value twice in a row (with the MIDI controller I have). This gives us 4 different signals from one button that we can work with, which doesn't seem that much, but on the other hand, we can't assume that the feet of our user that is doing all this stomping is able or eager for much more complicated stuff. So, if I assume that the particular button is dedicated to a particular clip playback, I see the following actions: If the button is (un)pressed (value 0), the clip should stop, regardless of the previous state. If the clip has not been playing, nothing changes. If the button is pressed (value 127), the clip should start, regardless of the previous state. If the clip has been playing, it just keeps playing. If the button is clicked twice in a row, the things might get complicated! It's not exactly rocket science level complicated, but we still need to think what to do. In our desktop user interface toolkits, w

## Clojure Sound - 4 - Ctrl-Left-Pedal

DevFeed: [Clojure Sound - 4 - Ctrl-Left-Pedal](<https://devfeed.tech/articles/clojure-sound-4-ctrl-left-pedal-20722.md>)

Original publisher: [Read original article](<http://dragan.rocks/articles/22/Clojure-Sound-4-Ctrl-Left-Pedal>)

Published: 2022-07-13T18:45:00Z

Content type: tutorial

Language: en

Sources: [Dragan Djuric](<https://devfeed.tech/sources/dragan-djuric.md>)

Topics: [Clojure](<https://devfeed.tech/topics/clojure.md>), [MIDI](<https://devfeed.tech/topics/midi.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [audio](<https://devfeed.tech/tags/audio.md>), [clojure](<https://devfeed.tech/tags/clojure.md>), [debug](<https://devfeed.tech/tags/debug.md>), [devices](<https://devfeed.tech/tags/devices.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [music](<https://devfeed.tech/tags/music.md>), [play](<https://devfeed.tech/tags/play.md>), [sound](<https://devfeed.tech/tags/sound.md>), [usb](<https://devfeed.tech/tags/usb.md>)

### AI overview

This article explores using Clojure to build a basic audio player controlled by MIDI input. It describes playing selected segments of a WAV recording with arbitrary repetitions and connecting both a USB MIDI controller and a MIDI-connected foot pedal.

### Source excerpt

In the last article we managed to connect a MIDI controller and receive updates whenever something happens to its knobs and buttons. So what? As it is, nothing. Printing out messages is not of much use, beyond perhaps getting informed about how these messages look like, and what kind of data they typically contain. On another thought, exactly that is often valuable, because how else can we debug what's happening and learn how to use these devices. They typically don't come with terrific manuals. Luckily, basic use revolves around receiving one of a few kind of standard messages, that typically contain only a handful of bytes, more or less conforming to the MIDI standard, so it's up to us to assign the meaning according to our use case. If we care to read the standard, we could try to pick the closest meaning in our application, but if that's not possible, or practical, well... you live only once. Let's celebrate creativity and be silly. What I would like Cool, so, at first, I have an audio recording of a few chords interposed with some talk and noise, just a single wav file. I'd like to discover how to play only selected segments (i.e. the chords I'm interested in guessing), with arbitrary repetitions. The purpose of this is not to create a perfect looper or learning device, at least not yet. At first, I'm just interested in creating the crudest audio player, and discovering how to connect the player to react to the input from the MIDI controller that we connected last week. After that, it would be nice to see whether the foot pedal works in the same way, or it needs more poking. As we discovered last week, the more modern Faderfox MX12 connects through USB and is listed as one of the connected MIDI devices. The Roland FC-300 foot pedal, does not support USB, so I connect it via a 5-pin MIDI cable to my USB sound card. It will probably be displayed as a MIDI in/out of that sound card (more on that later). MIDI Controller (hands) The usual imports: (ns my-midi) (requir

## Clojure Sound 3 - Hello MIDI Controller

DevFeed: [Clojure Sound 3 - Hello MIDI Controller](<https://devfeed.tech/articles/clojure-sound-3-hello-midi-controller-20721.md>)

Original publisher: [Read original article](<http://dragan.rocks/articles/22/Clojure-Sound-3-Hello-MIDI-Controller>)

Published: 2022-06-30T21:59:00Z

Content type: tutorial

Language: en

Sources: [Dragan Djuric](<https://devfeed.tech/sources/dragan-djuric.md>)

Topics: [Clojure](<https://devfeed.tech/topics/clojure.md>), [MIDI](<https://devfeed.tech/topics/midi.md>), [Arch Linux](<https://devfeed.tech/topics/archlinux.md>), [Linux](<https://devfeed.tech/topics/linux.md>)

Tags: [clojure](<https://devfeed.tech/tags/clojure.md>), [connectivity](<https://devfeed.tech/tags/connectivity.md>), [core](<https://devfeed.tech/tags/core.md>), [music](<https://devfeed.tech/tags/music.md>), [sound](<https://devfeed.tech/tags/sound.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [usb](<https://devfeed.tech/tags/usb.md>)

### AI overview

A Clojure Sound tutorial that introduces MIDI controller input and explains how to use it to control software on a computer. It discusses MIDI device connectivity, Clojure Sound, and example hardware such as the Faderfox MX12.

### Source excerpt

You may not know that music instrument were connected devices even in the Stone Age, that is, many decades ago. In the 80's that even resulted in the standard that facilitated connectivity of heterogeneous devices. Typically, you'd have a keyboard, a synthesizer, some external knobs, maybe effect boxes, and many of them could be connected by cable and talk to each other, even though that synth might be 27 years old, and the keyboard 2 years old. That's the power of standard. MIDI might not be technically impressive. Especially for 2022, its transfer rate is unbelievably slow. On the other hand, a random device that you'd pick up at the store, on a yard sale, e-bay, or even at the dumpster, is almost guaranteed to have a MIDI connector. So, even though you'd have a hard time connecting your iPhone with your Linux laptop, my guitar can talk with my Arch Linux desktop just fine (I'm not kidding, it really does!). Making that guitar send a meaningful data to my computer is another pair of shoes. MIDI is very basic, and it's up to the user program to make sense of the data it receives. It is likely that you'll want to use a random exotic device in a very specific way; after all, music and art are all about originality. But, to walk on the Moon, we first have to get up from our bed. That's today's objective: taking input from a MIDI device, and controlling something on our computer by twisting knobs. The software As for the software, we need nothing more than Clojure Sound(), of course! You can read how to prepare a fairly basic Clojure project in the first article in Clojure Sound tutorial series. (require '[uncomplicate.commons.core :refer [close! info]] '[uncomplicate.clojure-sound [core :refer :all] [midi :refer :all] [sampled :refer :all]]) The hardware It is unlikely that you'll have the same controller that I do, but so what? Any MIDI device that has a button or a knob on it will do! At this moment, I'm using Faderfox MX12, not because it's a great device (which it

## Building a JavaScript Keyboard Accordion (the Musical Kind)

DevFeed: [Building a JavaScript Keyboard Accordion (the Musical Kind)](<https://devfeed.tech/articles/building-a-javascript-keyboard-accordion-the-musical-kind-37599.md>)

Original publisher: [Read original article](<https://www.taniarascia.com/musical-instrument-web-audio-api/>)

Author: hello@taniarascia.com

Published: 2022-05-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tania Rascia](<https://devfeed.tech/sources/tania-rascia.md>)

Topics: [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Svelte](<https://devfeed.tech/topics/svelte.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [browser](<https://devfeed.tech/topics/browser.md>), [Web app](<https://devfeed.tech/topics/webapp.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [app](<https://devfeed.tech/tags/app.md>), [browser](<https://devfeed.tech/tags/browser.md>), [building](<https://devfeed.tech/tags/building.md>), [coding](<https://devfeed.tech/tags/coding.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [projects](<https://devfeed.tech/tags/projects.md>), [sound](<https://devfeed.tech/tags/sound.md>), [svelte](<https://devfeed.tech/tags/svelte.md>), [volume](<https://devfeed.tech/tags/volume.md>), [web-app](<https://devfeed.tech/tags/web-app.md>)

### AI overview

A developer builds KeyboardAccordion.com, an open-source web app that maps a computer keyboard to a diatonic button accordion. The article describes using Svelte, plain JavaScript, and the browser Web Audio API to generate notes, control volume, and work around a browser limit on audio nodes.

### Source excerpt

It's been a while since I've written anything due to some personal concerns that I might write about later, but don't worry, I'm still...

## Speech to birdsong conversion

DevFeed: [Speech to birdsong conversion](<https://devfeed.tech/articles/speech-to-birdsong-conversion-21657.md>)

Original publisher: [Read original article](<https://www.windytan.com/2021/03/speech-to-birdsong-conversion.html>)

Author: Oona Räisänen (noreply@blogger.com)

Published: 2021-03-29T18:37:00Z

Content type: tutorial

Language: en

Sources: [Oona Räisänen](<https://devfeed.tech/sources/oona-raisanen.md>)

Topics: [Perl](<https://devfeed.tech/topics/perl.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [toolchain](<https://devfeed.tech/topics/toolchain.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [acoustics](<https://devfeed.tech/tags/acoustics.md>), [art](<https://devfeed.tech/tags/art.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [dreams](<https://devfeed.tech/tags/dreams.md>), [perl](<https://devfeed.tech/tags/perl.md>), [programming](<https://devfeed.tech/tags/programming.md>), [script](<https://devfeed.tech/tags/script.md>), [sound](<https://devfeed.tech/tags/sound.md>), [synthetic](<https://devfeed.tech/tags/synthetic.md>), [toolchain](<https://devfeed.tech/tags/toolchain.md>), [voice](<https://devfeed.tech/tags/voice.md>)

### AI overview

This article presents a proof-of-concept method for converting speech into synthetic blackbird song. It describes extracting speech frequency and amplitude with FM and AM demodulation, multiplying the frequency while preserving amplitude variation, and implementing the process with a Perl-SoX-csdr command-line toolchain.

### Source excerpt

I had a dream one night where a blackbird was talking in human language. When I woke up there was actually a blackbird singing outside the window. Its inflections were curiously speech-like. The dreaming mind only needed to imagine a bunch of additional harmonics to form phonemes and words. One was left wondering if speech could be transformed into a blackbird song by isolating one of the harmonics... One way to do this would be to: Find the instantaneous fundamental frequency and amplitude of the speech. For example, filter the harmonics out and use an FM demodulator to find the frequency. Then find the signal envelope amplitude by AM demodulation. Generate a new wave with similar amplitude variations but greatly multiplied in frequency. A proof-of-concept script using the Perl-SoX-csdr command-line toolchain is available (source code here). The result sounds surprisingly blackbird-like. Even the little trills are there, probably as a result of FM noise or maybe vocal fry at the end of sentences. I got the best results by speaking slowly and using exaggerated inflection. Someone hinted that the type of intonation used in certain automatic announcements is perfect for this kind of conversion. And it seems to be true! Here, a noise gate and reverb has been added to the result to improve it a little: And finally, a piece of sound art where this synthetic blackbird song is mixed with a subtle chord and a forest ambience: Think of the possibilities: A simultaneous interpreter for talking to birds. A tool for dubbing talking birds in animation or live theatre. Entertainment for cats. What other birds could be done with a voice changer like this? What about croaky birds like a duck or a crow? (I talked about this blog post a little on NPR: Here's What 'All Things Considered' Sounds Like -- In Blackbird Song)

## The Fast Fourier Transform

DevFeed: [The Fast Fourier Transform](<https://devfeed.tech/articles/the-fast-fourier-transform-40280.md>)

Original publisher: [Read original article](<https://www.jeremykun.com/2012/07/18/the-fast-fourier-transform/>)

Published: 2012-07-18T08:00:54Z

Content type: tutorial

Language: en

Sources: [Jeremy Kun](<https://devfeed.tech/sources/jeremy-kun.md>)

Topics: [Algorithm](<https://devfeed.tech/topics/algorithm.md>), [processing](<https://devfeed.tech/topics/processing.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [analysis](<https://devfeed.tech/tags/analysis.md>), [audio](<https://devfeed.tech/tags/audio.md>), [divide-and-conquer](<https://devfeed.tech/tags/divide-and-conquer.md>), [fourier-analysis](<https://devfeed.tech/tags/fourier-analysis.md>), [fourier-transform](<https://devfeed.tech/tags/fourier-transform.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [mathematics](<https://devfeed.tech/tags/mathematics.md>), [processing](<https://devfeed.tech/tags/processing.md>), [programming](<https://devfeed.tech/tags/programming.md>), [python](<https://devfeed.tech/tags/python.md>), [signal-processing](<https://devfeed.tech/tags/signal-processing.md>), [sound](<https://devfeed.tech/tags/sound.md>)

### AI overview

A tutorial on the Fast Fourier Transform explains its historical development, the improvement from O(n^2) to O(n log n) computation for the discrete Fourier transform, and a derivation and implementation approach. It also explores audio denoising by filtering a noisy signal's frequency spectrum.

### Source excerpt

It's often said that the Age of Information began on August 17, 1964 with the publication of Cooley and Tukey's paper, "An Algorithm for the Machine Calculation of Complex Fourier Series." They published a landmark algorithm which has since been called the Fast Fourier Transform algorithm, and has spawned countless variations. Specifically, it improved the best known computational bound on the discrete Fourier transform from $ O(n^2)$ to $ O(n \log n)$, which is the difference between uselessness and panacea.