Gear / Technical Help => Post-Processing, Computer / Streaming / Internet Devices & Related Activity => Topic started by: cjc1103 on August 12, 2018, 07:05:53 PM

Title: Tool to automate audio file compression
Post by: cjc1103 on August 12, 2018, 07:05:53 PM
I was spending a lot of time compressing concerts to both a lossy (mp3, aac primarily) format, and lossless (FLAC) format for archiving raw files and tracked files, creating md5 checksums, creating ffp checksums for FLACs, so I thought I could automate this. I created a Python script to call various audio utilities (LAME, FAAC, OGG, FLAC, et.al.) to do all these functions. The project mushroomed, in part from "feature creep", and I rewrote it in C# (sorry, no Mac or Linux version because most of the audio utilities are Windows based). The program is called (for lack of a better name) Audio Archive and Compression (AARCO). The program is command line based, no fancy GUI, mainly because I'm using command line audio tools. A GUI could be bolted on later.

AARCO is capable of compressing wav files in 16 or 24 bit, 44 through 96Khz, to mp3, aac, ogg, opus, and flac. Other compression schemes could be added, but these are the most widely used. After creating FLACs of all the raw and tracked wav files, the program can delete all the original wav files, and I save the whole directory structure on my NAS. I can then upload/share only the compressed files if I choose, or transfer them to another device. This way the original raw and tracked files are archived, and I can listen to the compressed version on my phone or in my car.

The compressed files need to be in a separate directory. After experimenting with various directory structures for the raw files and compressed files I came up with this:
  Root Directory
    16-44   tracked 16-44 files wav format
    24-48   tracked 24-48 files wav format
    Audio   raw audio files in wav format
    <root dir>.16-44.mp3f  compressed 16-44 files in mp3 format
    <root dir>.24-48.oggf  compressed 24-48 files in ogg format
    <root dir>.24-48.flacf   compressed 24-48 files in flac format

I uploaded AARCO to SourceForge in case anyone would like to try it out: https://sourceforge.net/projects/aarco/
I would appreciate some of you kind folks trying this out and telling me what you think. There's a Win64 binary, zipped audio tools, and readme file on SourceForge. To install it copy and unzip all files in a directory, and add that directory to the Windows path. If you are ambitious you could install Git and checkout the source code and add features to it.


Title: Re: Tool to automate audio file compression
Post by: cjc1103 on July 12, 2019, 12:38:25 AM
I have made a lot of changes and bug fixes to this project, and the name wasn't very catchy, so I renamed it "Audio Archive Toolbox". I uploaded the source code (C#), all audio utilities and codecs to Sourceforge, so you all can try it out, make suggestions.
Download the program aatb.exe (Windows 10 x64 only), and try it out. If you are a programmer, you can also download the entire C# source code, and load into Visual Studio, to see how I did it, and possibly make modifications. Leave me a message if you find this project useful.