Commit graph

217 commits

Author SHA1 Message Date
Brandon Lewis
bdee21579b add GESTrackBackgroundSource to build system 2010-07-09 13:21:07 +02:00
Brandon Lewis
77a16602c6 add track background source to header 2010-07-09 13:21:07 +02:00
Brandon Lewis
22707643b0 add track background source to ges-types.h 2010-07-09 13:21:06 +02:00
Brandon Lewis
73ca491f0e check in GESTrackBackgroundSource 2010-07-09 13:21:06 +02:00
Brandon Lewis
323cc10942 add GESTimelineBackgroundSource to build system 2010-07-09 13:21:06 +02:00
Brandon Lewis
4ab734edf0 add timeline background source to header 2010-07-09 13:21:06 +02:00
Brandon Lewis
33a9610cd0 check in ges-timeline-background-source.{c,h} 2010-07-09 13:21:06 +02:00
Edward Hervey
097647e97a GESTimelinePipeline: Fix leaked caps 2010-06-28 17:08:08 +02:00
Edward Hervey
be8cbdb4a1 GESTimelinePipeline: unref all pads 2010-06-21 11:54:01 +02:00
Edward Hervey
575c4865a0 GESTimelinePipeline: Make a copy of the provided GstEncodingProfile 2010-06-21 11:53:30 +02:00
Edward Hervey
6fe60cb694 GESTimelinePipeline: Properly release playsink and encodebin 2010-06-21 11:52:49 +02:00
Edward Hervey
87087b013a GESTimelinePipeline: finalize => dispose
We want to release our objects before the parent GstBin class does so.
2010-06-21 11:52:01 +02:00
Edward Hervey
45febdebe1 GESTrackTransition: Release all pads.
Whether calling get_request_pad or get_static_pad we always end up
with an extra reference.

Also keep a reference on videomixer so it doesn't go away before we
call _release_request_pad() on it with the proper pads to release.
2010-06-14 19:40:50 +02:00
Brandon Lewis
03b299ecdb release the request pads in dispose 2010-06-10 16:25:34 +02:00
Brandon Lewis
19c8bbfd3f don't keep an extra reference to vsmpte 2010-06-10 16:14:20 +02:00
Brandon Lewis
462cd2b41f gstl_recalculate() won't set priorities to -1 2010-06-09 18:56:55 +02:00
Brandon Lewis
73814e225d ges/ges-track-transition.h: add missing function prototype 2010-06-09 17:13:13 +02:00
Brandon Lewis
edecee8def ges/ges-utils.h: C90 fixes 2010-06-09 17:13:07 +02:00
Brandon Lewis
3e34e423a6 ges/ges-track.h: C90 fixes 2010-06-09 17:13:07 +02:00
Brandon Lewis
9b7c70c6c1 ges/ges-track.c: C90 fixes 2010-06-09 17:13:07 +02:00
Brandon Lewis
71df04a2f9 ges/ges-track-transition.c: C90 fixes 2010-06-09 16:34:14 +02:00
Brandon Lewis
8db7c7a48b ges/ges-track-object.c: C90 fixes 2010-06-09 16:31:11 +02:00
Brandon Lewis
7a64a8c690 ges/ges-timeline-transition.c: C90 fixes 2010-06-09 16:30:48 +02:00
Brandon Lewis
250d0be3c4 ges/ges-timeline-object.c: C90 fixes 2010-06-09 16:30:16 +02:00
Brandon Lewis
1ec9238358 ges/ges-timeline-layer.c: C90 fixes 2010-06-09 16:29:26 +02:00
Brandon Lewis
06a8cc32a0 ges/ges-simple-timeline-layer.c: C90 fixes 2010-06-09 16:27:43 +02:00
Edward Hervey
ea55ceb747 GESTrackTransition: Fix debug statement 2010-06-09 13:53:07 +02:00
Edward Hervey
9eedf06b7b GESTimeline: Remove all tracks/layers when being disposed 2010-06-09 13:52:35 +02:00
Edward Hervey
b6277bd8bb GESTimelineLayer: Release all layer/tracks when being disposed 2010-06-09 13:52:08 +02:00
Brandon Lewis
f0fc253aa8 ges/ges-track-transition.c: set referece to vsmpte to NULL after freeing 2010-06-09 11:28:46 +02:00
Brandon Lewis
c7273608c7 ges/ges-track-transition.c: was freeing same GstController twice in _dispose() 2010-06-09 11:28:46 +02:00
Edward Hervey
5e2660b2c2 GESTrackTransition: Unref the ControlSource in dispose 2010-06-09 11:28:46 +02:00
Edward Hervey
4188c6fa97 ges: Initialize GstController in ges_init 2010-06-09 11:28:46 +02:00
Brandon Lewis
9d8ce82b61 ges/ges-simple-timeline-layer.c: print a warning when transitions overlap 2010-06-09 11:28:46 +02:00
Brandon Lewis
0608930b19 ges/ges-timeline-transition.c: can't set enums by nick 2010-06-09 11:28:46 +02:00
Brandon Lewis
221df1b880 ges/ges-timeline-transition.c: initialize vtype enum type from static list of
GEnumValues
2010-06-09 11:28:46 +02:00
Brandon Lewis
67c33dc65b ges/ges-track-transition.c: adjust to the change in VTYPE_CROSSFADE 2010-06-09 11:28:10 +02:00
Brandon Lewis
adeef34c77 ges/ges-timeline-transition.{c,h}: value for VTYPE_CROSSFADE changed to 512
and exported in ges-timeline-transition.h
2010-06-09 11:28:10 +02:00
Brandon Lewis
2adbd8e36c ges/ges-timeline-transition.c: implement vtype gobject property on
GESTimelineTransitions
2010-06-09 11:28:10 +02:00
Brandon Lewis
2f18595e6e ges/ges-track-transition.{c,h}: add ability to change smptealpha type 2010-06-09 11:28:10 +02:00
Brandon Lewis
7beb6a5e5e ges/ges-timeline-transition.{c,h}: api change, pass gint instead of GEnumValue
to new()
2010-06-09 11:28:10 +02:00
Brandon Lewis
22534176d8 ges/ges-timeline-transition.{c,h},tests/.../transition.c: type change of vtype
to gint from GEnumValue
2010-06-09 11:28:10 +02:00
Brandon Lewis
e69dcea71a ges/ges-timeline-transition.c: sync with API change in previous commit 2010-06-09 11:28:10 +02:00
Brandon Lewis
3caed9bff4 ges/ges-track-transition.{c,h}: api change: pass gint instead of GEnumValue 2010-06-09 11:28:10 +02:00
Brandon Lewis
b3ec2bad19 ges/ges-track-transition.{c,h}, tests/check/ges/transition.c: change vtype
from GEnumValue to simple gint;
2010-06-09 11:28:10 +02:00
Brandon Lewis
d4c60b059d ges/ges-track-filesource.h: fix typo in documentation commments 2010-06-09 11:28:09 +02:00
Brandon Lewis
bc291a986d ges/ges-track-filesource.h: fix incorrect definition of GESTrackFileSource
structs.
2010-06-09 11:28:09 +02:00
Brandon Lewis
93534c0500 Add missing documentation 2010-06-09 11:28:09 +02:00
Brandon Lewis
812713cf2f ges/ges-track-transition.c: implement audio crossfades 2010-06-09 11:28:09 +02:00
Brandon Lewis
79ebc389e0 ges/ges-track-transition.{c,h}: add fields for audio interpolation to obj 2010-06-09 11:28:09 +02:00
Brandon Lewis
542e8afb75 fix bugs 2010-06-09 11:28:09 +02:00
Brandon Lewis
07693f56f8 ges/ges-track-transition.{c,h}: rename some members of ges-track-transition
struct to separate between audio and video objects.
2010-06-09 11:28:09 +02:00
Brandon Lewis
280aef4f6e ges/ges-track-transition.c: factor out code which produces video bin into a
seprate routine
2010-06-09 11:28:09 +02:00
Brandon Lewis
962a1d17d7 ges/ges-track-transition.c: give gnloperations a unique name 2010-06-09 11:28:09 +02:00
Brandon Lewis
899f4f35c5 ges/ges-simple-timeline-layer.c: also error when transition duration exceeds
that of its neighbors
2010-06-09 11:28:09 +02:00
Brandon Lewis
ae34d99867 ges/ges-simple-timeline-layer.c: don't allow user to create timelines with
adjacent transitions
2010-06-09 11:28:09 +02:00
Brandon Lewis
e5ae1405c8 ges/ges-simple-timeline-layer.c: implement simple stair-step like priority
management scheme.
2010-06-09 11:28:08 +02:00
Brandon Lewis
ff4443a9c6 ges/ges-timeline-transition.{c,h}: add convenience routine for creating
transitions
docs/libs/ges-sections.txt: add routine to documentation
2010-06-09 11:28:08 +02:00
Brandon Lewis
1d3d367e75 ges/ges-track-transition.{c,h}: add support for other wipes with smptealpha 2010-06-09 11:28:08 +02:00
Brandon Lewis
48eeb8d913 ges/ges-timeline-transition.{c,h}: add a type field 2010-06-09 11:28:08 +02:00
Brandon Lewis
998ae5af20 ges-track-transition.c: set interpolation control points properly from
gnlobject properties
2010-06-09 11:28:07 +02:00
Brandon Lewis
28f1acba81 ges-track-transition.c: GstControlSource -> GstInterpolationControlSource 2010-06-09 11:28:07 +02:00
Brandon Lewis
5afc67f3e5 ges-track-transition.c: create gst-controller for transition 2010-06-09 11:28:07 +02:00
Brandon Lewis
6728e4dd8d ges-track-transition.c: add controller and control-source members 2010-06-09 11:28:07 +02:00
Brandon Lewis
e3549deec2 depend on GST_CONTROLLER 2010-06-09 11:28:07 +02:00
Brandon Lewis
c9a2f73579 hacking 2010-06-09 11:28:07 +02:00
Brandon Lewis
3cc23d98ea ges/ges-types.h: add typedefs for GESTrackTransition[Class] structs 2010-06-09 11:28:07 +02:00
Brandon Lewis
eeae501a0a ges-track-transition.h: fix typo 2010-06-09 11:28:07 +02:00
Brandon Lewis
b557a5e3bd ges/Makefile.am: dist ges-track-transition.c,h 2010-06-09 11:28:07 +02:00
Brandon Lewis
7918bbec14 skeletal implementation of GESTrackTransition 2010-06-09 11:28:06 +02:00
Brandon Lewis
f42d7179d8 check-in ges-track-transition.h 2010-06-09 11:28:06 +02:00
Edward Hervey
8193fe5b4c GESTimeline: Freeze state of Tracks when doing an async state change 2010-05-25 16:36:57 +02:00
Edward Hervey
3b8ea491d7 GES: Add a new utility file
API : ges_timeline_new_audio_video()
2010-05-25 16:35:27 +02:00
Edward Hervey
a17900813a GESTimelinePipeline: Only remove the playsink if it was used 2010-05-20 12:29:30 +02:00
Edward Hervey
ed86ff2f51 GESTimeline: Remove unused variable 2010-05-19 15:50:41 +02:00
Edward Hervey
1bb45a61a6 GESTimeline: Use GstDiscoverer for incomplete filesources
If a GESTimelineFileSource is added to a layer and:
* It doesn't have specified supported formats
* OR it doesn't have a specified maximum duration
* OR it doesn't have a specifed duration

Then we asynchronously send it to the GstDiscoverer.

If this happens, the state change of the timeline from READY to
PAUSED will happen asynchronously and be completed when everything
has been properly discovered.

Part 2 of GstDiscoverer integration
2010-05-19 12:36:11 +02:00
Edward Hervey
eb4b02f3ed GESTimelineFileSource: Add 'max-duration' and 'supported-formats' properties
* max-duration is the total length of the File.
* supported-formats is the various track types this filesource can produce
  trackobjects for. This should maybe be moved to parent classes in the
  future

Step 1 of GstDiscoverer integration
2010-05-19 12:24:44 +02:00
Edward Hervey
133e8ec94a GESTimelineObject: Properly set default duration
Set it in the instance_init to GST_SECOND, But let the subclasses override
it.
This allows subclasses to set a different default duration
2010-05-19 12:19:37 +02:00
Edward Hervey
2df711cd60 GESSimpleTimelineLayer: Recalculate positions when object duration change
This ensures that if someone changes the duration, the clips still remain
contiguous and in the proper order.
2010-05-19 12:14:34 +02:00
Edward Hervey
6753d176d7 configure: Depend on gstreamer-discoverer 2010-05-18 19:07:27 +02:00
Edward Hervey
14a6a5f31d GESTrack: Make GESTrackType a flag, and add GES_TRACK_TYPE_UNKNOWN
Also add a bit more documentation about it.
2010-05-18 17:43:28 +02:00
Edward Hervey
505030b1a7 GESTimelineObject: Document CreateTrackObjectFunc vmethod 2010-05-18 12:56:24 +02:00
Edward Hervey
fbc80b1955 GESTimelinePipeline: Fix 32bit runtime issues 2010-05-10 12:44:56 +02:00
Edward Hervey
e747ad4867 GESTimelinePipeline: Limit encodebin buffering to 1 buffer
We don't need to queue more than that since we only need thread decoupling
and the various streams going into encodebin are guaranteed to come
from different streaming threads (since they're separate gnlcomposition).
2010-05-07 13:37:33 +02:00
Edward Hervey
2b589d4d29 GESTimelinePipeline: Remove unused variable/label. 2010-04-27 11:45:15 +02:00
Edward Hervey
7aedc2bcfb GESTimelinePipeline: Cleanup properly when pads are removed 2010-04-20 13:47:08 +02:00
Edward Hervey
d3c8b52c9c GESTimelinePipeline: Implement smart rendering 2010-04-20 13:47:08 +02:00
Edward Hervey
f909ff239f GESTimelinePipeline: Store encoding profile 2010-04-20 13:47:08 +02:00
Edward Hervey
adada51a2d GESTimelinePipeline: New Smart Render mode 2010-04-20 13:47:07 +02:00
Edward Hervey
75389d6493 GESTimelinePipeline: new functions to search/create OutputChain 2010-04-20 13:47:07 +02:00
Edward Hervey
2d7962bf93 GESTimelinePipeline: Remove unused code 2010-04-20 13:47:07 +02:00
Edward Hervey
e795bd056d GESTrack: set caps on the composition
This will allow them to be propagated to all objects contained within
2010-04-20 13:47:07 +02:00
Mark Nauwelaerts
10be8697df GESTimeLine(PipeLine): remove additional unref 2010-04-20 13:47:07 +02:00
Edward Hervey
7dc4844507 ges: Link gstprofile 2010-04-20 13:47:07 +02:00
Edward Hervey
c3741374da GESTimeline: New method ges_timeline_get_tracks 2010-04-20 13:47:03 +02:00
Edward Hervey
b78aa12aee GESTimelinePipeline: Fix minor bug in get_compatible_unlinked_pad
We weren't breaking and ended up doing a fallthrough to the loop
completion.
2010-03-13 16:05:37 +01:00
Edward Hervey
9d8ee15a20 GESTimelineObject: Fix doc of priority property 2010-03-13 15:56:57 +01:00
Edward Hervey
fd15030ff1 GESTrackFileSource: Don't forget to free the URI string 2010-03-13 15:56:57 +01:00
Edward Hervey
9b1a434e95 GESTimelineLayer: Add a 'priority' property 2010-03-13 15:56:57 +01:00
Edward Hervey
dafe3d2bb4 GESTimeline: Properly iterate TrackObject lists when removing them 2010-03-13 15:56:57 +01:00