Add option to reduce number of sound path calculations
Goal: optimization. Reduce the number of path calculations necessary to render an auralization by only updating the scene every x blocks.
Introduce argument -bpu --blocks-per-update
(stored and passed internally as block_skip
).
- determines how many audio blocks are processed between scene updates (changes in source/receiver position).
- must be integer value (min 1 - update every block; max # of blocks in output signal - never update position) -- not sure how to assert.
- default value 1.
- should not affect visual rendering fps.
- output audio should be checked for avoidance of artifacts (noticeable differences)
! audio and visual rendering loop in main_cli.py
changed
- no more dependency on number of blocks, rather number of scene updates
! Had to make make changes in run_auralization.m
: rendering loop now consists of two nested loops
- parent loop updates scene
- child loop processes x blocks for each parent scene update