Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

start_frame_in_parent mechanism should instead use order index pattern. #12

Open
jacobmartinez3d opened this issue Nov 6, 2020 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@jacobmartinez3d
Copy link
Member

magla/magla/core/shot.py

Lines 87 to 95 in 04f9848

def start_frame_in_parent(self):
"""Retrieve start_frame_in_parent from data.
Returns
-------
int
Frame number in the timeline that this shot populates inserts itself at
"""
return self.data.start_frame_in_parent or 0

What needs to change

Currently, the implementation for a persistent project timeline edit is to store each shot's start frame in its respective opentimelineio track. In this way, the edit can be re-assembled on the fly. This needs to instead use a more abstract arbitrary ordering system.

Reasoning

One of the primary goals of magla timelines is to be able to dynamically create them based on custom criteria. The problem with current implementation is that shot start times are way too hard-coded and locked in and cannot flexibly react to new shot insertions or changes in FPS settings.

Example usage of proposed change

Calling the timeline build method with every other shot excluded, should result in a timeline with no gaps where the removed shots were. Additionally, more advanced insertions and removes can take place while the relative ordering of the project's root edit is preserved.

@jacobmartinez3d jacobmartinez3d self-assigned this Nov 6, 2020
@jacobmartinez3d jacobmartinez3d added the enhancement New feature or request label Apr 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant