GSoC 2022: Waveform Drawing Improvements Weekly Report

Weekly Report (7/11 - 7/17):
I try to develop the feature mentioned last week, but haven’t finished yet. I have met some technical problems.
To develop it, BKE_sound_read_waveform should be changed. AUD_readSound is the core function of BKE_sound_read_waveform which reads the actual waveform data. In my plan, I will use two threads to call this function and each of it will read a part of sound and write waveform data to sound->waveform. This requires AUD_readSound seekable so that we can read diffrent part of sound. But sadly it isn’t. So, I add a new function AUD_readSoundSeekable in AUD_Special.c. It has a parameter that can determine where to start to read. It mainly rely on Reader’s seek(seek_pos) funtion. Seek function should take effect but it seems that it doesn’t seek the audio. I have no idea about it now.
Besides, for the seek function will reduce the audio reading speed, I am not sure wheather it will boost the load speed.
I will discuss these two problems with my mentor next week. And the feature development will be certainly finished next week unless it is not “cost-effective”.

3 Likes