I'm trying to create a spectrogram out of audio data using QwtRasterData and QwtPlotSpectrogram. This works, but it is too slow. I played a little with rasterHint(), but if I make it fast enough, the result looks horribly grainy.
My spectrogram is about 1000x400px in size and the value() method uses bilinear interpolation.
I think the problem must be in the many calls to value() - all my other operations don't take this long, but it still takes ages even when I don't do much in value(). I'm doing all of this in Python and my data is stored in dictionaries (but I don't think that makes a difference since it's still slow when I'm not even using them).
Any ideas on improving the speed? Alternatively, could I render the spectrogram in a separate thread?