mastodon.world is one of the many independent Mastodon servers you can use to participate in the fediverse.
Generic Mastodon server for anyone to use.

Server stats:

8.1K
active users

#databending

1 post1 participant0 posts today
Continued thread

I then wrote a little #imagemagick script make a liquid rescale animation with an image. It literally just applies a liquid resacle repeatedly on an image. I like how it actually these waterfalls of pixels eventually.

no=0 ; imsize=$( identify -format '%wx%h' $1 ) ; cp $1 temp.jpg ; while [ $no -le 400 ] ; do magick convert temp.jpg -liquid-rescale 72% -liquid-rescale $imsize temp.jpg ; cp temp.jpg out_$no.jpg ; no=$(($no + 1)) ; done #glitchart #databending #script

I found this hardstyle techno-sounding sample in some random computer data!

The Rust tool I recently made (reillyspitzfaden.com/posts/202) to speed this “databending” process up has been helping immensely

Instead of manually finding files that are big enough to be worthwhile, I can just dump a folder into the Rust tool, set a minimum file size, and sort the results by size and quickly preview them

00:00/00:03
Continued thread

There's definitely going to be a blog post about this, with some more backstory on ADPCM and the VOX format

I've been reading windytan's blog (windytan.com/2012/11/the-sound) lately and really enjoying the deep dives into how specific audio things work, and I think I want to do some of that.

absorptionsThe sound of the dialup, picturedIf you ever connected to the Internet before the 2000s, you probably remember how it sounded. But what do these sounds mean?
Continued thread

I found the original VOX ADPCM specification (multimedia.cx/mirror/dialogic-), and when that didn't sound quite like Audacity's implementation, I looked at the FFMPEG source (ffmpeg.org/doxygen/7.0/adpcm_8)

For some reason, FFMPEG seems to do it a bit differently than the specification. I'll have to look into that more and see what's going on, but for the time being, it works!

I implemented my own VOX ADPCM decoder!

I had mentioned (reillyspitzfaden.com/posts/202) wanting to use that format to interpret raw data as audio, and the Rust Symphonia crate (crates.io/crates/symphonia/0.3) didn't have the VOX variant and assumed the incoming data was properly formatted as an ADPCM file, rather than random data, so it was actually easier to do myself.

Here's how it sounds:

Continued thread

If people are interested, the code should now be at a point that others can use it (if you're comfortable using cargo to run the code): github.com/reillypascal/data2a

If people have suggestions on distributing a cross-platform CLI tool binary using Rust, I'd be interested — that and adding some different sample formats when importing (e.g., VOX ADPCM/NMS ADPCM are some of my next goals for this

Overall I'm enjoying Rust a lot, and making CLI tools seems to be a good way for me to have manageable but interesting projects

I'm getting back into Rust, and my current project is automating the databending from this post (reillyspitzfaden.com/posts/202)

Importing individual files as raw data in Audacity is slow, and on top of that, I like to cut out the sub-20 Hz noise and normalize the result. So far, I can traverse through subfolders and write everything to a new output folder

I made an audio filter in Rust last summer (github.com/reillypascal/rs_rus), so the next step will be to incorporate that here and filter the result. I'm having a lot of fun with it!