|Proposal pages help us get from feature requests into actual plans. This is related to both Real Time Adjustment and Threading and Acceleration.|
Proposal pages are used on an ongoing basis by the Audacity development team and are open to edits from visitors to the wiki. They are a good way to get community feedback on a proposal.
- Note: Proposals for Google Summer of Code projects are significantly different in structure, are submitted via Google's web app and may or may not have a corresponding proposal page.
Proposed Feature: Page Tabled Memory and Event Layout
To facilitate the environment that would be conducive to both multi-threading and non-destructive processing.
- Andrew Hallendorff
In the abstract this implementation can be thought of as 3 streams of data/instructions.
- Base Indexes - 32bit integers that store both data and instructions.
- Data Blocks - Indexed chunks of data of a fixed size. (most likely 512 (32 bit samples) or 1024 (16 bit samples)
- Events (instructions) - Indexed list of variable size and scope of actors.
Within these page table entries the data could be replaced with negative numbers to index a certain event. The even would preserve the removed page entry while linking to a operation to be preformed upon the stream. The general concept would be a memory model where samples could be directly accessed via a page table rather than a linked list.