I think that it would be better to start looking for an initial application that plays MP3 from the command line. We could even try to implement the driver layer and the WinAPI functions to run such type of program for Windows. It could be possible to run it with a subsystem launched from DOS, intended to use and run PE EXEs from DOS with Protected Mode and the rest of usual configurations.
Google: command-line mp3 player
Google: command-line mp3 player windows
Google: command-line mp3 player ms-dos
_____________________________________________________
_____________________________________________________
_____________________________________________________
_____________________________________________________
One of the more important functions of the system library layer (also named OS) is allowing the end users to use and at least view and listen their real-world files.
We can really improve the possibility to use our files under our OSes (many of which we found in the wild from Internet) if we first reconvert them to the most standard and stable versions of each format (for example PDF 3 for Archiving for our PDF files), using UTF-8 and binary ASCII as default character sets, using BMPs and WAVs as the minimum standards for audio and image, using standard ZIP algorithms, and so on, instead of using exotic or extended versions for those file format extensions.
It will also leave us with a much saner set of files that are more feasible to use under a minimalistic and newly-made OS.
Without a high quality example program, source code, and wiki/forum/documentation pages about MP3, it will be a very very long time before we see a formal usage of newer audio formats, and will be limited only to uncompressed WAV files.
In the other hand, the more protocols, file formats and compression/encding algorithms we include in OS development websites (and those of programming in general, even for HTML5/JavaScript),
the more of those topics we include in our documentation, the more likely it will be that we will produce systems that others will use, and the higher the likelihood that we will be able to use our own OSes for a lot of our daily tasks... it's a very important thing to do if we really want to use our own OSes every day and make them advance.
I suspect that this sort of posts just try to convince people to not publish what they know even if it will advance the state of small OSes to an actually useful scope (i.e., having lots of tiny open-source OSes with multimedia capabilities is what we're dealing with here... so why not?).
It looks and feels like profound egoism to me, and it just sabotages the end of websites like this at making experts from newcomers.
_____________________________________________________
_____________________________________________________
_____________________________________________________
_____________________________________________________
Looking at computing from a mathematical point of view, and working in the OS and HTML5/JavaScript extremes, makes for an optimal way to approach the implementation of any kind of project. From the OS point of view everything else looks clear because it's logically at a higher place, and has more precedence.
Everything else can be contained in an OS. It's easier to learn it from the start with clean layers, without the clutter of existing OSes and programs, with small example programs that can be compiled and run, we have the ideal environment to learn. And we are at the core for the definition of an OS.
An OS is practically a commercial illusion. It's actually just a set of libraries in massive amount and a mechanism to launch code.
Everyone has different needs, so we always end up covering it all and needing a full explanation for all, from the OS perspective.