Hi, this is a post for my GSoC 2022 Project weekly report. If you have any feedback, please comment on the feedback thread. Any feedback is welcomed!
Closing this thread to limit this to the weekly reports. @xsmingerfan Feel free to open a second thread for feedback if you like.
Weekly Report:
I am busy with my final now, for I can’t do much work these days.
What I have done:
Read the source code of VSE
-
BKE_sound_read_waveform
ofsound.c
-
AUD_readSound
ofAUD_special.cpp
-
draw_seq_waveform_overlay
ofsequencer_draw.c
What to do next week:
- Learn more about factory method and check whether
ChannelMapper
is related to a factory method - Read the source code of
draw_seq_waveform_overlay
to understand the drawing algorithm
For more details, please see feedback thread
Weekly Report(June 20 - June 26):
I am so busy with my study this week that I have no time to implement my plan. I will certainly restart my job next week.
Weekly Report:
I read the source code of audaspace, BLI_thread and waveform drawing this week and implemented a demo in my local test branch. Though my demo has many bugs, it improves the speed of waveform drawing by 22%!
The mainly work I have done in the demo is parallelizing the loading. VSE used to load waveform one by one, that is, it will not load other sound until the current one have been loaded. In my demo, every sound has individual load thread, it will make full use of disk I/O and imporve the speed of waveform drawing.
This video may not be very clear as the original video is quite large so I can’t upload it.