def clone_clip_and_filters(self, clip, clone_clip): """ Clones clip range properties and filters that are needed for clip to be used in another clip's place, but not id, master_clip and selection properties that are part of original clips state in sequence. """ clone_clip.clip_in = clip.clip_in clone_clip.clip_out = clip.clip_out clone_clip.filters = [] for f in clip.filters: clone_filter = mltfilters.clone_filter_object(f, self.profile) clone_clip.attach(clone_filter.mlt_filter) clone_clip.filters.append(clone_filter)
def _ladspa_slider_update(editable_property, adjustment): # ...or segphault PLAYER().stop_playback() # Change property value editable_property.adjustment_value_changed(adjustment) # Update output by cloning and replacing filter ladspa_filter = editable_property._get_filter_object() filter_clone = mltfilters.clone_filter_object(ladspa_filter, PROJECT().profile) clip = editable_property.track.clips[editable_property.clip_index] mltfilters.detach_all_filters(clip) clip.filters.pop(editable_property.filter_index) clip.filters.insert(editable_property.filter_index, filter_clone) mltfilters.attach_all_filters(clip)
def clone_filters(self, clip): clone_filters = [] for f in clip.filters: clone_filter = mltfilters.clone_filter_object(f, self.profile) clone_filters.append(clone_filter) return clone_filters
def copy_filters(self, clip, clone_clip): for f in clip.filters: clone_filter = mltfilters.clone_filter_object(f, self.profile) clone_clip.attach(clone_filter.mlt_filter) clone_clip.filters.append(clone_filter)