Don’t be afraid of high resolution music

Well, this article is not about business optimisations, but about your personal pleasure if you are addicted to listening to music. In this case you know how effectively it helps to tune-up and work productively.
 
We are used to listening to CD quality music (44.1kHz 16bit). Many sound formats exist (and have gone), but those parameters were a de-facto standard, as the primary source of music was (ordinary) CD disks. Nowadays it is quite possible to buy high-resolution music (with higher frequency and/or bitrate) rendered for online download. I do not want to discuss the real necessity of that here. We have all been listening to MP3/128kBit for years and are still alive. But now we can get better quality. For instance, you could buy a plethora of dark ambient soundscapes from Cryo Chamber: https://cryochamber.bandcamp.com.
 
As the download finishes, you will find out that those FLACs are 44.1kHz or 96kHz (!) but 24bit. Alas, the support of high resolution music is still far from perfect. As a result of that, for some devices and/or applications you would think about re-coding to CD quality. Note: I am going to keep the lossless compression format (FLAC). Of course, you can Google for conversion applications. Some of them are paid, some just malware… Here is an absolutely free method of doing that if you can manage the command line in MS Windows.

There is an extremely powerful free sound processing utility named SoX: http://sox.sourceforge.net. It is command-line only, and for our task the command is:

sox -S “input.flac” -b 16 -r 44.1k “output.flac” dither

I suppose the parameters are quite obvious:

  • -S <input file name>
  • -b <bitrate>
  • -r <resolution (frequency)>
  • dither — it is necessary since we are going to decrease depth (24 bit -> 16 bit).

I do not like the idea of converting each file individually :) I would like to convert all files within a particular folder and all subfolders. To do that, let’s use “for” command of a command line:

for /r %I in (*.flac) do <command to execute>

Assemble all together:
1. Download SoX and extract it into any folder that is included into %PATH% variable. If you do not know that is it, just extract to “\Windows” folder.

2. Create batch file “downsample.bat” in the same folder. Copy there the following command and save

for /r %%I in (*.flac) do sox.exe -S “%%~fI” -b 16 -r 44.1k “%%~pnI [16bit].flac” dither

3. Open a folder with music files to be converted and run the batch-file by typing in command line “downsample”.

That’s it!

As a result of that you’ll have a number of CD-quality files with “<something> [16bit].flac” names. Copy & enjoy!

Like what you read? Give Sergey Lovchev a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.