Thibault Saunier
eab86c2913
tests: integration: Rework the way we handle seeking while fully paused
...
The idea is that we should first play until the time we reach the first
position, at that point we PAUSE the pipeline, then, afterward do the
seeks as asked.
If we get the position before the ASYNC DONE, just accept it.
2013-08-17 11:52:30 +02:00
Thibault Saunier
4ca7a4ef91
tests: integration: PNG file was renamed to png.png
2013-08-17 11:52:30 +02:00
Thibault Saunier
82ae3de5b6
tests: integration: Add a list tests only option
...
Also add an empty filed in the GOptionEntry array avoiding segfaults
2013-08-17 11:52:30 +02:00
Thibault Saunier
f8a9987082
tests: integration: Only use 2 layers for the mixing for now
...
+ Call the TSuite "integration" instead of "render"
2013-08-04 17:36:21 +02:00
Thibault Saunier
f1650b9f2d
tests: check: All assets moved to assets/
2013-08-04 16:27:53 +02:00
Thibault Saunier
c5c19cf412
tests: integration: Make it possible to list all avalaible tests
...
You can not use make check-integration --list-tests, you have to use
./integration --list-tests instead
2013-08-03 17:01:22 +02:00
Thibault Saunier
786a8f5b8a
Fix compilation
2013-08-01 18:14:45 +02:00
Thibault Saunier
54f152aea7
tests: integration: Avoid leak
2013-08-01 17:56:29 +02:00
Thibault Saunier
4d8e9bd53c
tests: integration: Do not forget to set encoding profiles
2013-08-01 17:47:50 +02:00
Vasilis Liaskovitis
c36fa7de58
integration: add mixing tests
...
Add a new test that creates a given number of layers. Each layer has the same
assets / clips shifted by a different amount in the timeline. Alpha and volume
properties are different for each layer. This test is similar to the mixer
example in:
http://gist.github.com/MathieuDuponchelle/5736992#file-mixit-py
We should be able to add more clips to each layer, but this example test only
tests mixing 1 clip across 4 layers.
Conflicts:
tests/check/ges/integration.c
2013-08-01 15:32:33 +02:00
Mathieu Duponchelle
5022b10d66
tests/integration: display test name when running it.
2013-08-01 15:32:33 +02:00
Mathieu Duponchelle
64bebd5867
tests/integration: add an asset directory.
2013-08-01 15:16:28 +02:00
Vasilis Liaskovitis
db72c59e1f
integration: add seek tests to paused pipeline (no playing)
...
This second set of seeking tests performs the seeks in a PAUSED
pipeline. After all seeks are successful, the pipeline is resumed so that the
test does not timeout.
Conflicts:
tests/check/ges/integration.c
2013-08-01 11:04:58 +02:00
Vasilis Liaskovitis
a176ee153c
integration: add paused pipeline seek tests
2013-08-01 11:04:58 +02:00
Mathieu Duponchelle
ea1d7edc8d
tests/integration: adds image_filename in the test generation macro
2013-08-01 11:04:57 +02:00
Thibault Saunier
e8b3eaf0f2
tests: integration: Let the user mute the tests when needed
...
Add an environment variable so the user can make sur that
integration tests use fakesinks instead of real sinks
2013-07-23 19:37:54 -04:00
Thibault Saunier
cd83c0c8e5
tests: Make sure we can have the results into an XML file
2013-07-22 20:06:25 -04:00
Lubosz Sarnecki
9f0b0c26e3
Rename GESTimelinePipeline to GESPipeline
...
rename ges_timeline_pipeline methods to ges_pipeline
2013-07-21 21:42:42 -04:00
Thibault Saunier
b5795da61c
tests: integration: Add some pipeline dumps
...
When we go to PLAYING, or when we get an error on the bus
+ Activate the hack so that we dump the pipeline on first buffer
pushed by the smart adder
2013-07-21 21:27:16 -04:00
Thibault Saunier
2e3a300aa6
tests: integration: Add video/audio only basic tests
2013-07-21 21:27:16 -04:00
Thibault Saunier
e981c171b1
tests: integration: Give some more information to user on errors
2013-07-21 21:27:16 -04:00
Thibault Saunier
086c3af0ad
tests: intergration: Add some more encoding profiles
2013-07-21 21:27:16 -04:00
Thibault Saunier
775d25eb62
tests: integration: Give the user more details about failure when checking transcoded file
2013-07-21 21:26:35 -04:00
Thibault Saunier
066c9ea5b7
tests: integration: Be more precise with namings
...
Fully define formats in the namings
+ Add an mp3 + h264 in mov test
2013-07-21 21:26:35 -04:00
Thibault Saunier
1d40731e9d
tests: integration: Refactor and make easier to add encoding profiles
2013-07-21 21:26:25 -04:00
Thibault Saunier
528ad72604
tests: integration: Add audio/video only seeking tests
2013-07-17 12:31:02 -04:00
Thibault Saunier
74e00d6bc4
tests: integration: Remove the effect in test_seeking
...
It complexifies the test but this is not what we actually want in
that test
2013-07-17 12:05:26 -04:00
Thibault Saunier
a3454262dc
tests: Remove prints
...
And use GST_DEBUG and friends instead
2013-07-16 21:58:16 -04:00
Vasilis Liaskovitis
68363433c9
integration: some fixes for seek tests
...
- Use g_list_remove_link so that ordering of seeks is not mandatory
- use g_slice allocator for SeekInfo structs
- Fix leak in freeing seek list
- Check for NULL seeks at end of test, otherwise fail and free failed seeks
2013-07-16 21:32:40 -04:00
Vasilis Liaskovitis
393505b8aa
integration: add SeekInfo and get_position callback for seek tests
...
A Seekinfo structure consists of 2 fields:
- position: the position to seek to
- seeking_position: the position to perform the seek from
Seeks can be appended to a global list e.g. from code:
seeks = g_list_append (seeks, new_seek_info (0.2 * GST_SECOND, 0.6 * GST_SECOND));
seeks = g_list_append (seeks, new_seek_info (1.0 * GST_SECOND, 1.2 * GST_SECOND));
seeks = g_list_append (seeks, new_seek_info (1.5 * GST_SECOND, 1.8 * GST_SECOND));
The get_position callback checks the current position and attempts to perform
the corresponding seek with gst_element_seek_simple
2013-07-13 17:29:08 +02:00
Thibault Saunier
125141237f
tests: Simplifie integration tests using macros all around
2013-07-12 19:49:13 -04:00
Mathieu Duponchelle
b7755493e1
tests: Add integration tests
...
Those are test with real media files, they are run separetely from other
unit tests using the make check-integration command (can be done from
the toplevel directory)
2013-07-12 18:17:00 -04:00
Mathieu Duponchelle
669ce62ea2
test-utils: Add test file generation code.
2013-07-12 18:17:00 -04:00
Thibault Saunier
1e5bb2edf6
timelineelement: Make sure that we will never set a negative start
...
Currently we can end up overflowing the start of others child of our
parent, avoid that making sure we can set our start to what was
requested by the user before actually doing it
+ Add a test
2013-07-10 23:17:54 -04:00
Thibault Saunier
a933d9540d
ges: Implement a GESGroup class, subclass of GESContainer
...
The GESGroup class is used to group various GESContainer
together, it can contain either GESClips or GESGroup or both.
2013-07-09 16:47:00 -04:00
Thibault Saunier
4e51b347ff
tests: More safely check if objects where destroyed
...
Check if an object rthat has already been freed has been destroyed is not safe.
Add a helper function that uses weak reference to check that objects that are expected
to be destroyed when unrefing an object are actually destroyed.
2013-07-09 22:13:42 +02:00
Thibault Saunier
534bf481ed
clip: Handle child priority offsets when setting priority
2013-07-09 22:13:41 +02:00
Thibault Saunier
663f9884ef
ges: Move ges_clip_edit to GESContainer
...
This exact same method will be needed in GESGroup, so we should have the method
in the common parent class.
API:
- ges_clip_edit
+ ges_container_edit
+ GESContainer->edit vmethod
2013-07-09 22:13:41 +02:00
Thibault Saunier
dd7085d2ed
track: Update gaps only when commiting
...
We were still updating them at useless moments, do it only when absolutely needed.
2013-07-09 22:13:40 +02:00
Mathieu Duponchelle
b3fafa7928
tests: Add a audio/video mixing test.
2013-06-23 18:42:59 -04:00
Thibault Saunier
724a6c1bb5
smart-adder: Implement a GESSmartAdder bin element to be used as mixing element
...
..in audio tracks
2013-06-23 18:37:40 -04:00
Thibault Saunier
b87c800743
meta-container: Add a VOLUME default meta to layers
2013-06-23 18:28:53 -04:00
Thibault Saunier
55b7628382
ges: Make space in the GESTracks to be able to add mixing elements later
...
And update the tests
2013-06-23 18:28:52 -04:00
Thibault Saunier
d6a2f90a17
tests:effects: Make use of normal layers, and enhance tests
2013-06-23 17:39:05 -04:00
Thibault Saunier
9b14c001b0
ges: Implement GESAudioTrack and GESVideoTrack, subclasses of GESTrack
2013-06-23 17:38:57 -04:00
Thibault Saunier
f6038e3ad2
ges: Port to the new commit based API in GNL
...
The GNL API changed to go from a model where user could
enable/disable updates in the composition, which leaded to races
in many places, to a model where any positioning change in the
composition is not directly done but 'cached' and then the user
has to commit those changes so they become effective in the media
processing stack.
The new API in GES is pretty similare and is basically copy
pasting this new design.
We still need to see if in some context it would make sense to add
a mode where we would commit any changes ourself at the end of our
operation for basic use cases.
Removed APIs:
ges_timeline_enable_update
ges_timeline_is_updating
ges_track_enable_update
ges_track_is_updating
New APIs:
ges_track_commit
ges_timeline_commit
2013-06-23 16:33:33 -04:00
Thibault Saunier
73bdde653d
tests: Pass a ref of CAPS_ANY to ges_track_new
2013-05-30 14:14:56 -04:00
Thibault Saunier
b84ec5add6
tests: Add a basic test for pipeline state change
...
Add some test utils to create a pipeline
2013-05-29 17:22:20 -04:00
Thibault Saunier
302e0ed5d7
track: Update all gaps when timeline duration changed
...
And add a unit test to check that a gap is created in empty tracks
2013-05-28 18:27:31 -04:00
Thibault Saunier
40bfdd508a
Finish renaming filesource to urisource
2013-05-28 18:27:31 -04:00
Thibault Saunier
7300a71483
tests: Use the gst_check_run_suite helper everywhere
...
Using GST_CHECK_MAIN where appropriate
This way it is possible to specify an XML file to store tests results in
2013-05-27 22:11:10 -04:00
Anton Belka
086bbd3b38
tests: add project auto-transition test
2013-05-09 19:04:13 -04:00
Anton Belka
4db816d3e6
tests: add timeline auto-transition test
2013-05-09 18:54:56 -04:00
Thibault Saunier
54bf3c05c5
test-clip: Do not set black/silent by default
2013-04-28 01:44:55 +02:00
Thibault Saunier
b2b96c743d
Rename GESTimelineLayer to GESLayer
2013-04-23 20:22:31 -03:00
Thibault Saunier
b5c52a17ec
layer: Remove the "rate" property of ges_timeline_layer_add_asset
...
API:
- ges_timeline_layer_add_asset (layer, asset, start, inpoint, duration, rate, track_types);
+ ges_timeline_layer_add_asset (layer, asset, start, inpoint, duration, track_types);
2013-04-23 20:22:27 -03:00
Thibault Saunier
0c900f7bc6
tests: Check splitting a clip with several TrackElement
2013-04-19 19:05:43 -03:00
Thibault Saunier
70d5680748
pipeline: Add a GError argument
2013-04-18 18:48:19 -03:00
Mathieu Duponchelle
504ab966aa
tests:timelineedition: Add a simple trimming test
2013-04-15 00:18:05 -03:00
Thibault Saunier
78d80c8ca4
track-element: Rename set_property_controlling_parameters set_control_source
...
+ Generate the documentation
2013-03-31 16:37:41 +02:00
Mathieu Duponchelle
e655a75605
[Keyframes] Adds API to set a control binding on a track element, and the serialization code.
2013-03-31 16:31:26 +02:00
Thibault Saunier
f8e4a2dc7d
tests:effect: Do not re-add effect to the track
2013-03-28 19:02:06 +01:00
Thibault Saunier
cd188c851d
container: Let subclasses handle the height
...
+ Fix tests (starting using GESTestClip instead of GESCustomClip)
Now the height is not only growing, but can also go down, as the value
is just simply computed
API:
GESContainer::compute_height virtual method
2013-03-28 11:16:41 +01:00
Thibault Saunier
15c1481a56
test:basic: Do not add useless references, and minor improvements
2013-03-28 11:16:41 +01:00
Thibault Saunier
0df2d4f945
container: Make sure that the child exists when emiting the "child-removed" signal
...
+ Add a test
2013-03-28 11:16:41 +01:00
Thibault Saunier
fa5ed5111d
Misc cleaning
2013-03-21 22:17:10 -03:00
Thibault Saunier
cae3aabbca
ges: Make ges_clip_create_track_element(s) internal methods
...
+ Fix tests (we still need a round of modernisation, making use of
assets where it makes sense)
There is no reason to use those method outside of GES, so remove them,
cleaning the API and making it easier for users.
Removed APIs:
-----------
* ges_clip_create_track_element
* ges_clip_create_track_elements
2013-03-21 22:05:45 -03:00
Thibault Saunier
e260de2fa6
tests::uriclip: Use a real file to test still images
...
+ Make use of GESAssets
And do proper refactoring
2013-03-21 22:00:21 -03:00
Thibault Saunier
855270566c
uri-asset: Implement a ges_uri_clip_asset_request_sync method
...
This way we let the possibility to the user to actually do it, but we avoid him to do it
without knowing it is absolutely not recommanded to.
API:
+ ges_uri_clip_asset_request_sync
2013-03-19 20:06:30 -03:00
Thibault Saunier
f8334dba24
clip: Make it mandatory that a clip is in a layer to be splittable
...
Otherwize we will not be able to describe if the returned object has a floating reference or not, and this would screw the introspection.
2013-03-19 20:06:30 -03:00
Thibault Saunier
0767f08c7a
Always prefer gst_object_(un)ref over g_object_(un)ref
...
Making the refcount issue debugging easier
2013-03-18 12:48:41 -03:00
Thibault Saunier
aa740d86bd
Remove GESTrackElements from GESTracks when removing from a GESClip
...
... Not the other way round.
+ Add and enhance debugging info on the way
The user should not be responsible for removing the GESTrackElements from
GESTracks, instead, removing it from a GESClip should imply removing
it from any GESTrack it is in.
This patch changes sensibly the behaviour when we remove a
GESTrackElement from a GESTrack, not remoing it from the GESClip it is
in. *But*, users should never remove a GESTrackElement from a GESTrack
anyway. The testsuite has been updated to that new behaviour.
2013-03-15 11:17:06 -03:00
Thibault Saunier
7943bb510a
ges: Make GESTimeline responsible for adding GESTrackElement to GESTrack
...
+ Fix tests as necessary (Do not use agingtv as it can be "applied" on any TrackType
and is not representative of what happens IRL)
We already had the infrastructure so the user can have the control over where to add
the elements (through the "select-track-for-object" signal). We now make use of that
signal everytime a GESClip is added to a GESTimelineLayer. This make user's life easier,
and object responsability clearer.
2013-03-15 00:13:09 -03:00
Thibault Saunier
f579a6a95c
container: Add a ges_container_group method
...
+ Add some basic unit tests
API:
GESContainer:group vmethod
ges_container_group
2013-03-15 00:13:09 -03:00
Thibault Saunier
c73ced52f8
container: Add a way to ungroup a GESContainer into several GESContainers
...
+ Add simple unit test
API:
GESContainerClass::ungroup vmethod
ges_container_ungroup
2013-03-15 00:13:09 -03:00
Thibault Saunier
795b8df1b6
Implement GESContainer
...
+ Fix unit tests
+ Minor enhancement in unit tests
API changes:
-----------
* ges_track_element_get_clip -> ges_timeline_element_get_parent
* ges_clip_add_track_element -> ges_container_add
* ges_clip_release_track_element -> ges_container_remove
* ges_clip_get_track_elements -> ges_container_get_children
(or GES_CONTAINER_CHILDREN)
2013-03-15 00:13:08 -03:00
Thibault Saunier
0888e5e25b
Rename object/tobj/trobj to clip or track_element as necessary
...
Not really complete but it is a good start!
2013-02-15 16:26:30 -03:00
Thibault Saunier
d21791a8d0
Rename GESTimelineLayer.xxx_object to GESTimelineLayer.xxx_clip
2013-02-15 15:23:15 -03:00
Thibault Saunier
ec1db99266
track: Rename all GESTrack.xxx_object to GESTrack.xxx_element
2013-02-15 15:23:15 -03:00
Thibault Saunier
fc8f06eedb
Properly rename object-added to clip-added
2013-02-15 15:23:15 -03:00
Thibault Saunier
4ddcfb642d
Finish renaming timeline object to clip
2013-02-15 15:23:15 -03:00
Thibault Saunier
b4e1131b70
Finish renaming track object to track element
2013-02-15 15:23:15 -03:00
Thibault Saunier
c21524a985
Reword ges_title_clip_set_color to ges_title_clip_set_text_color
2013-02-15 14:42:07 -03:00
Thibault Saunier
a20f6cf5f3
Rename overlay_text to text_overlay
2013-02-15 14:42:07 -03:00
Thibault Saunier
ecc9eb3020
Rename GESTrackVideoTransition to GESVideoTransition
2013-02-15 14:42:07 -03:00
Thibault Saunier
ac456f74d7
Rename GESTrackTextOverlay to GESTextOverlay
2013-02-15 14:42:06 -03:00
Thibault Saunier
8245a6e624
Rename GESTrackTitleSource to GESTitleSource
2013-02-15 14:42:06 -03:00
Thibault Saunier
6aa01b594a
Rename GESTrackImageSource to GESImageSource
2013-02-15 14:42:06 -03:00
Thibault Saunier
273f27a269
Rename GESTrackVideoTestSource to GESVideoTestSource
2013-02-15 14:42:05 -03:00
Thibault Saunier
5a5aae6e63
Rename GESTrackAudioTestSource to GESAudioTestSource
2013-02-15 14:42:05 -03:00
Thibault Saunier
e24cccabfd
Rename GESTrackParseLaunchEffect to GESEffect
2013-02-15 14:42:05 -03:00
Thibault Saunier
5da8fa89e2
Rename TrackEffect to BaseEffect
2013-02-15 14:42:05 -03:00
Thibault Saunier
d69964fd2a
Rename GESTrackObject to GESTrackElement
2013-02-15 14:42:05 -03:00
Thibault Saunier
dc04fd005c
Rename GESStandardEffectClip to GESEffectClip
2013-02-15 14:42:04 -03:00
Thibault Saunier
6f4315b75d
Rename GESStandardTransitionClip to GESTransitionClip
2013-02-15 14:42:04 -03:00
Thibault Saunier
4300876b0d
Rename GESTransitionClip to GESBaseTransitionClip
2013-02-15 14:42:04 -03:00
Thibault Saunier
e3dc877c4b
Rename GESTimelineTestSource to GESTestSourceClip
2013-02-15 14:42:04 -03:00
Thibault Saunier
5da46b7658
Rename GESTimelineTileSource to GESTitleClip
2013-02-15 14:42:04 -03:00
Thibault Saunier
a2f670448e
Rename GESTimelineTextOverlay to GESTextOverlayClip
2013-02-15 14:42:04 -03:00
Thibault Saunier
fd5c3e512a
Rename GESTimelineOverlay to GESOverlayClip
2013-02-15 14:42:03 -03:00
Thibault Saunier
878f015179
Rename GESTimelineSource to GESSourceClip
...
And GESCustomTimelineSource to GESCustomSourceClip
2013-02-15 14:42:03 -03:00
Thibault Saunier
dbc83d5d86
Rename GESTimelineParseLaunchEffect to GESStandardEffectClip
2013-02-15 14:42:03 -03:00
Thibault Saunier
d7693b4014
Rename GESTimelineStandardTransition to GESStandardTransitionClip
2013-02-15 14:42:03 -03:00
Thibault Saunier
b73cf7c3d7
Rename GESTimelineTransition to GESTransitionClip
2013-02-15 14:42:03 -03:00
Thibault Saunier
192d8a6f4d
Rename GESTimelineEffect to GESEffectClip
2013-02-15 14:42:03 -03:00
Thibault Saunier
695c381bb1
Rename GESTimelineFileSource to GESUriClip
...
Conflicts:
ges/ges-pitivi-formatter.c
ges/ges-uri-clip.c
tests/check/ges/project.c
tests/check/ges/uriclip.c
2013-02-15 14:42:02 -03:00
Thibault Saunier
04a3c49ebd
Rename GESTimelineObject to GESClip
2013-02-15 14:42:02 -03:00
Thibault Saunier
f0359481c0
Add a GESTimelineElement base class
...
+ Port GESTrackObject and GESTimelineObject to the new baseclass
2013-02-15 14:42:02 -03:00
Tim-Philipp Müller
85663a840e
Fix various printf format issues in debug messages
2013-01-22 19:51:57 +00:00
Thibault Saunier
e071e3ed37
project: Track Asset that were loaded with error
2013-01-14 09:02:26 -03:00
Thibault Saunier
1d397591af
project: Handle assets that are being loaded
...
API:
ges_project_get_loading_assets
2013-01-14 09:02:26 -03:00
Thibault Saunier
02652902f5
Reimplement the auto-transition feature
...
+ Actually implement unit tests
2013-01-10 18:53:15 -03:00
Thibault Saunier
ab0d1b1724
tests: Add a macro for type checking
2013-01-10 11:18:46 -03:00
Thibault Saunier
f2d389d37f
Benchmark rippling
2013-01-10 11:11:31 -03:00
Thibault Saunier
b8400f7900
test: project: Fix various leaks
2013-01-03 09:44:35 -03:00
Thibault Saunier
aa0d4487d7
tests: Remove useless mutex
2012-12-29 19:38:13 -03:00
Thibault Saunier
e796a2aab2
tests: Fix misc issues
...
Now GST_CAPS_ANY is a singleton, it is not returning a newly created caps
anymore
2012-12-29 19:38:12 -03:00
Thibault Saunier
9f63e6514a
Allow checking code coverage
2012-12-29 19:38:12 -03:00
Sebastian Dröge
bc0f335734
Allow applications to select to which track a track object should be added
...
Modifies some API:
ges_timeline_object_create_track_objects now take a GESTrackType instead of a
GESTrack as second argument, and return a GList instead of a boolean
ges_timeline_object_create_track_object now take a GESTrackType instead of a
GESTrack as second argument
2012-12-29 19:36:52 -03:00
Volodymyr Rudyi
a00a4b1e2c
tests: Add testcase for GESAsset
2012-12-29 19:36:51 -03:00
Thibault Saunier
45c7f609da
timeline: Make use of the Project API for timeline saving
...
API:
* Add a formatter_type paramatter to ges_timeline_save_to_uri
2012-12-29 19:36:50 -03:00
Thibault Saunier
2cd77406e1
tests: Add GESProject tests
2012-12-29 19:36:50 -03:00
Thibault Saunier
9a2ba1f9f7
Check in TimelineObject what tracks are supported before creating TrackObject-s
...
We used to do it in TimelineFileSource which does not make sense.
At the same time we set AUDIO | VIDEO as default supported types as it is more
likely to be what subclasses support. If it is not the case, they need to
specify it as shown in ges-timeline-custom-timeline-source.c
+ Fix the tests accordingly
2012-12-19 18:59:51 -03:00
Thibault Saunier
346a01b4eb
tests: First filesource test port to assets
2012-12-19 18:59:50 -03:00
Thibault Saunier
61f298690d
Examples: Use GESTimelineTestSource instead of GESCustomTimelineSource in test1
2012-12-19 18:59:50 -03:00
Thibault Saunier
3afd8fb88a
example: Port the concatenate example to assets
2012-12-19 18:59:48 -03:00
Volodymyr Rudyi
a1b946ab92
examples: Add basic examples of asset
2012-12-19 18:59:48 -03:00
Thibault Saunier
9434f69aba
tests: implement GESMetaContainer tests
...
Co-Authored-By: Paul Lange <palango@gmx.de>
2012-12-19 11:45:38 -03:00
Thibault Saunier
7c3b587015
test-utils: Add some more utilities
2012-12-19 11:45:38 -03:00
Thibault Saunier
8b7b98a871
Minor fixes to the test utils
2012-12-19 11:45:38 -03:00
Thibault Saunier
97973f1eba
Remove the GESKeyFileFormatter
...
It was using deprecated URI, and can not be used in real life anymore.
Also remove the ges_formatter_default_new method ges_formatter_new_for_uri
that are useless now
2012-12-19 11:45:37 -03:00
Thibault Saunier
f8037f857d
trackobject: Properly rename get/set_child_property
...
We used to have a ges_track_object_get/set_child_property that was in
fact letting user set/get various properties at once, rename it to
get/set_properties, and implement:
API:
ges_track_object_get_child_property (GESTrackObject *object, const gchar
*property_name, GValue * value);
ges_track_object_set_child_property (GESTrackObject *object, const gchar
*property_name, GValue * value);
2012-12-19 11:44:26 -03:00
Tim-Philipp Müller
426fffb6c3
Fix FSF address
2012-11-04 00:25:20 +00:00
Thibault Saunier
35cae2c80c
tests: Move common code to test-utils
2012-09-25 15:10:35 +02:00
Thibault Saunier
b731a42145
tests: Implement tests for ges_formatter_can_load_uri
2012-09-25 15:10:35 +02:00
Thibault Saunier
6462b86ac4
tests: Add some utils for test writing
2012-09-25 15:10:35 +02:00
Thibault Saunier
52edf1704d
formatter: Add GError everywhere needed in the API
...
We should give as much information as possible to the user when serialization/deserialization doesn't work.
2012-09-23 02:37:12 +02:00
Thibault Saunier
4302188011
tests: Fix tests
...
In TimelineTitleSource We do not add a TrackAudioTestSource in the audio track
anymore as it was a hack to work around the fact that we used not to have gap
support, now we do, remove related tests
2012-08-26 13:38:08 -07:00
Sebastian Dröge
c537fa12bb
examples: Use GRegex instead of POSIX regex
...
They are not available on Windows.
2012-08-09 10:16:05 +02:00
Sebastian Dröge
6a0ec3b14d
examples: Fix linking by passing -export-dynamic in the right variable
2012-05-30 13:41:17 +02:00
Thibault Saunier
0102e69571
tests: Fix backgroundsource test
2012-05-26 17:53:36 -04:00
Thibault Saunier
f32fdf13b7
Merge remote-tracking branch 'origin/0.10'
...
Conflicts:
bindings/python/ges.defs
ges/ges-screenshot.c
ges/ges-track-video-transition.c
2012-05-26 17:00:50 -04:00
Thibault Saunier
8fbe9c90b6
tests: Add basic gaps tests
2012-05-19 13:57:35 -04:00
Thibault Saunier
2c6e4f2e69
Merge remote-tracking branch 'origin/0.10'
...
Conflicts:
bindings/python/ges.defs
ges/ges-track-video-transition.c
2012-05-02 22:03:51 -04:00
Mathieu Duponchelle
1e6c82fb3c
ges-track-video-transition: Enables switching from crossfade to smpte and vice versa
...
Fix the tests properly
2012-05-02 20:18:09 -04:00
Tim-Philipp Müller
f7a26c704e
examples: create URIs properly from filenames
2012-05-01 19:05:51 +01:00
Tim-Philipp Müller
d5494acf30
.gitignore: ignore more
2012-05-01 18:51:30 +01:00
Thibault Saunier
b1a8596256
Merge remote-tracking branch 'origin/0.10'
...
Conflicts:
bindings/python/ges-types.defs
bindings/python/ges.defs
bindings/python/ges.override
configure.ac
ges/ges-timeline.c
2012-04-25 17:54:36 -04:00
Thibault Saunier
d3f210fe6d
tests: Add a testsuite for the new timeline edition API
2012-04-23 22:03:11 -04:00
Thibault Saunier
2fd5364927
ges: Add a timeline edition mode API
...
+ timeline: Add a snapping-distance property
+ Bump the GLib dependency to 2.28 in the mean time as we need some functions from GSequence that only landed
+ Update the testsuite accordingly
API: GESTimeline:snapping-distance property
API: ges_timeline_object_edit
API: ges_timeline_object_ripple
API: ges_timeline_object_ripple_end
API: ges_timeline_object_roll_start
API: ges_timeline_object_roll_end
API: ges_timeline_object_trim_start
API: ges_track_object_edit
API: GESEdge enum
API: GESEditMode enum
2012-04-23 22:03:11 -04:00
Thibault Saunier
7cced397b6
tests: Add a basic test for the timeline_object_split method
2012-04-23 20:33:58 -04:00
Thibault Saunier
672a162062
Merge branch '0.10'
...
Conflicts:
bindings/python/ges.defs
2012-04-07 22:31:23 -04:00
Thibault Saunier
4c26b89e3c
ges: Move the max-duration property from TrackFileSource to TrackObject
...
This property was firstly added to TrackFileSource, but in the end, it makes
more sense for it to be directly in TrackOject as it can be usefull in other cases.
2012-04-07 22:24:55 -04:00
Sebastian Dröge
e2e2f1261e
ges: Update versioning
2012-04-04 14:50:23 +02:00
Tim-Philipp Müller
3ecd02cc24
Merge remote-tracking branch 'origin/master' into 0.11
2012-03-13 13:52:32 +00:00
Tim-Philipp Müller
c3d9cb2b22
tests: fix weird windowsy code in save_and_load unit test
...
Fixes compiler error about FILENAME_MAX in 0.11
2012-03-13 13:51:30 +00:00
Tim-Philipp Müller
5d02075d9b
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
bindings/python/Makefile.am
bindings/python/ges-types.defs
bindings/python/ges.defs
bindings/python/ges.override
bindings/python/gesmodule.c
bindings/python/testsuite/test_textoverlay.py
2012-03-12 15:25:49 +00:00
Tim-Philipp Müller
1da4d71431
tests: ges_track_new() takes ownership of caps, so can't use GST_CAPS_ANY
2012-02-10 19:44:49 +00:00
Tim-Philipp Müller
404fcc8bed
tests: port tests to new raw caps
2012-02-10 19:42:16 +00:00
Tim-Philipp Müller
91af8e1353
examples, ges-launch: remove deprecated g_thread_init()
...
Not needed any more with recent glib versions
2012-02-10 19:17:38 +00:00
Edward Hervey
ee237ec523
ges: Various doc fixups and cleanups
2012-01-12 16:34:57 +01:00
Thibault Saunier
826d4f9a71
ges: Bump layer height from 10 to 1000
2012-01-11 11:56:16 -03:00
Thibault Saunier
0c872c4340
ges: Do not add any audio source when still image
...
We now have a backgroud so no problem with that.
Fix the testsuite accordingly
Fix #657514
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
0e11ec4137
ges: add an auto-transition to the layer
...
API: GESTimelineLayer.auto_transition property
2012-01-11 11:56:15 -03:00
Mathieu Duponchelle
32ce69684c
ges: add track objects to the track before the track-object-added is emitted
...
NOTE: The caller of ges_timeline_object_create_track_object now needs to add it to
the timeline_object after calling the function.
Fix the testsuite to support that accordingly
2012-01-11 11:56:14 -03:00
Mathieu Duponchelle
4eae7e542d
examples: Add a load project option to ges-ui
2012-01-11 11:56:14 -03:00
Mathieu Duponchelle
c210650256
test: Add a pitivi formatter test
...
For now we requiere a project files and media files to be on the host system,
this is not optimal and we should rework that in the future.
2012-01-11 11:56:14 -03:00
Thibault Saunier
6386247cc4
ges: Move supported formats from filesource to timelineobject
...
This is usefull by any subclass of GESTimelineObject
+ Bind it in python
+ Fix the keyfile formatter tests
API: ges_timeline_object_set_supported_formats
API: ges_timeline_object_get_supported_formats
2012-01-11 11:56:14 -03:00
Thibault Saunier
09e0d1bbe2
test: Better layer priority handling testing
...
We use the ges_timeline_object_move_to_layer new function to make sure it works,
and that everything goes well on priority handling with this new method
2012-01-11 11:56:14 -03:00
Thibault Saunier
15c816569b
ges: Handle TimelineLayer and its contained TimelineObject priorities properly
...
GESTimelineObject.priority is now actually relative to its containing layer
priority.
Test it in the layer test-suite.
2012-01-11 11:56:13 -03:00
Edward Hervey
737acd803e
tools: Add proper include for g_printf
2011-12-30 17:20:23 +01:00
Edward Hervey
0fe25be4cb
tests/thumbnails: Updates
2011-12-30 17:18:40 +01:00
Edward Hervey
bcb4496b35
tools: Add proper include for g_printf
2011-12-30 17:18:18 +01:00
Edward Hervey
afc400b31a
tests/save_and_load: Cleanups and leak fixing
2011-12-30 17:17:11 +01:00
Edward Hervey
ee0cf0b8aa
tests/effects: Update for new 'parent' property in objects
2011-12-30 17:16:29 +01:00
Andoni Morales Alastruey
e266d52acf
Don't build the examples if it's disabled in configure
...
Fixes : #657707 .
2011-08-31 11:05:02 -07:00
Luis de Bethencourt
237f19d63a
GESTimelineTitleSource/TrackTitleSource: add xpos/ypos setting
...
Vertical and horizontal position properties of the title source
can be set and get.
2011-08-09 19:15:18 +02:00
Luis de Bethencourt
8704011597
GESTimelineTitleSource/TrackTitleSource: add color setting
...
Color property of the text overlay can be set and get.
2011-08-09 19:13:37 +02:00
Luis de Bethencourt
18d588ff1e
examples: add file inpoints and summary to overlay example
2011-08-09 17:39:02 +02:00
Luis de Bethencourt
be381792aa
examples: add xpos and ypos options to overlay example
2011-08-08 18:57:37 +02:00
Luis de Bethencourt
63a82c5274
GESTimelineTextOverlay/TrackTextOverlay: add xpos/ypos setting
...
Vertical and horizontal position properties of the text overlay
can be set and get.
2011-08-08 18:44:57 +02:00
Luis de Bethencourt
0292e86b9b
examples: add color option to overlay example
2011-08-03 12:37:14 +02:00
Luis de Bethencourt
ba5babd474
GESTimelineTextOverlay/TrackTextOverlay: add color setting
...
Color property of the text overlay can be set and get.
2011-08-03 12:20:27 +02:00
Luis de Bethencourt
db58dc1569
tests: selectable audio format/container in test4
...
now users can select the desired rendering audio format and
container through --aformat and --format, like in ges-launch.
2011-07-01 19:30:01 +02:00
Luis de Bethencourt
882342906f
tests: fix TEST_URI for filesource tests
2011-07-01 18:13:08 +02:00
Luis de Bethencourt
f166c47ed5
examples: fix output_uri in test4
...
clean the make_ogg_vorbis_profile () code.
remove extra second of execution time.
clean some comment typos.
2011-06-29 16:17:00 +02:00
Luis de Bethencourt
6694b28188
examples: remove extra second in test2 and test3
...
remove unnecessary sources GList.
and fix comment typos as well.
2011-06-27 21:25:40 +02:00
Thibault Saunier
3195bd1303
GESTrackkEffect: Fix Leaks
2011-05-07 12:33:33 +02:00
Edward Hervey
de42c1c7f2
tests: Add effects to ignored files
2011-05-06 11:58:02 +02:00
Thibault Saunier
3b13d0fee0
ges-ui: add effects
2011-05-06 10:39:05 +02:00
Thibault Saunier
54ed9b1709
GESTrackObject: add a ges_track_object_list_children_properties method
...
test: Test the new method, and also set/get_child_property_by_spec
2011-05-06 10:39:05 +02:00
Thibault Saunier
0e9658812e
GESTrackObject: Implement a get/set_child_property_by_spec and get/set_child_property_valist methods
...
Reimplement the get/set_property accordingly
2011-05-06 10:39:05 +02:00
Thibault Saunier
7f3e64bd82
GESTimelineObject: Change the get_effects method to get_top_effects.
2011-05-06 10:39:04 +02:00
Thibault Saunier
9dccf8d475
GESTimelineObject: use GESTrackEffect as base classe for effects and not GESTrackOperation.
2011-05-06 10:39:04 +02:00
Thibault Saunier
ecb280c85e
TrackParseLaunchEffect: rename ges_track_parse_launch_effect_new_from_bin_desc method to ges_track_parse_launch_effect_new
2011-05-06 10:39:03 +02:00
Thibault Saunier
4b4439ad8a
Make GESTimelineEffect abstract and move its implementation to GESTimelineParseLaunchEffect
...
test: Adapte the test suite to suite the new API
2011-05-06 10:39:03 +02:00
Thibault Saunier
ea3625f4b9
Make GESTrackEffect abstract and move its implementation to GESTrackParseLaunchEffect
...
test: update the effect test suite
2011-05-06 10:39:03 +02:00
Thibault Saunier
da717d6b25
GESTrackObject: add the deep-notify signal
...
tests: test the new signal
2011-05-06 10:39:03 +02:00
Thibault Saunier
68c1ade22d
GESTimelineObject: Emit signal when adding and removing effects
...
tests: test that those signals are actually well sent
2011-05-06 10:39:03 +02:00
Thibault Saunier
3f4a4a7134
GesTrackObject: add the ges_track_object_get_child_property method
...
test: Test this new method
design: change the design file to fit the implementation
2011-05-06 10:39:02 +02:00
Thibault Saunier
d9c07a4ed4
GESTrackObject: add a ges_track_object_set_child_property_method
...
test: Test the new method
2011-05-06 10:39:02 +02:00
Thibault Saunier
28ea2cf7a1
tests: use the AgingTv as testing effects instead of identity
...
Lets us try the new property handling implementation in TrackObject
2011-05-06 10:39:02 +02:00
Thibault Saunier
d18c9fe8fb
GESTimelineObject: add a ges_timeline_object_set_top_effect_priority method
...
Lets the user have a minimum of control over effects priorities
2011-05-06 10:39:02 +02:00
Thibault Saunier
1a7081ade3
test: Better priorities height setting testing
2011-05-06 10:39:02 +02:00
Thibault Saunier
861b724cd6
TimelineEffect: implement the create_track_object vmethod
...
tests: test the new vmethod
2011-05-06 10:39:01 +02:00
Thibault Saunier
72873aed92
test: check the height of a TimelineObject when adding effects to it
2011-05-06 10:39:01 +02:00
Thibault Saunier
ca2d5bca2b
TimelineObject: add the ges_timeline_object_get_top_effect_position method
...
tests: adapt the effect testsuite to use this function
docs: add the method to the documentation
2011-05-06 10:39:00 +02:00
Thibault Saunier
5e84bf8fe3
TimelineObject: add ges_timeline_object_get_effects API
...
tests: Test the new TimelineObject API
docs: add the corresponding fonction
2011-05-06 10:39:00 +02:00
Thibault Saunier
647f7c34d9
effects: Make TrackEffect implementation corresponding to the new effect API description
...
Make the effects testsuite correspond to the new API
Fixe a few compilation issues due to TrackEffect
2011-05-06 10:38:59 +02:00
Thibault Saunier
6e5d16ac6d
GESTrackEffect: add private struct
2011-05-06 10:38:58 +02:00
Thibault Saunier
63e901ed12
GESTrackEffect: implementation of this new class
2011-05-06 10:38:58 +02:00
Edward Hervey
027b454926
examples: Make sure we don't end up using NULL values
2011-03-15 14:05:07 +01:00
Edward Hervey
c8d77f2360
examples: Remove unused code
2011-03-15 14:04:49 +01:00
Sebastian Dröge
94d448cace
examples: Fix uninitialized variable compiler warning with gcc 4.6
2011-01-27 17:47:17 +01:00
Edward Hervey
6b8f736e21
tests: Unref the GList returned by ges_timeline_get_layers...
...
... in addition to the content themselves
2011-01-10 11:18:27 +01:00
Thibault Saunier
98b51d8cd1
TimelineFileSource: Create instance private and move private variables to it
...
Fixe/Add getter and setters methods for those variables
Fixup documentation
2011-01-08 22:45:44 +01:00
Thibault Saunier
3d6764d6e9
Timeline: Add instance private and Move private variables to it
...
Fixe/Add getter methods to get those variables
Fixup documentation
2011-01-08 22:45:44 +01:00
Thibault Saunier
e793cb6f9c
TimelineTestSource: Move private variables to instance private
...
Fixe/Add getter and setter methods for those variables
Fixup documentation
2011-01-08 22:45:44 +01:00
Thibault Saunier
595e6434cb
TimelineTitleSource: Move private variables to instance private
...
Fixe/Add getter and setters methods for those variables
Fixup documentation
2011-01-08 22:37:52 +01:00
Thibault Saunier
b8493f8896
TrackAudioTestSource: Move private variables to instance private
...
Add getter methods to get those variables
Fixup documentation
2011-01-08 22:32:53 +01:00
Thibault Saunier
e042aa30e4
TrackTextOverlay: Move private variables to instance private
...
Add getter methods to get those variables
Add/Fixup documentation
2011-01-08 22:32:53 +01:00
Tim-Philipp Müller
84a17a3d12
test: make unit tests compile and work in uninstalled setup
2011-01-08 01:40:18 +00:00
Edward Hervey
7c255ff247
TrackTitleSource: Move private variables to instance private
...
Add getter methods to get those variables
Add/Fixup documentation
2011-01-06 12:04:53 +01:00
Edward Hervey
2d9f03fde0
TrackVideoTestSource: Move private data to instance private
...
Add a getter for the pattern
Document methods
2011-01-06 11:29:44 +01:00
Edward Hervey
58afc44fd7
TrackVideoTransition: Move private variable to instance private
...
Also add/fixup methods to get/set the transition type and document them.
2011-01-06 11:21:51 +01:00
Edward Hervey
1450d539d4
GESTimelineObject: Subclass from GInitiallyUnowned
...
The floating reference will be owned by the Layer
2010-12-20 12:03:48 +01:00
Edward Hervey
11887e0058
GESTimelineLayer: Subclass from GInitiallyUnowned
...
The floating reference will be owned by the Timeline
2010-12-20 12:03:48 +01:00
Edward Hervey
c90f399bfb
TimelineObject: Hold a reference to the controlled TrackObject
2010-12-20 12:03:48 +01:00
Edward Hervey
648f8802db
tests: Put clearer names on tests
...
Makes it easier to figure out which test failed :)
2010-12-20 12:03:48 +01:00
Brandon Lewis
42f4253ee2
GESSimpleTimelineLayer: add test for _index() method
2010-12-16 19:37:06 +01:00
Edward Hervey
e970c86753
GESTimelineObject: Add mapping/offset support [start/priority properties]
...
Allows moving independently (or not) timelineobjects and trackobjects and
have them synchronized with the offsets taken into account.
Right now only the start and priority properties are synchronized. The duration
and in-point properties will require more thoughts.
2010-12-16 19:29:14 +01:00
Edward Hervey
e6aeb97040
GESTrackObject: Add a 'locked' property for position synchronization
...
And update all code using it
2010-12-16 16:27:26 +01:00
Edward Hervey
8ca6f66f4c
GESTrackObject: Hide more variables and provide accessors for them
2010-12-16 15:00:46 +01:00
Edward Hervey
5a170091e6
GESTimelineLayer: Hide the object list and priority
...
Add needed setters/getters
2010-12-16 12:41:26 +01:00
Edward Hervey
7ef6f365d9
GESSimpleTimelineLayer: _nth() returns a const
...
The refcount isn't incremented.
2010-12-15 19:18:16 +01:00
Edward Hervey
ed6b2ce4c4
GESTrack: Make more properties private
...
And ensure exported symbols are properly documented and have
argument checking.
2010-12-15 19:05:48 +01:00
Brandon Lewis
4dae5c83f4
GESSimpleTimelineLayer: add test for _nth() method
2010-12-15 18:01:33 +01:00
Edward Hervey
0486623e30
test: Disable the text_properties_in_layer test until it's properly implemented
2010-12-15 15:56:38 +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
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
a5261d23d2
tests: Make sure gst_bin_add succeeds
...
And detect when we're trying to add contents to a gnlsource which
already has something
2010-12-09 17:43:08 +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
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
Brandon Lewis
2b63a52a6a
Tests: fix CMP_FAIL on 32-bit machines
2010-12-03 12:39:42 +01:00
Edward Hervey
9e1877a083
tests: Make sure we specify guint64 with g_object_set arguments
...
Yup, had missed those because of weird macros :(
2010-12-02 12:28:15 +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
098a2294f3
tests: Make sure we specify guint64 with g_object_set arguments
...
Avoids crashers on 32bit machines
2010-12-02 11:54:03 +01:00
Brandon Lewis
107b5fcf5e
ges-ui: allow enabling/disabling audio/video tracks
2010-11-27 18:14:06 +01:00
Brandon Lewis
c91d1dd32d
ges-ui: implement save as command in gtk demo
2010-11-27 18:12:50 +01:00