I was watching a video explaining how information is written to a hard disc drive. The video explains that the data is made up of small vectors of magnetic information, when the direction of that information changes, it sends a voltage spike that is read as a “1” no change is read as a “0” .
so something like " ->-><->->-<-<- " would be read as 011010.
The video explains that in order to increase density of data on the disc you have to make the vectors smaller, by consequence, the analog signal of voltage becomes harder to interpret as digital data. a method called PRML or partial response maximum likelihood is used to interpret the data more reliably than simple peak detection can.
I propose a device that simulates this, but allows you to goose the parameters for interesting effect.
for example, a knob to inject noise in the fake analog signal to make slight or dramatic inaccuracies in the PRML reading of the stored sample data. A filter to slow the rate of change of the the signal, making the PRML struggle to decipher the data accurately. maybe wave folding, so when the signal gets above a certain threshold it jumps to the negative side, injecting excess “1’s” into the data stream. Rectification to square off peaks and inject excess “0’s” into the data. A knob that puts the data “closer together” (simulated of course) so that the data overlaps more.
Ideally the device would have two sampling sections, each feeding in to each other, so you manipulate the samples back and forth like one would do back in the day with tape machines.
So im not at all knowledgeable about digital sampling and was wondering if you guys had some info to share or otherwise comment.
the kind of things i would want to know:
what kind of sample coding would we use? PCM maybe?
How real time could something like this get?
Do you think this sort of effect would sound interesting?
- any sort of feature you think would be cool.
heres some relevant links
i can be of no help on the technical side but you, sir, have my full attention
love the idea
I’m not sure I understand your proposal though. The hard drive stores binary (digital) information as changes in magnetic polarization (analog), which are decoded using partial response maximum likelihood. Got it. The digital data in this case is a sample, I assume. Are you then suggesting that the digital data be corrupted by injecting noise and otherwise hacking the PRML decoding? Wouldn’t this just result in digital error noises?
Or are you suggesting that the actual analog pulses be read as a sound signal?
I do really love the idea of somehow hacking a hard drive’s operation to elicit an interesting sonic effect, but I’m uncertain how exactly you’re thinking of doing this.
yeah the plan would be to corrupt the data at the binary level, introducing artifacts that would colour the original sample in a way that was inherently digital but different from sample rate reduction or psycho-acoustic compression. like what would it sound like if you did a full phase reversal of the binary data of a sample? I have absolutely no idea really.
does anyone have any idea on how we could investigate the sound of binary corruption of samples? perhaps a gen~ patch in max, thats the only thing i can think of now.
Open a file in a hex editor and change some bits (?). I once saw a youtube video doing exactly that, but in the graphics domain.
I think you’re going to have to parameterize the vectors from the hard disk someway and then use those parameters to transform the signal (samplerate conversion,etc). Digital audio is a stream of floating point numbers representing amplitude, so simply changing the binary representation of one of those samples will probably only give you clicks and pops (or noisy distortion if done continuously within a processing callback).
thinking about it, it probably wouldn’t be too compelling. You would need to have low bit rate samples to have that slight corruption transform the sound in a meaningful way, and when you get that low quality subtlety is out the door anyway. Adding randomness to the data would probably just make it sound like bad dithering.
The OTO Machines Biscuit does something like this.
The Biscuit does all manner of nasty stuff, but at its most basic, it’s a bit crusher. Once your incoming audio has been reduced to an 8 bit signal, the machine presents you with the analogy of eight buttons representing the eight bits of each sample. By toggling the buttons, each bit can be set to play back its value unchanged, or to play it back inverted, or that bit can be muted.
wow thats awesome! and its pretty much the closest you can get to my idea in way that sounds interesting. I messed around in a hex editor replacing some of the hex bits/bytes that represented the loudest values with the value that was one lower, hoping to make a rectification/distortion sound but it didnt really do much.
Thanks for showing me the biscuit though, i was under an impression that it was just another tiny midi mono synth and hadn’t looked into it at all but it looks pretty darn cool.