GStreamer multimedia framework
Find a file
Henry Wilkes 269c2d1dc0 timeline: re-handle clip children track selection
The way a clip's track elements are added to tracks was re-handled. This
doesn't affect the normal usage of a simple audio-video timeline, where
the tracks are added before any clips, but usage for multi-track
timelines has improved. The main changes are:

+ We can now handle a track being selected for more than one track,
  including a full copy of their children properties and bindings.
  (Previously broken.)
+ When a clip is split, we copy the new elements directly into the same
  track, avoiding select-tracks-for-object.
+ When a clip is grouped or ungrouped, we avoid moving the elements to
  or from tracks.
+ Added API to allow users to copy the core elements of a clip directly
  into a track, complementing select-tracks-for-object.
+ Enforced the rule that a clip can only contain one core child in a
  track, and all the non-core children must be added to tracks that
  already contains a core child. This extends the previous condition
  that two sources from the same clip should not be added to the same
  track.
+ Made ges_track_add_element check that the newly added track element
  does not break the configuration rules of the timeline.
+ When adding a track to a timeline, we only use
  select-tracks-for-object to check whether track elements should be
  added to the new track, not existing ones.
+ When removing a track from a timeline, we empty it of all the track
  elements that are controlled by a clip. Thus, we ensure that a clip
  only contains elements that are in the tracks of the same timeline, or
  no track. Similarly, when removing a clip from a timeline.
+ We can now avoid unsupported timeline configurations when a layer is
  added to a timeline, and already contains clips.
+ We can now avoid unsupported timeline configurations when a track is
  added to a timeline, and the timeline already contains clips.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/84
2020-04-08 14:35:28 +01:00
bindings/python python: Cleanup overrides using monkey patching 2020-03-03 21:34:23 +00:00
data/completions completion: Fix previous commit 2017-04-04 16:27:33 -04:00
docs doc: Update cache and fix usage of <ulink> 2019-08-23 16:56:47 +00:00
examples add assets to layer and adjust position and duration (closes #45) 2020-03-03 12:27:33 +00:00
ges timeline: re-handle clip children track selection 2020-04-08 14:35:28 +01:00
hooks meson: Setup pre commit hook and fix getpluginsdir for standalone case 2016-09-30 13:35:01 -03:00
pkgconfig Remove autotools build system 2019-10-13 13:54:19 +01:00
plugins ges: Use #pragma once everywhere 2020-03-19 21:09:18 +00:00
tests timeline: re-handle clip children track selection 2020-04-08 14:35:28 +01:00
tools launch: Add a way to disable validate at runtime 2020-03-25 11:26:29 -03:00
.arcconfig ges: Set restriction caps in the audio source caps filter 2015-11-05 23:49:05 +01:00
.gitignore Remove autotools build system 2019-10-13 13:54:19 +01:00
.gitlab-ci.yml Add Gitlab CI configuration 2018-11-12 12:57:17 +02:00
AUTHORS AUTHORS/README: cleanup 2010-11-11 17:45:20 +01:00
ChangeLog Release 1.16.0 2019-04-19 00:35:58 +01:00
COPYING Fix FSF address 2012-11-04 00:25:20 +00:00
COPYING.LIB Fix FSF address 2012-11-04 00:25:20 +00:00
gst-editing-services.doap Release 1.16.0 2019-04-19 00:35:58 +01:00
meson.build Fix build with Python 3.8 by also checking for python-3.X-embed.pc 2020-03-11 13:42:50 +02:00
meson_options.txt meson: Add an option to enable/disable validate integration 2020-02-26 13:39:29 -03:00
NEWS Release 1.16.0 2019-04-19 00:35:58 +01:00
README Remove obsolete dependency 2016-09-13 16:45:25 -03:00
RELEASE Back to development 2019-04-19 11:00:07 +01:00

GStreamer Editing Services
--------------------------

 This is a high-level library for facilitating the creation of audio/video
non-linear editors.

License:
--------

  This package and its contents are licensend under the GNU Lesser General
Public License (LGPL).

Dependencies:
-------------

 * GStreamer core
 * gst-plugins-base