Implementing multi-threading support for sonifyCPP
SonifyCPP is my software written in C++ that "sonifies" or creates sound from any input image. I have explained in my last blog post how exactly this is done. The input image pixels have to be read one by one, and in my approach I generate sine waves for each of these pixels. Clearly, as the image dimensions increase, the computational cost increases. One simple way of increasing the speed of sonification is to just naively downscale the input image to a dimension that is "sonifiable" (something like 200x200). But this approach is just....meh. So I thought, instead of sending the pixels one by one to the sine wave generator, how about I send it in columns. And that's what I did. This, sadly, did not result in considerable speed up. So, the only other way was to implement multi-threading. Multi Threading For those who have been living under a cave, modern computers have processors which have more than one working "brain" or cores. (Note: I'll use p...