rembo10/headphones — pull request #1498 by basilfx (2014-03-31 19:30:34+00:00)
Title: Support for multi-core re-encoding

While this isn't a big change, it just makes use of the other CPU cores for re-encoding files. I've tested it for some time and found it very useful when downloading a lot of new albums.

If multi-core is disable in the settings, it will process files the old way. When enabled, it will spawn multiple processes, which in turn start the individual encoders. The solution is based around Python's `multiprocessing` module.

Little comparison:

20 FLAC files, FFMPEG, Core i7 MacBook with 8 threads:
* With multi-core: 37 seconds
* Without multi-core: 120 seconds