[HN Gopher] Show HN: Audio plugin for circuit-bent MP3 compressi...
___________________________________________________________________
Show HN: Audio plugin for circuit-bent MP3 compression sounds
I made MAIM, an open-source audio plugin that uses real MP3
encoders to distort the sound. I've also added knobs that let you
"circuit bend" the encoders, changing parameters that would
normally be inaccessible to the user to get strange glitchy sounds.
The plugin lets you switch between two MP3 encoders, since under
the MP3 standard, the specifics of what to lose in MP3 lossy
compression is left up to the encoder. The encoders are LAME, the
gold standard for open-source MP3 encoders, and BladeEnc, an old
open-source MP3 encoder that has a really bubbly sound and was fun
to work with. I'd love any feedback, and I'll be around to answer
questions!
Author : wildergarden
Score : 108 points
Date : 2023-12-03 18:01 UTC (4 hours ago)
(HTM) web link (wildergardenaudio.com)
(TXT) w3m dump (wildergardenaudio.com)
| kid64 wrote:
| This is excellent, thank you for sharing it!
| mock-possum wrote:
| Oh this is fun.
| pschuegr wrote:
| Very cool!
| TonyTrapp wrote:
| And if you want to undo all the destruction caused by this
| plugin: Check out Zynaptiq UNCHIRP :)
| (https://www.zynaptiq.com/unchirp/).
|
| Obviously it cannot undo every single artifact caused by MP3
| compression, but I was blown away by how much it can undo the
| bubbly, metallic artifacts of many older MP3s. If your single
| source for a sound that you absolutely need is an old, low-
| quality MP3 file, this thing can do wonders that I thought
| wouldn't be possible. It's quite expensive but if this is
| something you have to deal with regularly, it's quite worth the
| price.
| wildergarden wrote:
| Oh that's cool! I didn't know about that program. Now I wonder
| what compressing and UNCHIRPing a sound hundreds of times in a
| row would sound like....
| bestham wrote:
| In the late 90s sometimes the mp3 files I got sounded awful and
| there was a little utility for windows named "uncook.exe" that
| would restore the original sound. It must have been because of
| some encoding error or mime error in the transfer to or from
| server. I was too young to know what it was but Uncook often
| worked to fix this.
| phpnode wrote:
| I think this used to happen when files were transferred as
| plain text rather than binary, but I forget which transfer
| protocol was affected - maybe FTP?
| justsomehnguy wrote:
| >> uncook.exe is a utility to remove line feeds from the
| mp3 file. Line feeds can be inserted when web sites are not
| configured properly to serve mp3 files. So Netscape (the
| browser which actually pays attention to such things as
| server configuration), can download mp3's as text files.
|
| https://hydrogenaud.io/index.php?topic=736.msg6877#msg6877
|
| >> How many times does it happen? You click a link to an
| mp3 file while using Netscape, and before you know it the
| mp3 file starts loading itself like a text file in
| Netscape. Either that, or you shift+click on a mp3 file
| then put save to disk. You goto play it after it downloads,
| and in no time you are disappointed that it sounds like
| plain screwed up shit, like you are under water, or you are
| listening to the lead singer of Type O Negative gargleing
| on a glass of kool-aid!!! Well with this new fix program
| that Blex has found out there on the net, I will guide you
| though fixing this irritating problem!!!
|
| http://blex.org/mp3/archives/02161998/fix.html
| trial3 wrote:
| MAIM is the funniest possible name for this, great job
| hyperific wrote:
| I love a recursive name
| eurekin wrote:
| Wasn't expecting to like the actual sound of it, could be used to
| modulate game in music, for example, when approaching a club with
| music playing
| EamonnMR wrote:
| This is really cool, and perfect for an aughts-throwback music
| project I've been chewing on. Thanks!
| fogbeak wrote:
| Hey, I'm a long-time music producer and I'm dying to get into
| this exact kind of work - writing plugins and eventually
| synthesizers from scratch.
|
| I'm curious what your path was to get to the point where you can
| write an audio plug-in from scratch - I noticed you're using the
| JUCE framework, and that's about as far as I got and I never
| really escaped tutorial hell.
| ace2358 wrote:
| Hi there, I'm in a similar situation!! Would like to write my
| own things at some point.
|
| For me I've looked at using the new Max VST compiler
| https://cycling74.com/products/rnbo
|
| Great for prototyping ideas.
|
| There is also native instruments Reaktor which is also awesome
| for low level dsp prototyping. https://www.native-
| instruments.com/en/products/komplete/synt...
|
| These tools are for creating the algorithms before programming
| them in text.
| wildergarden wrote:
| I would absolutely recommend using JUCE-- it is very well
| documented, with an active forum full of helpful people.
|
| When starting out, the first plugin I made was a gain/panning
| plugin, then a simple saturation plugin. These are good ones to
| start out with, since the output for a sample only depends on
| the input of that sample, and not the samples before it. After
| that, I would recommend making a delay plugin: there are a lot
| of opportunities for creativity with delay, once you have the
| basic code down.
|
| The plugin project structure can be a bit confusing at first,
| especially in the interaction between the GUI code and the
| audio processing code. The tutorials are helpful for that: once
| you've copied a tutorial, you can try expanding it, adding more
| knobs etc.
| nick__m wrote:
| I completely agree with your comment and would like to
| emphasize the part of about the delay.
|
| I wrote a toy synthesizer for the ESP32 where I used STK for
| the bulk of the synthesis. That was pleasant endeavor but the
| real pleasure started when I wrote my delay effect. I had so
| much fun adding features like multiple playback heads with
| separate feedback and volume.
|
| Another fun thing to implement was the apregiator and
| something that I call a scaler1, I learned so much about
| music theory while doing this.
|
| 1- There is probably a name for that effect where you choose
| a scale and if the effect receives a note outside, it outputs
| the closest note in the selected scale.
|
| edit: I forgot to add that your plug-in is awesome
| WalterSear wrote:
| Why are you doing this to me? I feel old enough already!
| weinzierl wrote:
| Looks similar in spirit to Goodhertz' Lossy plugin [1], described
| as:
|
| _" The infinitely desirable sound of crappy mp3's, broken
| cellphones, streaming videos, and much more."_
|
| I think Lossy approaches the same idea from a more artistic angle
| in contrast to MAIM which comes to a similar end from a more
| technical direction.
|
| Coming from the 8-bit generation I find it interesting and
| refreshing that the younger generation seems to leave the harsh
| sound of the bit crusher behind and brings more sophistication
| into digital degradation. It's no surprise, of course, because
| low quality lossy compression is what they grew up with, in
| contrast to 4-bit 4 kHz bit banged crash, my generation would
| consider lo-fi.
|
| Another plugin that is similar in spirit in the sense that it
| goes beyond simple downsampling to make things retro is
| AudioThing's Speakers. It has convolution samples from many old
| devices like the Gameboy or several old phones. I think it would
| be the perfect companion to listen to MP3 degraded sound with a
| speaker from your past.
|
| [1] https://goodhertz.com/lossy/
|
| [2] https://www.audiothing.net/effects/speakers/
|
| I'm not affiliated with any of the companies mentioned. These are
| just plugins from my collection that came to my mind. Usually I
| do not post links to paid products at all, but I also think the
| VST plugin space is somewhat special in that it seems to allow
| many small companies to exist (maybe even prosper?), which is
| rare today, so I made an exception here.
| wildergarden wrote:
| Yes, absolutely! Lossy was one of my main inspirations in
| coding MAIM, and I would recommend their plugin highly: it
| sounds beautiful, although it is perhaps a bit less "accurate,"
| since it does not use real MP3 encoders.
| weinzierl wrote:
| Thank you wildergarden for giving MAIM out for free!
|
| Most other usable plugins in that realm cost real money
| (Lossy is USD 79 for example) so I like to take the liberty
| to highlight the donation link:
|
| https://ko-fi.com/wildergardenaudio
| stenson wrote:
| very cool to hear lossy was an inspiration, and to know
| there's a more accurate version of the same idea out there in
| the world. and yes that's a totally accurate characterization
| re: accuracy when it comes to lossy. the loosely-based-on-
| mp3-ness also lets us be creative with certain engineering
| constraints, like getting it onto a guitar pedal:
| https://www.chasebliss.com/lossy
| userbinator wrote:
| It seems digital compression artifacts have replaced the
| previous generations' audiophiles liking for the "colour" that
| tubes and vinyl imparted to the sound.
| thriftwy wrote:
| That should be great for making phonk-like music snippets where
| you want just right amount of samples distortion.
| phaserphile wrote:
| I love the fact that you're shipping a linux version of this.
| Thank you, really! I do not understand why developers who make
| VST3 plugins explicitly choose not to ship linux builds by
| choice.
| weinzierl wrote:
| Seconded. Unfortunately Linux support is relatively rare in VST
| land. Also I wish CLAP would get more traction as a plugin
| format.
| tgv wrote:
| Fooking cool.
| louthy wrote:
| Not sure what to make of it. It clearly does what it says on the
| tin, and from that point of view it's impressive; but personally
| it's a deeply undesirable sound. Maybe it's bringing back PTSD of
| performing on Groovetech radio, streamed over RealPlayer! :D
|
| I guess im not the audience as I prefer analogue distortion, but
| I also like the sound of low bit rate digital artefacts (bit
| crushing and the sound of old samplers) - but this has quite
| extreme resonances that I wouldn't want to apply to audio sources
| in a track (because then I'd need to spend time EQing them out to
| make it sit well in a mix), so I'm not sure of the use case?
|
| Bravo on the name though!
| weinzierl wrote:
| I think this is to a degree a generational thing. I guess
| between 15 and 25 we are imprinted with what lo-fi means to us.
|
| My prediction is that after low quality compression we will see
| good, but noticeable auto-tune as a retro effect. I don't mean
| the early, late 90s overdone Cher-like auto-tune, but the one
| that's used seriously for pitch correction but is still
| noticeable.
|
| After that, I think, bad vocal synths are a good candidate. To
| my old ears many are right there in uncanny valley - too human
| for a synth, but not human enough not to be creepy.
| 0xdada wrote:
| Quoting Brian Eno: "Whatever you now find weird, ugly,
| uncomfortable and nasty about a new medium will surely become
| its signature. CD distortion, the jitteriness of digital video,
| the crap sound of 8-bit - all of these will be cherished and
| emulated as soon as they can be avoided. It's the sound of
| failure: so much modern art is the sound of things going out of
| control, of a medium pushing to its limits and breaking apart"
| brnt wrote:
| Xing encodes from Napster, baby!
| ArekDymalski wrote:
| Great, sounds and looks exactly as it should :) Can't wait to see
| discussions about analog warmth and that-rich-sound-of-vinyl
| being replaced by geeking over that-cool-retro-encoding-artifacts
| :)
| naoru wrote:
| "tubular" really brings back memories of slightly incompatible
| mp3 encoders and decoders. Some combinations produced this short
| and distinct tone on sharp transitions in sound, I wasn't sure
| what was the cause but I suspect this has something to do with
| VBR.
|
| Thanks!
| an_aparallel wrote:
| awesome work - im amazed by what folks are putting out for free
| these days. Kudos to you :)
___________________________________________________________________
(page generated 2023-12-03 23:00 UTC)