fix: prevent a still playing part from disappearing from the timeline#1700
fix: prevent a still playing part from disappearing from the timeline#1700ianshade wants to merge 1 commit intoSofie-Automation:mainfrom
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
f41537d to
b544d85
Compare
… timeline when more than two parts overlap keeps track of more than one previous part, so that they are included in the timeline and ab-logic, until stopped playback; timing properties are used for pruning, but an arbitrary limit of 10 is in place, to avoid too much data piling up if blueprints did something very wrong
b544d85 to
739abe8
Compare
About the Contributor
This pull request is posted on behalf of TV 2 Norge.
Type of Contribution
This is a:
Bug fix
Current Behavior
PartInstance expected to be kept alive using e.g. previousPartKeepaliveDuration, sometimes would prematurely disappear from the timeline, if two following PartInstances started their playback.
Previous partInstance(s) were not properly considered when generating lookaheads. When a take occurred, and a partinstance became previous while its timed piece was yet to start, there would be no timed lookahead generated from that piece.
There are times when e.g. VT playback should continue into the taken part, so that a transition can safely execute till completion. Due to our transitions being separate Parts, we end up in a scenario when at a certain point three parts need to be active. Unfortunately Sofie supports only two actively playing Parts at any given time (only previous and current + next for lookahads, and briefly during autoNext, which is not enough). In our case, during a transition, the to Part quickly becomes current, whereas the transition Part becomes previous, that means the from Part no longer is considered for timeline generation, yet it is needed for its VB contents to keep playing until the transition finishes. Currently this results in either black frames during a transition, or, in conjunction with preroll applied to some pieces, holes on the PGM layer mapping.
New Behavior
Keeps track of more than one previous part, so that they are included in the timeline and ab-logic, until stopped playback;
timing properties are used for pruning, but an arbitrary limit of 10 is in place, to avoid too much data piling up if blueprints did something very wrong
Testing
Affected areas
Time Frame
Other Information
Status