-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
draft of section group feature #3990
base: main
Are you sure you want to change the base?
Conversation
This is called implicitly by python when methods are being bound. | ||
""" | ||
return self # HELPME use binding | ||
return self.bind(instance) |
Check warning
Code scanning / CodeQL
Unreachable code Warning
def group( | ||
func: Callable[P, T], | ||
**kwargs: Unpack[SectionGroupData], | ||
) -> SectionGroup[P, T]: ... |
Check notice
Code scanning / CodeQL
Statement has no effect Note
def group( | ||
func: None = None, | ||
**kwargs: Unpack[SectionGroupData], | ||
) -> Callable[[Callable[P, T]], SectionGroup[P, T]]: ... |
Check notice
Code scanning / CodeQL
Statement has no effect Note
@@ -50,6 +50,7 @@ | |||
from ..utils.family_ops import restructure_list_to_exclude_certain_family_members | |||
from ..utils.file_ops import open_media_file | |||
from ..utils.iterables import list_difference_update, list_update | |||
from .groups import SectionGroup |
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
Overview:
Adds a group decorator to Scene that are basically "sections group".
Motivation and Explanation: Why and how do your changes improve the library?
For long videos you may want to have 2 levels of granularity for skipping/animation parts of the videos. Sections are the basic building block like a few animations and they are rendered in the same way as before.
You may add groups that behave like "chapters". They are a sequence of sections (you can still put sections inside groups) and the skipping/animation of section groups takes precedence over the individual section skipping/animation.
To make the distinction between sections and section groups the experimental API for sections is used. This way creating section is unchanged and we can gain the flexibility of the experimental API. Actually most of the code for the definition of a
SectionGroup
is taken from the experimentalSection
object.Links to added or changed documentation pages
The documentation must be done but the API is not stabilized. I'll wait for the namming to be correct before documenting.
It should go in the section page I think.
Additional comments
There is a feature in the SectionGroup object to make it become a full member of the Scene instance that I couldn't make work.
For now section groups must be called like
group(self)
.Reviewer Checklist