IPB

Welcome Guest ( Log In | Register )

caudec: a multiprocess audio converter for Linux and OS X, Leverages multi-core CPUs with lots of RAM
skamp
post Feb 15 2012, 19:40
Post #1





Group: Developer
Posts: 1410
Joined: 4-May 04
From: France
Member No.: 13875



caudec is a command-line utility for GNU/Linux and OS X that transcodes (converts) audio files from one format (codec) to another. It leverages multi-core CPUs with lots of RAM by using a ramdisk, and running multiple processes concurrently (one per file and per codec). It is Free Software, licensed under the GNU General Public License (version 3). The APEv2 tagger that's bundled with versions 1.7.1 and later, is licensed under the Mozilla Public License, version 2.

  • Supported input codecs: WAV, AIFF, CAF, FLAC, WavPack, Monkey's Audio, TAK, Apple Lossless.
  • Supported output codecs: WAV, AIFF, CAF, FLAC, Flake, WavPack, Monkey's Audio, TAK, Apple Lossless, lossyWAV, LAME, Ogg Vorbis, Nero AAC, qaac, Musepack, Opus.
  • Support for high quality resampling and downmixing / upmixing to stereo, with SoX.
  • Optimized I/O: input files are copied onto a tmpfs mount sequentially, so as to get the best performance out of the underlying medium (e.g. a hard drive). Transcoding however is done concurrently. Example: file 1 gets copied. When that's done, transcoding of file 1 starts. Meanwhile, file 2 gets copied, etc… Very little time is lost reading the files.
  • Transcoding to several different codecs at once is possible. In that case, decoding of input files is done only once.
  • Multiple instances of caudec can be run concurrently while sharing ressources.
  • Metadata is preserved (as much as possible) from one codec to another.
  • Multiprocess Replaygain scanner (except for Opus and Musepack).
  • Uses existing, popular command line encoders/decoders.


Tested under Arch Linux and OS X. Download here. Please use the bug tracker to report any bugs. Feedback is most welcome!

This post has been edited by skamp: Oct 21 2013, 18:31


--------------------
See my profile for measurements, tools and recommendations.
Go to the top of the page
+Quote Post
 
Start new topic
Replies
skamp
post Jun 2 2012, 11:22
Post #2





Group: Developer
Posts: 1410
Joined: 4-May 04
From: France
Member No.: 13875



I dug up an old version (before 1.0) that didn't copy input files to a tmpfs. Here are the results when transcoding FLACs from my hard drive to Ogg Vorbis, with 8 processes, on a 2 CD album with 37 files (same external encoders):
  • old version: 71.41 seconds (15.0 MB/s) (124.3x)
  • latest caudec: 58.71 seconds (18.2 MB/s) (151.1x)

That's roughly a 21% speed increase. Maybe not quite as dramatic as one could hope, but substantial nonetheless.

Obviously I dropped filesystem caches before each run.

This post has been edited by skamp: Jun 2 2012, 11:29


--------------------
See my profile for measurements, tools and recommendations.
Go to the top of the page
+Quote Post

Posts in this topic
- skamp   caudec: a multiprocess audio converter for Linux and OS X   Feb 15 2012, 19:40
- - skamp   I just released version 1.1.0, which adds support ...   Feb 15 2012, 22:45
- - Dario   Excuse my ignorance, but does TAK actually work un...   Feb 16 2012, 00:34
- - skamp   The encoder/decoder (Takc.exe) works with wine. Li...   Feb 16 2012, 00:38
- - skamp   It just occurred to me that I left out one of caud...   Feb 17 2012, 08:21
- - skamp   I just released version 1.3.0 of caudec, that adds...   Feb 23 2012, 01:35
- - Takla   Hi skamp. I tried your caudec script and it is de...   Jun 2 2012, 00:31
- - Canar   While encoding is a parallel task, reading from a ...   Jun 2 2012, 00:40
- - Takla   I can see the logic, but disk reads are very high ...   Jun 2 2012, 08:08
|- - skamp   QUOTE (Takla @ Jun 2 2012, 09:08) I'd...   Jun 2 2012, 12:41
- - skamp   What Canar said. Hard drives don't like concur...   Jun 2 2012, 10:49
- - lvqcl   somewhat related: http://www.hydrogenaudio.org/for...   Jun 2 2012, 10:57
- - skamp   I dug up an old version (before 1.0) that didn...   Jun 2 2012, 11:22
|- - skamp   QUOTE (skamp @ Jun 2 2012, 12:22) That...   Jun 4 2012, 11:48
- - Takla   Thanks for the info. If I ever get an i7 I'll...   Jun 2 2012, 11:48
- - skamp   I'm guessing your hard drive is less of a bott...   Jun 2 2012, 12:06
- - Takla   I got my Core 2 Duo 1.6 GHz running 64-bit Debian ...   Jun 2 2012, 12:08
- - Takla   I saw the info on wine and win binaries in your do...   Jun 2 2012, 13:20
- - Takla   btw I booted my XP install to see what foobar2000 ...   Jun 4 2012, 00:04
- - punkrockdude   I am glad more Linux stuff is being done since I u...   Jun 4 2012, 20:14
- - skamp   I was curious, so I implemented a switch for disab...   Jun 5 2012, 12:49
- - skamp   I released version 1.4.0, with many changes (prett...   Jun 27 2012, 09:11
- - skamp   Latest version (1.4.3) brings support for Opus and...   Jul 10 2012, 12:22
- - Manlord   Excelent, thank you skamp. Going to test it on Deb...   Jul 10 2012, 22:08
- - skamp   I released caudec 1.5.0. Changes: Replaygain scan...   Jul 30 2012, 11:16
- - skamp   caudec 1.6.0 was released two weeks ago, with many...   Mar 17 2013, 11:52
- - skamp   I just released version 1.6.3 (see the changelog)....   Apr 16 2013, 18:52
- - edwardar   Thanks for this. I'm using it on my Shuttle X...   Apr 19 2013, 21:28
- - skamp   Yeah, I've used caudec on my netbook a lot, to...   Apr 20 2013, 16:02
- - skamp   Version 1.6.4 has a pretty cool feature for dealin...   May 1 2013, 11:10
- - skamp   Version 1.7.0 is out, with the longest changelog t...   Jun 17 2013, 11:13
- - BearcatSandor   Thanks Scamp, that's just awesome and useful...   Jun 18 2013, 01:46
- - skamp   That's always nice to hear Edit: you shouldn...   Jun 18 2013, 09:07
- - BearcatSandor   And it just gets better and better! Thank you...   Jun 18 2013, 09:51
- - Ferongr   http://caudec.outpost.fr/ looks down at the moment...   Aug 28 2013, 21:41
- - skamp   It went back up about half an hour later, after a ...   Aug 29 2013, 07:42
- - skamp   Server problems seem to be fixed. I released caude...   Sep 3 2013, 11:48
- - skamp   caudec 1.7.2 is out, with support for the recently...   Oct 22 2013, 08:33


Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 23rd July 2014 - 20:45