Commit graph

506 commits

Author SHA1 Message Date
Brandon Lewis
7bb28f0a6a GESSimpleTimelineLayer: add _nth() method 2010-12-15 18:01:33 +01:00
Edward Hervey
132cb68ab2 all: add/extend more .gitignore 2010-12-15 15:52:03 +01:00
Edward Hervey
ecc168c13c ges: Don't shorten symbol names
It wasn't making us gain anything, and confuses the hell out of g-ir-scanner.
2010-12-15 13:27:39 +01:00
Edward Hervey
122d3cda02 ges: Add gobject-introspection support 2010-12-15 12:58:26 +01:00
Edward Hervey
4c63aa21f2 ges: Switch to encoding-profile API from base
Remove dependency on gst-convenience.
2010-12-15 12:38:03 +01:00
Edward Hervey
5f6dadab77 GESTrackObject: Make base_priority/priority-offset a private field 2010-12-14 17:38:55 +01:00
Edward Hervey
3912245f87 GESTrackObject: Add create_element vmethod
API: GESTrackObjectClass::gnlobject_factorytype
API: GESTrackObjectClass::create_element

Most track objects are only specific by the contents of the gnlobject,
therefore move the 'create_element' vmethod which was already present
in some subclasses to the top-level class.

Also make the code more robust
2010-12-10 12:26:44 +01:00
Edward Hervey
8389feb971 GESTrackTransition: Make it a subclass of GESTrackOperation 2010-12-10 12:14:32 +01:00
Edward Hervey
7a098a423d GESTimelineSource: Remove textoverlay properties
This will be made more generic by allowing any overlay/effect to
be put on any source object.
2010-12-09 19:36:44 +01:00
Edward Hervey
ef7eb9efdd GESTransition: Make it a base class and add GESTimelineStandardTransition
This is to ensure people can create their own Layer Transition subclass.

API : GESTimelineTransition is now GESTimelineStandardTransition
2010-12-09 17:09:11 +01:00
Edward Hervey
36e165e190 ges: Make some classes abstract with G_DEFINE_ABSTRACT_TYPE 2010-12-09 15:21:10 +01:00
Edward Hervey
eb4cf96b29 ges: Avoid leaking a GList of GESTrackObject 2010-12-09 15:13:27 +01:00
Edward Hervey
237ea89aa7 ges: Remove unused GObject vmethods 2010-12-09 15:12:34 +01:00
Edward Hervey
d8b2781ddc GESTimelineOperation: New abstract class for operations
This is a new class for all timeline objects that both produce and
consume data.

The existing subclasses of it are now:
* GESTimelineOverlay
* GESTimelineTransition
2010-12-09 14:25:22 +01:00
Edward Hervey
f352404159 GESTimelineObject: Clarify usage of create_track_object(s) by subclasses 2010-12-09 12:53:07 +01:00
Edward Hervey
a98b77a648 GESTimelineSource: Remove empty create_track_object vmethod
The parent class will check if it is present or not, and call
track_objects if needed.
2010-12-09 12:52:15 +01:00
Edward Hervey
fd44f95618 GESFormatter: Hide the save/load vmethod from the docs
We need to deprecated them before API/ABI freeze
2010-12-09 12:46:27 +01:00
Edward Hervey
218bd56866 ges: Remove creators for base classes 2010-12-08 16:11:55 +01:00
Edward Hervey
8cef09279a GESTimelineSource: Remove _new() since it's a base class 2010-12-08 15:48:55 +01:00
Edward Hervey
faec1e803d docs: A round of updates 2010-12-08 15:36:55 +01:00
Thibault Saunier
dfeb7afe85 GESTimelineObject: add private structure 2010-12-08 13:00:21 +01:00
Thibault Saunier
7fc3be7d44 GESSimpleTimelineLayer: add private structure 2010-12-08 13:00:15 +01:00
Thibault Saunier
4c91a36f9a ges: Add instance private structures 2010-12-08 12:54:02 +01:00
Thibault Saunier
8d19b737d8 GESTimelinePipeline: add a private structure 2010-12-08 12:53:59 +01:00
Thibault Saunier
a66d8eaf16 GESCustomTimelineSource: add private structure 2010-12-08 12:53:59 +01:00
Thibault Saunier
4add2937de SimpleTimelineLayer: Remove bogus check and extend unit test to validate it 2010-12-02 11:55:44 +01:00
Edward Hervey
849d6ab872 ges: Add padding to all public structures
This will give us margin for API expansion without breaking ABI.

The ABI restriction will only come in place once we do the first
official release (i.e. 0.x.0).
2010-11-29 13:24:13 +01:00
Edward Hervey
3a9e4cdd74 Formatter: Extend and fixup documentation 2010-11-27 18:12:49 +01:00
Edward Hervey
2ff3d8ce12 Timeline: Add doc and more comments/fixmes 2010-11-27 18:12:49 +01:00
Edward Hervey
1da6d7a5dd GESTimeline: Prevent saving timelines without any layers 2010-11-27 18:12:49 +01:00
Edward Hervey
7176c26810 TimelineLayer: Add debug statement regarding priorities 2010-11-27 18:12:49 +01:00
Brandon Lewis
cc3634e18c GESFormatter: fix a few typos in documention 2010-11-27 18:08:20 +01:00
Brandon Lewis
33bc336a11 GESTimeline: add more fixmes 2010-11-27 18:08:20 +01:00
Brandon Lewis
39088c8f58 GESKeyFileFormatter: use ges_formatter_get/set data 2010-11-27 18:08:20 +01:00
Brandon Lewis
0ce5053ac4 GESFormatter: Add data-related methods 2010-11-27 18:08:20 +01:00
Brandon Lewis
9f1dc7709a GESKeyFileFormatter: New GKeyFile GESFormatter 2010-11-27 18:08:20 +01:00
Brandon Lewis
27481c3c26 GESTimeline: implementation of save_to/load_from uri 2010-11-27 18:08:19 +01:00
Brandon Lewis
124100b957 GESFormatter: Project file format support 2010-11-27 18:07:46 +01:00
Brandon Lewis
abce2912b8 GESTimeline: set track state to NULL before removing from timeline 2010-11-27 17:55:50 +01:00
Brandon Lewis
f521d31b40 GESTimeline: release timeline objects when a layer is removed 2010-11-27 17:55:49 +01:00
Brandon Lewis
293cc5c6ca GESTrack: keep track of trackobjects and remove/release them in dispose 2010-11-27 17:23:30 +01:00
Brandon Lewis
0ced93c4ed GESSimpleTimelineLayer: override get_objects () virtual method 2010-11-27 17:23:29 +01:00
Brandon Lewis
06695545e0 GESTimelineLayer: add get_objects virtual method 2010-11-27 17:23:29 +01:00
Brandon Lewis
9848c33e40 GESTimeline: allow adding tracks after layers 2010-11-27 17:23:23 +01:00
Brandon Lewis
170ec1e7ab GESTimeline: add existing timeline objects when adding layers 2010-11-27 17:16:36 +01:00
Brandon Lewis
d9f8563319 ges: ensure built-in timeline object classes are registered 2010-11-27 17:13:39 +01:00
Brandon Lewis
d2b2ac0d51 GESTimeline: remove layers before removing tracks in dispose () 2010-11-27 17:13:39 +01:00
Edward Hervey
da806759d1 Timeline: Remove unneeded variable 2010-11-25 14:02:26 +01:00
Edward Hervey
da977c5565 TimelineObject: Forgot a break in a switch/case 2010-11-25 14:01:15 +01:00
Edward Hervey
ab0493418a GESTimelinePipeline: Make sure playsink events are sent to all incoming streams
PlaySink will not send seek events to all incoming streams since it assumes that
they all come from the same source (like a file).
When used with multiple gnonlin compositions we need to make sure those seek events
are sent to all of them.
2010-11-23 18:24:38 +01:00
Edward Hervey
f8e6955459 GesTrackVideoTransition: Prefer videomixer2 to videomixer
If present
2010-11-14 11:58:10 +01:00
Edward Hervey
9718bf1f1f GESTimeline: Change for updated GstDiscoverer API 2010-11-04 12:28:46 +01:00
Edward Hervey
a5382931d2 Add gstvideo in build dependencies 2010-09-28 16:34:53 +02:00
Edward Hervey
6364e8ec2c all: Changes for discoverer being merged upstream
Along with a whole bunch of Makefile fixups
2010-09-23 18:42:48 +02:00
Edward Hervey
a02a5c2320 Update for factorylist/convertframe being merged to gst core/base 2010-09-16 08:39:46 +02:00
Edward Hervey
d76535bc59 Update to moved gst-convenience 2010-09-16 08:39:01 +02:00
Brandon Lewis
6e844f877f layer is also invalid when there are transitoins at the beginning/end 2010-09-02 18:08:43 +02:00
Brandon Lewis
03e488ac74 add vaid property and unit tests 2010-09-02 18:08:43 +02:00
Brandon Lewis
719c2ad0a5 add doc comment for object-moved signal 2010-09-02 18:08:43 +02:00
Brandon Lewis
cd9ad5302e add object-moved signal to simple timeline layer 2010-09-02 18:08:43 +02:00
Edward Hervey
c3d98ca5ea GESTrackObject: Fix debug statement 2010-09-02 17:55:20 +02:00
Edward Hervey
f6d0de047a GESTimelineFileSource: Don't leak strings 2010-09-01 17:04:26 +02:00
Brandon Lewis
2f07308cd9 deactivate overlay when no text is present 2010-09-01 16:56:04 +02:00
Brandon Lewis
1052532f5a expose text, font-desc, and alignment properties in GESTimelineSource 2010-09-01 16:56:04 +02:00
Brandon Lewis
ba00ee2bfd fix typo in docstring 2010-09-01 16:56:04 +02:00
Brandon Lewis
dd6f39594a add conversion elements to TrackTextOverlay 2010-09-01 16:56:04 +02:00
Brandon Lewis
eb3be94578 tweak gstl recalculate: cur track object sets priority for next transition 2010-09-01 16:56:03 +02:00
Brandon Lewis
3b1a0d756d add type argument to ges_timeline_object_find_track_objects() 2010-09-01 16:56:03 +02:00
Brandon Lewis
420badca90 don't add the same track object twice 2010-09-01 16:56:03 +02:00
Brandon Lewis
e6b24d8749 check for proper instance type in _set_* functions 2010-09-01 16:56:03 +02:00
Brandon Lewis
c4ac72dedb fix documentation comment 2010-09-01 16:56:03 +02:00
Brandon Lewis
1966efd927 create a text overlay with default text for every TimelineSource 2010-09-01 16:56:03 +02:00
Brandon Lewis
efbc4a22cd increase default priority offset for sources; update unit tests 2010-09-01 16:56:03 +02:00
Brandon Lewis
0e07ea40f7 move this commit down where it belongs 2010-09-01 16:56:03 +02:00
Brandon Lewis
4683b042f6 override create_track_objects (plural) in TimelineSource 2010-09-01 16:56:03 +02:00
Brandon Lewis
a9c3628b5a update height when track object priority offset changes 2010-09-01 16:56:02 +02:00
Brandon Lewis
6667956ceb reword priority documentation comments 2010-09-01 16:56:02 +02:00
Brandon Lewis
6c6d4911cd use object height in gstl recalcuate 2010-09-01 16:56:02 +02:00
Brandon Lewis
93936321da initialize height to 1 2010-09-01 16:56:02 +02:00
Brandon Lewis
d92d922c52 add accessor macro 2010-09-01 16:56:02 +02:00
Brandon Lewis
b02cf5b34e add height property 2010-09-01 16:56:02 +02:00
Brandon Lewis
ebdebc01ce document timelineobject::priority 2010-09-01 16:56:02 +02:00
Brandon Lewis
572f7ab4da expose priority-offset as a property 2010-09-01 16:56:02 +02:00
Brandon Lewis
03cf6c99b6 distinguish between base_priority, priority_offset, and gnl_priority 2010-09-01 16:56:02 +02:00
Brandon Lewis
03c1c76652 split timeline_object_add_track_object out of create_track_object 2010-09-01 16:56:02 +02:00
Brandon Lewis
cd7cefffa6 add create_track_objects 2010-09-01 16:56:01 +02:00
Brandon Lewis
dca01a3c0e add create_track_objects declarations 2010-09-01 16:56:01 +02:00
Brandon Lewis
d6d7eb8398 call create_track_objects in timeline.c 2010-09-01 16:56:01 +02:00
Edward Hervey
e28da66ceb GESTimelineTransition: Remove unneeded variable 2010-08-31 13:49:21 +02:00
Brandon Lewis
9c82a2841c allow borders on still image videoscale 2010-08-13 11:50:31 +02:00
Brandon Lewis
c9eba54506 always support audio on still images 2010-08-13 11:50:31 +02:00
Brandon Lewis
4408354819 remove ffmpegcolorspace after freeze (see 626518) 2010-08-13 11:50:31 +02:00
Brandon Lewis
598d883d53 don't set max duration on still images 2010-08-13 11:50:31 +02:00
Brandon Lewis
e095df1bc7 implement still image sources 2010-08-13 11:50:30 +02:00
Brandon Lewis
49fbc0b6d6 naive implementation of still images (seems broken) 2010-08-13 11:50:30 +02:00
Brandon Lewis
fe54413811 create GESTrackAudioTestSource for audio tracks when is-image is true 2010-08-13 11:50:30 +02:00
Brandon Lewis
56c26dd853 set 'is-image' property true when source has an image stream type 2010-08-13 11:50:30 +02:00
Brandon Lewis
f9bb4b274c create image sources when is_image is set to true 2010-08-13 11:50:30 +02:00
Brandon Lewis
e38cf5a3ad Add "is-image" property to GESTimelineFileSource 2010-08-13 11:50:30 +02:00
Brandon Lewis
9ba833c127 check in GESTrackImageSource 2010-08-13 11:50:30 +02:00
Edward Hervey
997e0287f9 ges: Also dist the generated files 2010-08-05 12:19:32 +02:00
Edward Hervey
f4245ed133 marshal: Fix typo in the Makefile that prevented marshal .c being built 2010-08-05 11:40:49 +02:00
Brandon Lewis
98298c00e5 link to the right sink pad on textoverlay object 2010-07-23 18:22:31 +02:00
Brandon Lewis
295d177d12 fwrite doesn't return the number of bytes written. check that fwrite is
non-zero and that ferror() isn't set instead.
2010-07-16 18:54:49 +02:00
Brandon Lewis
de54e7a312 don't plug encoders when raw caps are given 2010-07-16 18:54:48 +02:00
Brandon Lewis
085a4c4804 ges_caps_set_simple was being called incorrectly 2010-07-16 18:18:03 +02:00
Edward Hervey
6cc48991d6 ges: Don't forget to dist ges-timeline-overlay.h 2010-07-16 18:02:25 +02:00
Edward Hervey
fc62bc7518 TimelinePipeline: Make sure fwrite completes successfully 2010-07-16 17:29:05 +02:00
Brandon Lewis
bde192be3d add routine to save a thumbnail in the specified encoding 2010-07-16 17:22:19 +02:00
Brandon Lewis
74c58d9cdf add todo item 2010-07-16 17:22:19 +02:00
Brandon Lewis
0a548ffad9 factor encoder-finding code into separate function 2010-07-16 17:22:19 +02:00
Brandon Lewis
f487fe3fb8 use gstprofile to plug an encoder and encode the current frame 2010-07-16 17:22:18 +02:00
Brandon Lewis
70a040f760 add methods to retreive the current frame as a thumbnail 2010-07-16 17:22:18 +02:00
Brandon Lewis
f8c7b00a0f duplicate code from gstscreenshot.{c,h} and gstplaysink.{c,h} 2010-07-16 17:22:18 +02:00
Edward Hervey
df36ccabb9 GESTimelinePipeline: Use smartencoder feature from encodebin 2010-07-15 12:09:26 +02:00
Edward Hervey
b158c59202 GES: Switch to new fast pad linking 2010-07-14 13:29:23 +02:00
Brandon Lewis
66745d0695 Don't expose test source enum value table 2010-07-09 13:27:01 +02:00
Brandon Lewis
318abee5fb don't expose transition enum value table 2010-07-09 13:21:18 +02:00
Brandon Lewis
f64bc157bc use gtype to get the enum value for the nick 2010-07-09 13:21:18 +02:00
Brandon Lewis
770a16f5ce check whether setting vtype property actually succeeds 2010-07-09 13:21:18 +02:00
Brandon Lewis
33449efcd7 initialize transitions to type _TRANSITION_TYPE_NONE 2010-07-09 13:21:18 +02:00
Brandon Lewis
de8238031b add new invalid enum type 2010-07-09 13:21:18 +02:00
Brandon Lewis
4cd9fd5006 refactor duration_changed method as this is now a TrackObjectClass method 2010-07-09 13:21:18 +02:00
Brandon Lewis
847052077e remove notify::duration signal handler 2010-07-09 13:21:18 +02:00
Brandon Lewis
fee9f7fb67 add track object virtual methods for property change notifications 2010-07-09 13:21:18 +02:00
Brandon Lewis
b13bf26795 remove unneeded assertions 2010-07-09 13:21:18 +02:00
Brandon Lewis
31ffb87dde remove unneeded _new methods on certain base classes 2010-07-09 13:21:18 +02:00
Edward Hervey
919076f892 TrackTransition: Don't return anything for unhandled tracks 2010-07-09 13:21:18 +02:00
Edward Hervey
b30a85117c TrackTransition: Remove second argument from duration_changed vmethod
And get properties directly from parent classes instead
2010-07-09 13:21:17 +02:00
Edward Hervey
f107a01ede GES: whitespace fixes 2010-07-09 13:21:17 +02:00
Edward Hervey
8c8aa7393c GES: Simplify loops 2010-07-09 13:21:17 +02:00
Edward Hervey
11bd040ff1 GES: Remove un-needed branches
res it initialized to NULL
2010-07-09 13:21:17 +02:00
Edward Hervey
066ff4a9de GES: Fix initialization values 2010-07-09 13:21:17 +02:00
Edward Hervey
4708fbb4ca GES: Remove useless variables 2010-07-09 13:21:17 +02:00
Edward Hervey
8da8dda41f GES: Fix function prototypes 2010-07-09 13:21:17 +02:00
Edward Hervey
714a1025d6 TimelineTestSource: Set freq/volume whether mute or not 2010-07-09 13:21:17 +02:00
Edward Hervey
5a58ef53b4 TimelineOverlay: Fix doc 2010-07-09 13:21:17 +02:00
Edward Hervey
9fa220c0c0 TrackVideoTransition: Avoid switching from crossfade to other types
This now exposes a bug in the TimelineTransition, since it will have
a transition type different from its track objects.
2010-07-09 13:21:17 +02:00
Edward Hervey
f3c0d88e79 SimpleTimelineLayer: Fix top-level doc 2010-07-09 13:21:17 +02:00
Edward Hervey
d8d1e95952 TimelineLayer: Document _set_priority 2010-07-09 13:21:17 +02:00
Edward Hervey
c0e21a4a69 TrackVideoTransition: Use proper transition type 2010-07-09 13:21:17 +02:00
Edward Hervey
6dfc14b3e6 utils: Document timeline_new_audio_video 2010-07-09 13:21:16 +02:00
Brandon Lewis
7190943ddb make type field of video transition private 2010-07-09 13:21:16 +02:00
Brandon Lewis
5f3ef42e96 another massive documentation update 2010-07-09 13:21:16 +02:00
Brandon Lewis
12a2d3b3fe expose freq and volume props in GESTimelineTestSource 2010-07-09 13:21:16 +02:00
Brandon Lewis
fd7f9ac12f add routines to AudioTestSource to set freq and volume 2010-07-09 13:21:16 +02:00
Brandon Lewis
dcc0413945 remove 'mute' property from GESTimelineTextOverlay 2010-07-09 13:21:16 +02:00
Brandon Lewis
e4e800da50 fix incorrect type name strings 2010-07-09 13:21:16 +02:00
Brandon Lewis
9f71c1ff8c convert rest of code to use GESVideoTestPattern 2010-07-09 13:21:16 +02:00
Brandon Lewis
e73c98630e add GESVideoTestPattern enum 2010-07-09 13:21:16 +02:00