Right now there is a boolean project.timed_asset_priority to determine if timed assets take precedence over simultaneously available geo-assets, but this is too simple to handle the variation I need.
If we move this to the track level, we can have some tracks behave differently from other tracks which will allow for much more nuanced control of the experience.
Additionally, this field needs to be an enum not a boolean because there are actually four states to manage, not just two.
highest timed assets are prioritized above geo-assets on this track
normal timed assets and concurrently available geo-assets are given the same priority resulting in a randomized mix of the two
lowest timed assets will only play if no geo-assets are currently available
discard this track plays no timed assets
Right now there is a boolean
project.timed_asset_priorityto determine if timed assets take precedence over simultaneously available geo-assets, but this is too simple to handle the variation I need.If we move this to the track level, we can have some tracks behave differently from other tracks which will allow for much more nuanced control of the experience.
Additionally, this field needs to be an
enumnot abooleanbecause there are actually four states to manage, not just two.highesttimed assets are prioritized above geo-assets on this tracknormaltimed assets and concurrently available geo-assets are given the same priority resulting in a randomized mix of the twolowesttimed assets will only play if no geo-assets are currently availablediscardthis track plays no timed assets