[SOLVED] Using multiple threads to speed up conversions

Suggestions, new features, etc.
Post Reply
Timecode
Posts: 12
Joined: Wed Nov 04, 2020 1:57 pm

[SOLVED] Using multiple threads to speed up conversions

Post by Timecode »

When converting lots of files (specially if we need more than one output format), it can be useful to split the task to more than one thread, so that multi core processors can be used efficiently.

To check that i tried to convert about 200 files from .wav 48 KHz stereo to mono Alaw 8 KHz format, and only one thread was used i think. Doing it with FFMPEG was a faster because it was using a settable number of threads (Multi-File setting setting available in FFMPEG Batch).

It's probably not possible to use multi-threading if the conversion utility are not designed for this (sox cannot do it if i'm right), but what is probably doable is to run multiple instances of them, for example one for each output file format, and /or split the input file list so that it can be directed to more than one instance of the converter utility.
admin
Site Admin
Posts: 714
Joined: Wed Nov 17, 2010 12:56 pm

Re: Using multiple threads to speed up conversions

Post by admin »

There's no such limit and files should be processed using all possible Cores. There's a setting, where you can set the number of threads to use https://imgur.com/8jkYnrX. If it still doesn't work, please send the Diagnostic information (it's under About button) to xrecode@gmail.com.
Timecode
Posts: 12
Joined: Wed Nov 04, 2020 1:57 pm

[SOLVED] Re: Using multiple threads to speed up conversions

Post by Timecode »

Sorry this is an error on my side. Speed seems approximately the same as using FFMPEG with multi file encoding.

This was on a Core 2 duo PC with Windows 7 x32. 47 secondes to convert 166 wav files to alaw 8 KHz format.

I had around 70 % processor load, that's why i thought multi threading was not working. I'm used to see 100% load with multi threaded video converter apps.

Then i tried on a more recent PC, with a core I7 - 6 cores processor, hyperthreading enabled (12 virtual cores) Windows 10 x64.

On the same file batch, same conversion to alaw 8 Khz, i got 36 secondes to finish the work, and around 15 % processor load. This is far to what i'm used to see for video conversion where 100% processor load is common.

On this powerful machine, if using an optimized conversion engine,the conversion could take only a few seconds.

Not a big deal. But there is probably room for improvements. Are there any output formats fully optimized for multi-threading ?
Post Reply