There was this scene in the beginning of The Matrix I always thought was strange. Early on in the film Neo pulls these little weird enclosed disc things out of his trusty hollowed out copy of "Simulacra and Simulation" to sell to some goons whom he eventually follows to a party. Here's the clip below:




[ Full iframe ]



When I first saw the film I initially just chalked it up to movie film prop silliness, but later as my interest in electronics and media formats grew I eventually found out what these were Sony MiniDiscs

Now what I though was strange about the scene was what the fuck was this goober paying presumably a few thousand dollars for something on a MiniDisc?

MiniDiscs, although a unique and forward thinking format, were not terrible common / did not sell very well here in the United States, although they did much better in The UK and in Japan especially.

Another thing to also take into consideration was that MiniDiscs were primarily an audio format. There were Data MiniDiscs but they were from my understanding fairly niche, expensive, slow and existed mostly only in Japan. There were a few iterations of the Data minidisc that ranged in capacity from 140MB up to 1GB with the last iteration, the HI-MD, also did not do well commercially in the west.

And as far as I can tell from the movie clip, none of these discs were MD DATA discs or HI-MD discs.

So did homeboy really just pay a couple grand for a pirated copy of the new Fatboy Slim album?, and if Neo is making money that easy pirating music for people, why is he bothering with the dead end office job?

In my typical wacky thrifting escapades I was luck enough to find a hand full of mini discs deep within what are essentially trash bins at a goodwill outlet, mixed with a bunch of recorded religious sermon tapes and self help tapes. There was unfortunately no player with them though. I found a NetMD for fairly cheap on ebay, and then a little bit down the line a friend gave me a full sized MiniDisc player for like a stereo setup, that was very nice of her.

Both are picture on the right ~>

The wonderful thing about Minidiscs is that you can just rewrite them over and over, so I wrote over those sermons with some albums I actually like (an act that I'm sure has lost me my favor with the holy trinity). You can even fit a couple albums on a disc too! (depending on what disks you have / if your using longplay and the length of the albums ofc)

Some of the downsides that I recall though were that the software you had to use to transfer music."Sony SonicStage", was really fucking wonky. The drivers were a little hard to find and I think it required Windows XP or some kind of software emulation. It was probably in 2017ish when I was doing all this and I'm writing this page in 2024, so I'm working with a little bit dated info. It looks like there are better alternatives now, although it requires chrome.. yuck. I don't think I ever got around to trying libnetmd because I was a smelly windows user at the time

Another thing that was a little bit of a disadvantage to using MiniDiscs was that the audio bitrate it compresses to wasn't necessarily always the best, which is to be expected. From what I'm seeing it was 292 kbs on standard play and 132 kbs on long play. Fair enough, but the thing that was frustrating was that 'Sony Shitstage' couldn't interpret FLACs / ALACs / OGGs or anything, just MP3 and WAV. So I had to take an additional step to convert stuff just so the software could work with it.

So homeboy and his droogies were not only paying a couple grand for 1 or 2 Fatboy Slim Albums, but they were also in low bitrate LMAO

Ultimately I had a pretty good time playing around withe the medium and listening to my music, but that scene from the matrix had me thinking.. If I had to put data on and audio MD, what could I realistically do?

I was already familiar that a lot of older computers use to store data directly to tape in essentially audio, and you could listen to it and it would be this god awful static. Maybe I could go about it that way?

After doing a little bit of research I was able to find a pretty old MS-DOS program for encoding and decoding audio data written to tape in the Kansas City Standard, the program aptly named KCS

So decided to start small, and to just convert a small text file. So I made a text file with just the words "test test" inside, its files size is only 9 bites. I used KCS to convert it to audio data, and it spat out it's .WAV counterpart.

TEST.WAV (Warning: loud)

I was a bit concerned that the special kind of compression on the MiniDiscs was going to be an issue for accurately decoding the data afterwards, but after I copied over the .WAV with Sony Sonicstage, gave the static a listen on the NETMD, then copied it back to my computer and decoded it to KCS and I was able to able to open and read the outputted text file perfectly fine!

(at least, as far as I can remember, it was 7 years ago that I did this. I wanted to rerun this little experiment in totality at the time of writing this but I don't have access to my MD or their players atm, hopefully soon here in the future I can. I do distinctly remember this part working though.)

Something that was concerning was that encoding a 9 BITE file created a 10 second long .WAV file that was almost 217 KBs, and that was even using the High baud-rate CUTS mode! This was not looking like a good method for a lot of data.

So after trying several different files I ended up settling on this random 2048x1536 picture of someone's PC-98 that I had saved on my desktop (god damn I wish I had a PC-98, or an FM-TOWNS, someone please mail me one). I converted it with KCS and it spit out a 187MB .WAV that was..

ALMOST 2 AND A HALF HOURS LONG! What the fuck

PC98.WAV (Warning: also loud)

I had actually re-converted the PC-98 picture to .WAV this time around just to be sure I had in fact use CUTS back then, and yes I did. This .WAV just BARELY fits onto a MiniDisc.. It took about 40 minutes to encode and about and hour or more to decode, I did not have the patience to fully decode it again this time around.














From the looks of the directory I was using in 2017, the first time I did these tests, it looks like it had failed a couple times to decode, but there was a valid output file. I can't really recall if I did end up putting the PC-98 .WAV file on to a Minidisc, I'll have to get into my storage and look through my MiniDiscs to find that out at some point. I feel like if the file was much longer (and it was very much longer than the .TXT's file .WAV), there would be more of a chance that compression would screw up the data.

Regardless, I think its safe to say that this is and hilariously unrealistic and inefficient way to transfer data. I suppose I could have also tried some file compression, but that adds another layer of shit you would have to do for very little gain. Maybe there is another way to convert data into audio that I don't know of, but still I have a feeling it would not be much better.

I guess the only thing Neo was selling after all were some pictures of his dong.

8===D


Credits for the 3D MiniDisc Graphics (all I did was make the background transparent)

starvenus00
jonreytrevino



OK, FOR REAL NOW BITCHES!

I'm Back. I was pretty dissatisfied with leaving this page as is and really wanted to fully re-run this experiment. I've been feeling pretty skeptical of the memory that this did end up working, but now that I have my Net MD player out of storage I can finally try again and find out.

So what I recall doing the first time around with this experiment was putting the TEST.WAV file onto the MiniDisc device with SonicStage, taking it back off with SonicStage, then decoding it with KCS. Something that I found out when researching further about MiniDiscs and SonicStage is that you cant do this on OTHER computers. Say if like, your friend gave you a MiniDisc that they wrote onto with SonicStage on their computer, you CANNOT rip the MiniDisc on yours. That function is softlocked to your hardware/SonicStage copy. I read a bunch of disgruntle old forum posts of people trying to rip their old MiniDiscs (much later on different computers ofc) and having to record the MiniDisc from start to finish and split the tracks manually.

So if I were to try to transfer data to someone in this way, it wouldn't be possible to for them just take the tracks off, they would have to recorded in and split.

Just another step in the process.. x-x

Anyways, now that I have my MD player I can now try all this new neat software thats come out! I downloaded ElectronMD, which is a stand alone desktop version of Web MiniDisc that I was mentioning earlier. There is also PlatnumMD. Both seem to work fairly well in different circumstances (more on that in a bit), the interfaces are fairly straight forward. Both also have native linux version! which I was quite happy about, but I could not for the life of me get PlatnumMD to work on linux. ElectronMD initially didn't work either, that is until I realized I didn't have linux-minidisc installed.






I took this picture to the right of my NetMD then converted it to .WAV in hopes that it would be usable for file transfer. It was taken on my Sony Mavica camera, which quirky enough writes it's images to floppy disk, and oh boy are they low res. On the FINE setting

The Mavica on it's 'FINE' setting creates images @ 640x480 and they usually sit around 40KiB. In this circumstance this is perfect compared the the ridiculously unwieldy 2048x1536 resolution picture of the PC-98 I tried to use.

The .WAV version of this picture ended up only being a 6 min and 31 second audio file, which is way more reasonable.

MVC-008F.WAV (Warning: loud)

There were, unfortunately, some issues on the horizon, I was getting a bit ahead of myself.



For whatever reason, Neither ElectronMD nor PlatnumMD would accept .WAV files. This was troubling, because that MIGHT mean I'll have to convert to a lossy format to then be able to put the audio on the MiniDisc, which could fuck with that data integrity. I converted TEST.WAV to 320kbps .mp3, and looked at the waveforms, and sure enough the compression had affected them.

I then converted it back to .WAV and used KCS to try to decode it back to a text file, and as you could probably guess, it did not work.

The decoding process just kept going and going and kept adding garbage information to a file, to no end, I had to kill the program.

This certainly doesn't bode well for our little project, because if the ATRAC codec compression on the MiniDisc messes with the audio data too much like the .MP3 codec does, we could meet a similar fate.

I was pretty pleased to find though that ElectronMD does accept .FLAC files! which are lossless. As a sanity check I did run the .WAV -> .FLAC -> .WAV -> KCS -> .TXT gauntlet, AND IT DID WORK!!, but just with one minor snag. On converting the .FLAC back to .WAV I had to mess with the encoding and choose U-LAW (U-LAW encoding not messing with file headers being something I learned about when doing this project)






This is looking promising! Now all I have to do is write the .FLAC file(s) to MiniDisc.

In using ElectronMD, I noticed some really neat new homebrewed options. You can write tracks in mono mode, which would be perfectly fine in this application, and doing so cuts the writting time in half! That was really helpful in a earlier (failed) experiment I tried when all the batteries I had were on the verge of dying and would crap out half way through writing. Now that I have fresh batteries though, for now I won't be doing that just in case theres any added parity benefit. This could potentially double your alloted storage space on a MiniDisc though!

Another available homebrew option is to be able to circumvent that soft-lock I was mentioning before, and allow your to directly rip discs. For now I'm going to try the straight recording method to see if it works, but this could also potentially be another route.

Also included was a cute Windows 9x 'Retro' theme for the otherwise (imo) boring flat metro design the software has, don't you just love nostalgic software developers?

Now all I have to do is record it back, right?




[ Full iframe ]

THIS IS WHEN ALL HELL BROKE LOSE

I spent the next several hours feverishly trying various recording methods, all to absolutely no avail.

I tired recording the audio file in my DAW and in Tenacity with maxed out sampling rate on my audio interface: [FAILURE]

I tired Electron MD's built in recording feature: [FAILURE]

I tried both the limited open source ATRAC encoder as well as the higher quality remote ATRAC encoder : [FAILURE]

I used the homebrew method to rip audio tracks directly from the MiniDisc: [FAILURE]

I tried encoding the original .WAV files without CUTS mode and in lower baud rates: [FAILURE]

With every iteration of tests I felt as if I was getting closer, the end result files were less and less full of garbage, The resulting .WAV files waveforms were getting closer and closer to the original, but still ever so slightly gorked from the ATRAC compression. I opened the KCS readme to try to fully understand the other flags I could add to maybe optimize this further, maybe the lead time needs adjusted? The data written with parity maybe?



Thats when I stumbled across this line in the README..







..Did I just get slapped across the face by a DOS program? You gotta be fucking kidding me.

I guess it really was movie magic BS all along, now if you would excuse me I must put on the dunce cap. I figured that KCS would be accounting for some degree of distortion that comes from using tape as a medium (and it does), but lossy compression is just TOO much. If I learned anything today, it's that you should ALWAYS read the README.

On a side note, IF (big if) I was correct in my 2017 memory that this worked and I'm somehow not full of utter bullshit, I think it would have to have been because of some kind of file caching Sony SonicStage does.

I suppose it's not entirely impossible for there to be another method other than the Kansas City Standard, but that will be for another time.









For now, I suppose I'll settle with playing Tetris.