X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=ChangeLog;h=165f1ca2ed717efebd4ddf2c0c92f554e01c3660;hb=b30a16ff00cf24e7fc2fcfa65cd2a8e99a72410d;hp=b7b02d09703e85fb1fe19d6222ca8424650527f7;hpb=da581059b0034ed42185f01af414601862e04c45;p=platform%2Fupstream%2Fgstreamer.git diff --git a/ChangeLog b/ChangeLog index b7b02d0..165f1ca 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,26 +1,735 @@ +=== release 1.19.2 === + +2021-09-23 01:35:39 +0100 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * gst-editing-services.doap: + * meson.build: + Release 1.19.2 + +2021-08-10 17:10:43 -0400 Thibault Saunier + + * tests/check/meson.build: + * tools/ges-launcher.c: + * tools/ges-validate.c: + * tools/utils.h: + launch: Make enabling validate opt-in + Instead of opt-out. + Part-of: + +2021-08-12 23:37:59 +0200 Mathieu Duponchelle + + * ges/ges-uri-source.c: + ges-uri-source: fix object debug + Part-of: + +2021-08-10 23:54:47 +0200 Mathieu Duponchelle + + * docs/gst_plugins_cache.json: + * plugins/nle/nlecomposition.c: + * tools/ges-launcher.c: + * tools/utils.h: + ges-launcher: add option to forward tags + Part-of: + +2021-08-10 23:25:06 +0200 Mathieu Duponchelle + + * tools/ges-launcher.c: + * tools/utils.h: + ges-launcher: allow using a clip to determine the rendering format + This includes both topology and profile + Part-of: + +2021-08-10 23:23:39 +0200 Mathieu Duponchelle + + * tools/ges-launcher.c: + launcher: don't start the pipeline before we're done updating it + Since 70e3b8ae2a8d13b50f52305b71cfa4b590bb63f6 the CommandLineFormatter + also emit "loaded" so we ended up doing this twice, once + as before in `run_pipeline` and another time in the `project:loaded` + callback. + Part-of: + +2021-08-10 23:20:21 +0200 Mathieu Duponchelle + + * tools/ges-launcher.c: + ges-launcher: don't unref transfer none objects + Part-of: + +2021-07-21 19:31:53 +0200 Piotrek Brzeziński + + * ges/ges-clip.c: + * tests/check/ges/clip.c: + clip: Copy trackelement's metadata upon splitting + Part-of: + +2021-07-09 16:15:01 +0200 Piotrek Brzeziński + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + xml-formatter: Add support for metadata on sources + Part-of: + +2021-07-09 16:14:19 +0200 Piotrek Brzeziński + + * ges/ges-marker-list.c: + * tests/check/ges/markerlist.c: + marker-list: Add flags (de)serialization + Part-of: + +2021-08-03 11:31:07 +0200 Stéphane Cerveau + + * ges/ges-pipeline.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + ges: freeze commit during render + In render mode, do not commit the timeline + as the position can be invalid and lead to + missing frames. + Fixes #136 + Part-of: + +2021-08-05 22:59:07 +0200 Piotrek Brzeziński + + * ges/ges-timeline-tree.c: + timeline: Check if metadata value holds object on marker snapping + Part-of: + +2021-06-20 23:51:02 +0200 Piotrek Brzeziński + + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-internal.h: + * ges/ges-marker-list.c: + * ges/ges-marker-list.h: + * ges/ges-timeline-tree.c: + * tests/check/ges/markerlist.c: + * tests/check/ges/timelineedition.c: + timeline: Implement snapping to markers + Part-of: + +2021-06-16 17:12:11 +0200 François Laignel + + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + Check mandatory ClockTime arguments + Part-of: + +2021-05-22 18:41:08 +0100 Tim-Philipp Müller + + * ges/ges-pitivi-formatter.c: + * meson.build: + Use g_memdup2() where available and add fallback for older GLib versions + Size is constant here, so no problem in any case, but g_memdup() is + now deprecated and we don't want deprecation warnings. + Part-of: + +2021-06-01 15:29:10 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.19.1 === -2021-06-01 00:16:41 +0100 Tim-Philipp Müller +2021-06-01 00:16:05 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: - * gst-omx.doap: + * gst-editing-services.doap: * meson.build: Release 1.19.1 -2020-11-04 18:48:13 +0530 Nirbheek Chauhan +2021-05-18 11:42:22 -0400 Thibault Saunier + + * ges/ges-uri-clip.c: + uriclip: Add an error message when creating a clip failed + Part-of: + +2021-05-18 11:31:19 -0400 Thibault Saunier + + * examples/c/simple1.c: + examples: c: Sensibly simplify the simple example + Part-of: + +2021-05-18 11:16:02 -0400 Thibault Saunier + + * examples/python/gst-player.py: + * examples/python/simple.py: + examples: python: Simplify the simple example + We shouldn't show assets usage in the simplest example we have + as it is useful for more advanced use cases. + Part-of: + +2021-05-21 15:26:03 -0400 Thibault Saunier + + * tests/check/scenarios/check_keyframes_in_compositor_two_sources/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/complex_effect_bin_desc/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/edit_while_seeked_with_stop/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop.check_clock_sync/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-audiosink-sink-expected: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-videosink-sink-expected: + tests: Update expectation files with sorted structure fields + +2021-05-20 16:47:41 +0100 Philippe Normand + + * tests/check/ges/test-utils.c: + * tests/check/meson.build: + * tests/check/nle/complex.c: + * tests/check/nle/nlecomposition.c: + * tests/check/nle/nleoperation.c: + * tests/check/nle/nlesource.c: + * tests/check/nle/seek.c: + * tests/check/nle/simple.c: + * tests/check/nle/tempochange.c: + * tests/check/scenarios/check_edit_in_frames_with_framerate_mismatch.scenario: + * tests/check/scenarios/check_layer_activness_gaps.scenario: + tests/check: Use fake{audio,video}sink + The tests already depend on -bad, so this should be OK. + Part-of: + +2021-05-20 16:45:43 +0100 Philippe Normand + + * tools/ges-launcher.c: + launcher: Switch to fake{audio,video}sink + Simplifies the code a bit, though introducing runtime dependency on -bad. + Part-of: + +2021-05-18 21:31:38 -0400 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-structured-interface.c: + * tests/check/meson.build: + * tests/check/scenarios/set-layer-on-command-line.validatetest: + structure-interface: Convert fields type as much as possible + Since 60922c02889cf1ebcfaca4501936be689c342e01 we force string in the + command line parser which broke setting layers on clips for example + Part-of: + +2021-05-18 22:04:48 -0400 Thibault Saunier + + * ges/ges-validate.c: + validate: Add support to check properties of object properties + And recursively + Part-of: + +2021-04-23 16:08:48 +0900 Seungha Yang + + * ges/ges-smart-video-mixer.c: + * ges/ges-utils.c: + smart-mixer: Add support for d3d11compositor and glvideomixer + Some hardware compositor elements (d3d11compositor and glvideomixer) + consist of wrapper bin with internal mixer element. + So, we need special handling for such elements. + Part-of: + +2021-04-24 00:55:45 +0900 Seungha Yang + + * ges/gstframepositioner.c: + framepositioner: Install operator property only when compositor is used + Other compositor/mixer elements might not have the property. For instance, + d3d11compositor and glvideomixer define graphics API specific blending + properties, instead of simple "operator" one. + Part-of: + +2021-05-12 17:43:46 -0400 Doug Nazar + + * ges/ges-xml-formatter.c: + xml-formatter: Write xml directly to file + Skip allocation of temp buffer (which was undersized). + Part-of: + +2021-05-01 19:18:15 -0400 Doug Nazar + + * tests/check/meson.build: + tests: Run ges-launch tests non-interactively + It's not needed for the tests and fixes an occasional issue where + the terminal is left in -echo mode. + Part-of: + +2021-02-24 23:49:06 -0300 Thibault Saunier + + * ges/ges-track-element.h: + track-element: Fix and cleanup annotations + Making the class subclass able by bindings + Part-of: + +2021-02-24 23:37:28 -0300 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-audio-source.h: + * ges/ges-audio-test-source.c: + * ges/ges-audio-uri-source.c: + * ges/ges-image-source.c: + * ges/ges-multi-file-source.c: + * ges/ges-source.h: + * ges/ges-title-source.c: + * ges/ges-track-element.h: + * ges/ges-video-source.c: + * ges/ges-video-source.h: + * ges/ges-video-test-source.c: + * ges/ges-video-uri-source.c: + ges: Move GESVideo/AudioSource::create_source to GESSource + Deprecating the old variants which were not introspectable + and cleaning a bit the API. + Part-of: + +2021-04-21 10:47:51 +0200 François Laignel + + * docs/design/encoding.txt: + * ges/ges-effect-asset.c: + * ges/ges-pipeline.c: + * ges/ges-smart-video-mixer.c: + * ges/gstframepositioner.c: + * plugins/nle/nleoperation.c: + Use gst_element_request_pad_simple... + Instead of the deprecated gst_element_get_request_pad. + Part-of: + +2021-04-28 00:57:35 +0900 Seungha Yang + + * examples/c/concatenate.c: + * examples/c/ges-ui.c: + * examples/c/gessrc.c: + * examples/c/multifilesrc.c: + * examples/c/overlays.c: + * examples/c/play_timeline_with_one_clip.c: + * examples/c/simple1.c: + * examples/c/test2.c: + * examples/c/test3.c: + * examples/c/test4.c: + * examples/c/text_properties.c: + * examples/c/thumbnails.c: + * examples/c/transition.c: + * ges/ges-asset.c: + * ges/ges-timeline-tree.c: + * ges/ges-uri-asset.c: + * ges/ges.c: + * tests/benchmarks/timeline.c: + * tests/check/ges/test-utils.c: + * tools/ges-launcher.c: + * tools/ges-validate.c: + * tools/utils.c: + ges: Port to gst_print* + Sync with gst-launch, as g_print* will print broken string on Windows. + See also + https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/258 + Part-of: + +2021-04-23 16:42:26 +0900 Seungha Yang + + * ges/gstframepositioner.c: + framepositioner: Allow ANY caps features + framepositioner will not touch raw video data and therefore should + be able to accept ANY caps features + Part-of: + +2021-04-23 09:01:35 -0500 reed.lawrence + + * ges/gstframepositioner.c: + gstframepositioner: fix operator magic number + In gst_frame_positioner_init, there was the magic number 1 + when assigning the default value of the operator. Now it + has the default value for the operator pulled from the + compositor. + Part-of: + +2021-04-21 18:12:30 -0500 reed.lawrence + + * ges/ges-smart-video-mixer.c: + * ges/ges-video-source.c: + * ges/gstframepositioner.c: + * ges/gstframepositioner.h: + gstframepositioner: added 'operator' property + The 'operator' property was added to gstframepositioner so that + blending modes in the compositor could be accessed. This was done + by accessing the pad of the compositor class, and referencing the + 'operator' property in that pad. Getters and Setters were also + created so that the 'operator' could be accessed by software that + is based on GES, such as Pitivi. + Related to but does not close Issue + https://gitlab.gnome.org/GNOME/pitivi/-/issues/2313 + Part-of: + +2021-04-14 12:58:30 +0900 Seungha Yang + + * ges/gstframepositioner.c: + framepositioner: Fix runtime warning + GstCaps is not a GObject! + Part-of: + +2021-04-08 15:35:30 -0500 Adam Leppky + + * ges/ges-title-source.c: + titleclip: Expose draw-shadow child property + Part-of: + +2021-03-19 17:21:01 +1100 Matthew Waters + + * ges/ges-smart-video-mixer.c: + * ges/gstframepositioner.c: + * plugins/nle/nlecomposition.c: + * plugins/nle/nleobject.c: + gst: don't use volatile to mean atomic + volatile is not sufficient to provide atomic guarantees and real atomics + should be used instead. GCC 11 has started warning about using volatile + with atomic operations. + https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719 + Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868 + Part-of: + +2021-03-08 14:50:52 -0300 Thibault Saunier + + * ges/ges-clip.h: + ges: doc: Fix wrong vmethod links + +2021-03-08 09:56:49 -0300 Thibault Saunier + + * ges/ges-group.c: + group: Use proper group constructor + Otherwise we might en up having a group which is not backed by any asset + leading to possible assertion as this should never happen (see + https://gitlab.gnome.org/GNOME/pitivi/-/issues/2526) + Part-of: + +2021-02-17 21:34:22 +1100 Jan Schmidt + + * tests/check/scenarios/check_keyframes_in_compositor_two_sources.validatetest: + * tests/check/scenarios/check_keyframes_in_compositor_two_sources/flow-expectations/log-videosink-sink-expected: + Update check_keyframes_in_compositor_two_sources + Update the validate expectation for videoconvert caps changes in + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1033 + Part-of: + +2021-01-19 11:00:22 -0300 Thibault Saunier + + * ges/ges-project.c: + project: Plug a leak + Part-of: + +2021-01-19 10:29:09 -0300 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Properly report error parsing restriction caps + Part-of: + +2021-01-15 15:29:47 -0300 Thibault Saunier + + * tests/check/meson.build: + * tests/check/scenarios/check-clip-positioning.validatetest: + test: Check clip positioning works when specifying track size + Make use of the new 'timeline specification' support in .validatetest + files. + Part-of: + +2021-01-15 15:28:34 -0300 Thibault Saunier + + * tools/ges-launcher.c: + tools: Fix some naming + Part-of: + +2021-01-15 15:28:17 -0300 Thibault Saunier + + * tools/ges-launcher.c: + tools: Reindent options + Part-of: + +2021-01-15 15:27:30 -0300 Thibault Saunier + + * tools/ges-launcher.c: + launch: Add encoding profiles to the project + So it is serialized on `--save` + Part-of: + +2021-01-15 15:26:36 -0300 Thibault Saunier + + * tools/ges-launcher.c: + * tools/ges-validate.c: + * tools/ges-validate.h: + * tools/utils.c: + validate: Handle passing timeline desc in .validatetest files + Part-of: + +2021-01-15 15:25:12 -0300 Thibault Saunier + + * plugins/ges/gesbasebin.c: + * plugins/ges/gesdemux.c: + plugin: Fix `is-ges-timeline` registration + We need to register it for all subclasses. + Part-of: + +2021-01-15 15:23:13 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + command-line-formatter: Stop uselessly looping over options + Part-of: + +2021-01-15 15:21:06 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-command-line-formatter.h: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + * plugins/ges/gessrc.c: + * tools/utils.c: + command-line-formatter: Add a way to format timelines using the format + Part-of: + +2021-01-15 15:03:20 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * plugins/ges/gessrc.c: + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/utils.c: + * tools/utils.h: + ges: Use a `ges:` uri to define timeline from description + This way the command line formatter actually uses an URI and not + an ugly hack where were passing a random string instead of an URI. + This also allows the `gessrc` element to handle timelines described + in its URI meaning that you can now use, for example: + gst-play-1.0 "ges:+test-clip blue d=4.0 + Part-of: + +2021-01-15 09:27:31 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-structure-parser.c: + * ges/parse.l: + ges: Add keyframe support to the command line formatter + Part-of: + +2021-01-15 09:25:11 -0300 Thibault Saunier + + * ges/ges-structured-interface.c: + * ges/ges-structured-interface.h: + * ges/ges-validate.c: + structured-interface: Move set_control_source from ges-validate + So it can be reused in the command line formatter. + Part-of: + +2021-01-15 09:13:59 -0300 Thibault Saunier + + * ges/ges-structured-interface.c: + structured-interface: Factor out method to get element to set property + Used to set properties or keyframes + Part-of: + +2021-01-15 08:49:20 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + command-line-formatter: Reindent command line options array + Part-of: + +2021-01-15 08:47:10 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-xml-formatter.c: + formatter: Use the new `GstEncodingProfile:element-properties` property + Cleaning up the code and making everything simpler. + Part-of: + +2021-01-14 08:05:59 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-validate.c: + ges: Minor debug logging level and typo fixes + Part-of: + +2021-01-12 15:55:52 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-structure-parser.c: + * ges/ges-structured-interface.c: + * ges/ges-structured-interface.h: + * ges/parse.l: + * tools/ges-launcher.c: + command-line-formatter: Add track management to timeline description + Instead of having it all handled by the tool, this way we can + set the restriction before clips are added to the timeline, + leading to better behavior in term of video images placement + in the scene. + Without that we would have the clips positioned before setting the + restriction caps which leads to weird behavior for the end users. + Part-of: + +2021-01-13 15:18:04 -0300 Thibault Saunier + + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + test-source: Respect asset natural size + We had cases where the frame positioner had the default natural size for + video test sources instead of the user provided one. + Part-of: + +2021-01-29 20:42:26 +0100 Mathieu Duponchelle + + * tools/ges-launcher.c: + ges-launcher: do not set rendering details too early + It looks like the _set_rendering_details call is superfluous + in _startup(), as it will get called in run_pipeline. + The problem with calling it before timeline_set_user_options + is that we are going to fail creating a smart profile if + the user selected eg --track-types=video, as the get_smart_profile + method compares the tracks in the asset with those on the timeline. + Reproduce with a video-only clip: + ges-launch-1.0 --track-types=video +clip file://$PWD/jelly.mp4 \ + inpoint=15.0 -o foo.mp4 --smart-rendering + Part-of: + +2019-10-29 17:03:14 +0000 Henry Wilkes + + * ges/ges-command-line-formatter.c: + * ges/ges-structure-parser.c: + * ges/ges-structure-parser.h: + * ges/ges-structured-interface.c: + * ges/parse.l: + ges-structure-parser: force string types + Force a string type for structure values obtained through parsing a + serialized timeline by inserting a (string) specifier after a '=', + rather than relying on gst_structure_from_string guessing the type. + As such, the functions that extract clocktimes and properties are + modified to accept string value types. + Part-of: + +2019-10-29 16:29:24 +0000 Henry Wilkes + + * ges/ges-command-line-formatter.c: + command-line-formatter: fix typos + Part-of: + +2019-10-18 23:23:10 +0100 Henry Wilkes + + * ges/ges-marker-list.c: + * tests/check/ges/markerlist.c: + marker-list: made deserialize reverse of serialize + Changed deserialize method to actually reverse the serialize method by + removing the edge quote marks and reversing g_strescape. + See https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/452 + Part-of: + +2020-12-13 22:54:37 -0300 Thibault Saunier + + * ges/ges-audio-uri-source.c: + * ges/ges-source.c: + * ges/ges-source.h: + * ges/ges-uri-source.c: + * ges/ges-uri-source.h: + * ges/ges-video-uri-source.c: + uri-source: Respect stream-id even on streams muxed in raw + The issue is that we rely on `decodebin::autoplug-select` to `SKIP` + unwanted pads, that signal was first provided to select factories during + autoplugin, not totally thought to avoid exposing pads. For streams + muxed directly in raw, decodebin has nothing to plug after the demuxer + and the pad is exposed right away, meaning that we do not have any + chance to avoid that pad to be exposed. This patch takes that limitation + into account and checks the stream ID of the pads exposed by decodebin + before exposing them itself, so we end up using the right pad even if + more are uselessly exposed by decodebin. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/126 + Part-of: + +2021-01-12 15:50:27 -0300 Thibault Saunier + + * ges/ges-audio-track.c: + audio-track: Respect track restrictions in our gaps + Avoiding not negotiated errors in specific cases. + Part-of: + +2021-01-05 11:52:15 -0300 Thibault Saunier + + * tools/ges-launcher.c: + launch: Ensure to add required ref to profiles from project + We were unreffing something we were not owning + Part-of: + +2020-11-02 22:18:24 +1100 Jan Schmidt + + * tests/check/meson.build: + tests: fix meson test env setup to make sure we use the right gst-plugin-scanner + This is the same fix that was applied in gst-plugins-good in + https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/603 + and fixes the testsuite running in gst-build. + Part-of: + +2020-09-04 10:27:05 -0400 Thibault Saunier + + * tools/ges-launcher-kb.c: + * tools/ges-launcher-kb.h: + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/meson.build: + launch: Add an interactive mode where we can seek etc... + Part-of: + +2020-11-04 18:47:28 +0530 Nirbheek Chauhan * meson.build: meson: Enable some MSVC warnings for parity with GCC/Clang This makes it easier to do development with MSVC by making it warn on common issues that GCC/Clang error out for in our CI configuration. Continuation from https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/223 - Part-of: + Part-of: + +2020-10-30 00:30:52 +1100 Jan Schmidt + + * ges/ges.c: + * tools/ges-launcher.c: + init: Fix initialisation crash + Fix a case where initialisation fails without setting + the passed-in GError and the caller assumes it will be + set, and add a guard to catch the condition in case it + happens again in the future. + Part-of: + +2018-11-04 13:04:45 -0500 Xavier Claessens + + * ges/meson.build: + * meson.build: + * pkgconfig/gst-editing-services-uninstalled.pc.in: + * pkgconfig/gst-editing-services.pc.in: + * pkgconfig/meson.build: + Meson: Use pkg-config generator + +2020-10-18 16:08:36 +0200 Fabrice Fontaine + + * tools/ges-launcher.c: + * tools/utils.c: + * tools/utils.h: + utils.c: fix static build + Static build fails since version 1.17.1 and + https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/commit/1e488d4311420b5ca193155ad8ab05509c9a4a37 + on: + FAILED: tools/ges-launch-1.0 + /srv/storage/autobuild/run/instance-2/output-1/host/bin/arm-linux-gcc -o tools/ges-launch-1.0 tools/ges-launch-1.0.p/ges-validate.c.o tools/ges-launch-1.0.p/ges-launch.c.o tools/ges-launch-1.0.p/ges-launcher.c.o tools/ges-launch-1.0.p/utils.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -Wl,-Bsymbolic-functions -static -Wl,--start-group ges/libges-1.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgstreamer-1.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgobject-2.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libglib-2.0.a -pthread /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libpcre.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libffi.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgmodule-2.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgstbase-1.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgstvideo-1.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgstpbutils-1.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgstaudio-1.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libz.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgsttag-1.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgstcontroller-1.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgio-2.0.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libmount.a /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libblkid.a -lm -Wl,--end-group + /srv/storage/autobuild/run/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /srv/storage/autobuild/run/instance-2/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libc.a(err.os): in function `warn': + err.c:(.text+0x1d8): multiple definition of `warn'; tools/ges-launch-1.0.p/utils.c.o:utils.c:(.text+0x9bc): first defined here + So rename warn function to ges_warn + Also prefix ok, print and printerr function by ges_ for consistancy and + run gst-indent on tools/ges-launcher.c + Fixes: + - http://autobuild.buildroot.org/results/2a528a1185644f5b23d26eb3f2b342e99aa1e493 + Signed-off-by: Fabrice Fontaine + Part-of: + +2020-10-18 20:11:33 +0200 Antonio Ospite + + * meson.build: + meson: actually check glib dependency version + Actually check the version constraint when looking for the glib + dependency. + The version check will make meson use the fallback dependency when the + one from the system is not recent enough, and eventually make the build + succeed even on some older systems like Ubuntu 16.04. + Part-of: -2020-10-16 12:45:09 +0200 Stéphane Cerveau +2020-10-16 13:17:04 +0200 Stéphane Cerveau - * examples/egl/testegl.c: + * ges/ges-asset.c: * meson.build: meson: update glib minimum version to 2.56 In order to support the symbol g_enum_to_string in various @@ -29,7946 +738,27999 @@ Remove compat code as glib requirement is now > 2.56 Version used by Ubuntu 18.04 LTS - Part-of: - -2020-10-05 12:32:10 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: support interlace-mode=interleaved input - interlace-mode=alternate is a special case of interlace-mode=interleaved - where the fields are split using two different buffers. - The Zynq decoder always produces alternate content and we - used to assume that upstream will set interlace-mode=alternate in its - caps as well. - This is no longer the case as h265parse is now setting - alternate-mode=interleaved on alternate content to not break compat with - elements not supporting alternate. - As a result the decoder now accept both 'interleaved' and 'alternate' on - its input and ensures that its ouput has interlace-mode=alternate. - Needed to fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/825 - Part-of: - -2020-09-08 17:31:06 +0100 Tim-Philipp Müller + Part-of: + +2020-09-03 23:32:23 -0400 Thibault Saunier + + * ges/ges-auto-transition.c: + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline-tree.c: + * ges/ges-timeline.c: + * ges/ges-uri-clip.c: + * tests/check/python/common.py: + * tests/check/python/test_assets.py: + * tests/check/python/test_timeline.py: + ges: Do not recreate auto-transitions when changing clip assets + Otherwise we loose the configuration of the auto transition, and + it is not required at all in any case. + Fixes https://gitlab.gnome.org/GNOME/pitivi/-/issues/2380 + Part-of: + +2020-09-08 11:39:10 -0300 Thibault Saunier + + * tests/check/meson.build: + ges: Fix a copy/paste mistake in meson file + Passed unnoticed because we built against GstValidate + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/119 + Part-of: + +2020-09-03 21:15:16 -0400 Thibault Saunier + + * ges/ges-video-transition.c: + * ges/ges-video-transition.h: + video-transition: Make smpte props children properties + And deprecate old style accessors. + Part-of: + +2020-09-08 17:30:53 +0100 Tim-Philipp Müller * .gitlab-ci.yml: ci: include template from gst-ci master branch again -2020-09-08 16:59:09 +0100 Tim-Philipp Müller +2020-09-08 16:59:02 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.18.0 === -2020-09-08 00:10:02 +0100 Tim-Philipp Müller +2020-09-08 00:09:25 +0100 Tim-Philipp Müller * .gitlab-ci.yml: * ChangeLog: * NEWS: * RELEASE: - * gst-omx.doap: + * gst-editing-services.doap: * meson.build: Release 1.18.0 -2020-08-27 17:19:44 +0100 Tim-Philipp Müller +2020-09-04 10:43:05 -0400 Thibault Saunier + + * docs/gst_plugins_cache.json: + * plugins/ges/gesdemux.c: + demux: Fixate documentation caps + Part-of: + +2020-08-22 00:57:06 +1000 Jan Schmidt - * config/tizonia/meson.build: - meson: fix Tizonia build - Was failing for release versions with - meson.build:414:10: ERROR: Can not set values on configuration object that has been used. - Caused by !69, but CI didn't notice at the time because it was set to a git version. + * tests/check/scenarios/complex_effect_bin_desc/flow-expectations/log-videosink-sink-expected: + complex_effect_bin_desc: Regenerate expectation for compositor change + Part of: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/796 + +2020-08-20 21:09:31 -0400 Thibault Saunier + + * tests/check/meson.build: + tests: Fix running tests fully uninstalled + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/118 + Part-of: === release 1.17.90 === -2020-08-20 16:16:35 +0100 Tim-Philipp Müller +2020-08-20 16:16:01 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: - * gst-omx.doap: + * gst-editing-services.doap: * meson.build: Release 1.17.90 -2020-07-08 17:39:20 +0100 Tim-Philipp Müller +2020-07-31 22:02:01 -0400 Thibault Saunier - * gst-omx.doap: - * meson.build: - * scripts/extract-release-date-from-doap-file.py: - meson: set release date from .doap file for releases - Part-of: + * ges/ges-source.c: + ges:source: Handle missing elements in converters + Part-of: -2020-07-03 02:04:16 +0100 Tim-Philipp Müller +2020-07-22 12:02:10 -0400 Thibault Saunier - * meson.build: - Back to development + * ges/ges-smart-video-mixer.c: + * ges/ges-video-transition.c: + * tests/check/scenarios/check_keyframes_in_compositor_two_sources/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/complex_effect_bin_desc/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/edit_while_seeked_with_stop/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop.check_clock_sync/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-videosink-sink-expected: + smart-mixer: Move the videoconvert to after the mixer + So that it tries to negotiate with alpha and the alpha channel is + dropped as late as possible in the pipeline. + The compositor is able to do video conversion internally in any case + so having a videoconvert before it is useless. + Part-of: -=== release 1.17.2 === +2020-07-21 08:49:35 -0400 Thibault Saunier -2020-07-03 00:37:06 +0100 Tim-Philipp Müller + * ges/ges-video-transition.c: + transition: Enhance name of the elements + Making it simpler to debug + Part-of: - * ChangeLog: - * NEWS: - * RELEASE: - * gst-omx.doap: - * meson.build: - Release 1.17.2 +2020-07-20 17:32:39 -0400 Thibault Saunier -2020-06-20 00:28:37 +0100 Tim-Philipp Müller + * ges/ges-source.c: + source: Handle missing elements in converter + Part-of: - * meson.build: - Back to development +2020-07-14 00:09:32 -0400 Thibault Saunier -=== release 1.17.1 === + * ges/ges-video-source.c: + video-source: Stop giving useless name to frame positioner + Part-of: -2020-06-19 19:27:38 +0100 Tim-Philipp Müller +2020-07-13 18:18:22 -0400 Thibault Saunier - * ChangeLog: - * NEWS: - * RELEASE: - * gst-omx.doap: - * meson.build: - Release 1.17.1 + * ges/ges-smart-video-mixer.c: + * ges/ges-smart-video-mixer.h: + * ges/ges-utils.c: + * ges/ges-video-transition.c: + transition: Better document the way alpha is computed for transitions + Part-of: -2020-06-16 01:20:27 +0530 Nirbheek Chauhan +2020-07-12 13:51:42 -0400 Thibault Saunier - * docs/gst_plugins_cache.json: - docs: Update plugin cache json - https://gitlab.freedesktop.org/alatiera/gst-ci/-/jobs/3109574 - Part-of: + * ges/ges-smart-video-mixer.c: + * ges/ges-timeline.c: + * ges/ges-utils.c: + * tests/check/meson.build: + * tests/check/scenarios/check_keyframes_in_compositor_two_sources.validatetest: + * tests/check/scenarios/check_keyframes_in_compositor_two_sources/flow-expectations/log-videosink-sink-expected: + smart-mixer: Use the new 'samples-selected' signal to handle queuing in aggregator pads + Since aggregator introduced queueing in its sinkpads the way we set + properties on the pads is incorrect as it doesn't take it into account. + This fixes the issue by using the newly introduced `samples-selected` + signal in aggregator to set the properties right before the compositing + is done. + Also require the compositor we use to be an aggregator. + And add a validate test for it. + Part-of: -2020-06-03 22:24:09 -0400 Thibault Saunier +2020-07-12 13:49:36 -0400 Thibault Saunier - * docs/gst_plugins_cache.json: - docs: Update documentation cache - -2019-12-23 18:23:55 -0800 Dylan Yip - - * omx/gstomx.c: - omx: Add latest OMX_ALG_Index's to omx_index_type_to_str - Add following indexes to omx_index_type_to_str: - OMX_ALG_IndexParamVideoAccessUnitDelimiter - OMX_ALG_IndexParamVideoBufferingPeriodSEI - OMX_ALG_IndexParamVideoPictureTimingSEI - OMX_ALG_IndexParamVideoRecoveryPointSEI - OMX_ALG_IndexParamVideoMasteringDisplayColourVolumeSEI - OMX_ALG_IndexParamVideoContentLightLevelSEI - OMX_ALG_IndexConfigVideoRegionOfInterestByValue - OMX_ALG_IndexConfigVideoColorPrimaries - -2020-05-20 17:05:33 +0200 Stéphane Cerveau - - * omx/gstomx.c: - zynq: change API to use public 2020.01 from vcu-omx-il - This new release 2020.01 fixes an API typo - Change to OMX_ALG_IndexConfigVideoHighDynamicRangeSEI - instead of OMX_ALG_IndexConfigVideoHighDynamicRangeSEIs - among others. - -2017-12-27 17:18:54 +0100 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: factor out gst_omx_video_enc_allocate_out_buffers() - No semantic change. - Part-of: - -2020-04-10 11:47:03 +0200 Guillaume Desmottes - - * omx/gstomxh265enc.c: - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideoenc: remove unsupported formats from caps template - Our encoder implementation actually supports a small subset of the - formats supported by the decoder. Those are the formats for which we - have a copy path in gst_omx_video_enc_fill_buffer() and which are not - filtered out in filter_supported_formats(). - -2020-04-10 09:59:02 +0200 Guillaume Desmottes - - * omx/gstomxvideo.h: - video: remove BGR from supported format - It's not supported by either decoder or encoder and is even not listed in - gst_omx_video_get_format_from_omx() so it can't work. - -2020-04-10 10:21:16 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: add GRAY8 support - It's supported by Zynq encoder and was already in the sink caps - template. - -2020-04-10 11:18:49 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: factor out gst_omx_video_enc_copy_plane() - No semantic change, I'm going to use it to copy GRAY8 buffers which is - actually a single plane 8-bits format. - -2020-04-10 10:58:34 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: use gst_video_meta_get_plane_height() to compute slice height - This new API saves us from doing manual computation and actually work - with single planar formats, such as GRAY8. - -2020-04-07 19:59:12 +0200 Stéphane Cerveau - - * omx/gstomxh264enc.c: - * omx/gstomxh265enc.c: - * omx/gstomxvideo.c: - * omx/gstomxvideoenc.c: - omxh26xenc: fix coverity with frame test - Coverity was complaining with: - Null pointer dereferences (REVERSE_INULL) Null-checking "frame" - suggests that it may be null, but it has already been - dereferenced on all paths leading to the check. - The frame == NULL has been removed as 'frame' is actively used - in the code above without any change of dereferencing and setting - its value to NULL before the test. - CID: 1461287 - -2020-03-19 16:23:41 +0100 Stéphane Cerveau - - * omx/gstomxvideoenc.c: - gstomxvideoenc: fix subframe output_buffer - Using more than 1 subframes was failing with - frame->output_buffer = NULL - -2020-02-06 10:21:49 +0530 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: add support of alternate interlace mode on zynq - -2020-02-06 10:11:13 +0530 Guillaume Desmottes - - * omx/gstomxh265enc.c: - * omx/gstomxvideoenc.c: - omxvideoenc: add support of alternate interlace mode on zynq - It's only supported by the Zynq HEVC encoder for now. - -2020-02-06 10:12:50 +0530 Guillaume Desmottes - - * omx/gstomx.c: - omx: add alternate flags to buffer_flags_map - Zynq specific flags used to tag top/bottom fields in alternate mode. - -2020-02-06 09:57:48 +0530 Guillaume Desmottes + * ges/ges-structured-interface.c: + * ges/ges-validate.c: + ges:validate: Allow setting keyframes using the clips directly + Part-of: - * omx/gstomxvideo.c: - * omx/gstomxvideoenc.c: - omxvideo(enc): use GST_VIDEO_INFO_FIELD_RATE_N() - Does not change anything for now but will be needed when we'll support - interlace-mode=alternate as the field rate will be twice the frame rate. - Made the code safe from division by 0 while I was on it. +2020-07-25 13:14:56 -0400 Thibault Saunier -2020-02-06 09:36:20 +0530 Guillaume Desmottes + * ges/ges-uri-source.c: + ges-source: Ensure that we output stream with segments in time + Part-of: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideo{enc,dec}: use GST_VIDEO_INFO_FIELD_HEIGHT() - Does not change anything for now but will be needed when we'll support - interlace-mode=alternate as the fields will have half the frame height. +2020-07-09 11:10:41 -0400 Thibault Saunier -2020-02-25 10:45:47 +0530 Guillaume Desmottes - - * omx/gstomx.c: - omx: don't log error when failing to load conf file with generic target - The generic target is meant to only test building gst-omx. It doesn't - provide any configuration file and so is not supposed to register any - element. - I'm not aware of any user building gst-omx with this target and - providing their own conf file to actually register elements. But best to - not break this use case anyway so let's just downgrade the log message. - Fix GST_ERROR in the 'check fedora' CI job. + * ges/ges-pipeline.c: + pipeline: Restrict the presence only if the user didn't explicitly provided one + Part-of: -2020-01-27 11:56:53 +0100 Stéphane Cerveau +2020-07-08 15:47:55 -0400 Thibault Saunier - * meson.build: - meson: add glib project fallback - Add a fallback from glib project to provide glib, gio and - gmodule dependencies. - -2020-01-15 11:06:12 +0000 Stéphane Cerveau - - * omx/gstomxvideoenc.c: - omxvideoenc: fix warning - Fix warning test when OMX_BUFFERFLAG_ENDOFFRAME - is not set. - -2018-08-28 13:03:14 -0700 Varunkumar Allagadapa - - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Add look-ahead property to ZYNQ_USCALE_PLUS encoder - This patch adds look-ahead property to encoder - The value indicates look ahead size in frames, - the number of frames processed ahead of second pass encoding. - Dual pass encoding is disabled if look-ahead - value is less than 2. - -2018-08-06 13:02:41 -0700 Varunkumar Allagadapa - - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Add long-term-ref support to ZYNQ_USCALE_PLUS encoder - Custom API that upstream elements can use to notify encoders about - marking longterm ref. pictures or using longterm ref. pictures in - encoding process. - This patch adds below properties: - long-term-ref: Enable/Disable dynamically marking long-term - reference pictures in encoding process - long-term-freq: Periodicity of long-term reference picture - marking in encoding process. - If a picture is marked as long-term reference picture then it remains - in the DPB list for ever unless it overrides with new long-term pitcure with - same index. Encoder can use this long-term picture as refence for - encoding. - This feature is mostly useful to avoid visual artifacts propagation in streaming use cases - when packet loss happens. Instead of requesting for IDR, client can request for use long-term - reference picture for encoding. - -2020-01-07 10:24:19 +0530 Guillaume Desmottes + * ges/ges-timeline.c: + timeline: Add a simplified version of track selection signal + Most user do not need to select several tracks for a single + TrackElement and this signal is not binding friendly so + this is adding a simpler, more user and binding friendly version + Part-of: - * meson.build: - meson: display OMX target when configuring - I'm adding more gst-omx CI ( - https://gitlab.freedesktop.org/gstreamer/gst-ci/issues/20 ) having the - OMX targets displayed in the logs makes things clearer. +2020-07-08 15:47:12 -0400 Thibault Saunier -2019-08-30 10:27:32 +0530 Guillaume Desmottes + * ges/ges-uri-source.c: + uri-source: Respect user stream selection + Part-of: - * omx/gstomx.c: - omx: remove useless double negations - flush and port->flushing are both gboolean. +2020-07-08 08:02:27 -0400 Thibault Saunier -2019-12-20 22:19:06 -0800 Julien Isorce + * tools/ges-validate.c: + launch: Also print the position when disabling validate + Part-of: + +2020-07-08 08:01:58 -0400 Thibault Saunier * meson.build: - meson: fix tizonia build - meson.build was both using path to gst-omx/openmax/OMX* - headers and path to OMX headers provided by tizilheaders.pc - so this patch makes sure we only use the later. - Also bump tizonia minimum version to 0.19.0 which - is the latest release. + * tools/ges-launcher.c: + * tools/meson.build: + * tools/utils.c: + * tools/utils.h: + launch: Print more useful information to stdout + Part-of: -2019-05-16 10:50:18 +0200 Guillaume Desmottes +2020-07-08 07:42:38 -0400 Thibault Saunier - * omx/gstomxh265enc.c: - * omx/gstomxh265enc.h: - omxh265enc: handle CODECCONFIG buffers - Exact same code as omxh264enc. + * meson_options.txt: + * tools/ges-launcher.c: + build: Add an option to disable examples + And make it yield as in other modules + Part-of: + +2020-07-03 18:21:22 -0400 Thibault Saunier + + * tools/ges-launcher.c: + launcher: Re activate smart rendering support + Trying to get the best encoding profile for smart rendering when + the user didn't specify anything. + Part-of: + +2020-07-03 18:16:13 -0400 Thibault Saunier + + * ges/ges-enums.h: + * ges/ges-internal.h: + * ges/ges-pipeline.c: + * ges/ges-source.c: + * ges/ges-timeline-tree.c: + * ges/ges-timeline-tree.h: + * ges/ges-timeline.c: + * ges/ges-track.c: + * ges/ges-uri-source.c: + ges: Fix smart rendering + Smart rendering has been broken since, mostly forever, but some code + was there pretending it was supported... let's try to stop pretending. + We now keep track of the smart rendering state in the timeline, track + and sources to be able to: + * tell decodebin to stop plugging more (decoding elements) as soon as + downstream supports the format. + * avoid plugging converters after the source element when smart + rendering. + Part-of: + +2020-07-03 18:00:39 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Pipe debug output to a file when discovering scenarios + Otherwise `gst-validate-launcher` can get veeery noisy + Part-of: + +2020-07-03 17:59:49 -0400 Thibault Saunier + + * plugins/nle/nlesource.c: + nle: Minor debug enhancement + Part-of: + +2020-07-03 17:58:16 -0400 Thibault Saunier + + * tests/check/ges/clip.c: + tests: Mark audio identity as audio + Otherwise GES fallbacks to video... + Part-of: + +2020-01-13 13:08:24 +0000 Henry Wilkes + + * ges/ges-internal.h: + * ges/ges-pipeline.c: + * ges/ges-track.c: + pipeline: stop setting the track caps + Stop setting the track 'caps' property. The previous code could + overwrite a users own setting of the caps for video and audio caps. + Moreover, the 'caps' property is listed as construct only, and users + will likely expect it to stay the same after a track has been added to a + timeline. + Part-of: + +2020-07-03 17:41:28 -0400 Thibault Saunier + + * tools/ges-launcher.c: + launcher: Delay setting rendering setting to right before rendering + So that user settings have been applied to the timeline taking into + account any `validatetest` arguments + Part-of: + +2020-07-03 17:18:51 -0400 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-internal.h: + * ges/ges-source.c: + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + source: Refactor the way we plug converter elements + Paving the way to skipping converters when rendering smartly + Part-of: + +2020-07-03 17:02:45 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Do not name urisink as `urisink` as it is useless + And actually harmful in case you are debugging several pipelines. + Part-of: + +2020-07-03 17:01:18 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Remove urisink from timeline instead of unrefing it + Doing what was suggested in the FIXME and avoiding to unref + something it while we do not actually own it ourself. + Part-of: + +2020-07-03 16:52:06 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Discard encoding profiles that don't match any track + Otherwise we get a 'not linked' error and we should just help + the user as we can here. + If the user adds a new track, he should set a new encoding profile + anyway. + Part-of: + +2020-07-03 16:34:21 -0400 Thibault Saunier + + * ges/ges-audio-uri-source.c: + * ges/ges-audio-uri-source.h: + * ges/ges-uri-source.c: + * ges/ges-uri-source.h: + * ges/ges-video-uri-source.c: + * ges/ges-video-uri-source.h: + * ges/meson.build: + uri*source: Factor out common logic into a GESUriSource private data + The two classes are *very* close but have different hierarchy so this + introduces a new GESUriSource structure that is used as private + structure by both subclasses and makes most of the logic shared this + way. + Part-of: + +2020-06-24 11:11:11 -0400 Thibault Saunier + + * ges/ges-audio-uri-source.c: + * ges/ges-video-uri-source.c: + *uri-source: Call free from the object ->finalize not ->dispose + Part-of: + +2020-07-25 19:16:06 +0100 Tim-Philipp Müller -2019-05-16 10:38:49 +0200 Guillaume Desmottes + * meson.build: + * meson_options.txt: + * tools/meson.build: + meson: install bash completion helper for ges-launch-1.0 + Fixes #77 + Part-of: - * omx/gstomxh264enc.c: - omxh264enc: send codec data downstream - We are operating in stream-format=byte-stream so the codec data buffer - is meant to be part of the buffer flow. - The base class will push it when a key frame is requested (as we stored - it with gst_video_encoder_set_headers()) but we still have to push it - right away as part of the normal buffer flow. - Also set the HEADER flag on this buffer. +2020-07-25 19:09:30 +0100 Tim-Philipp Müller -2019-05-16 10:38:49 +0200 Guillaume Desmottes + * meson.build: + * meson_options.txt: + meson: add 'tools' and 'examples' options + To optionally disable build of those. + Part-of: - * omx/gstomxh264enc.c: - omxh264enc: no need to check if codeconfig has startcode - We currently only support stream-format=byte-stream so there is no point - re-checking for it when handling CODECCONFIG buffer. +2020-07-24 07:43:05 +0530 AsociTon -2018-09-04 20:12:17 +0000 Nicolas Dufresne + * ges/ges-base-xml-formatter.c: + * tests/check/python/test_assets.py: + Fix retrieving asset metadata on project reload. + Part-of: - * omx/gstomxh264enc.c: - * omx/gstomxh265enc.c: - omxh26xenc: Negotiate subframe mode - We now negotiate subframe mode through the caps. To enabled subframe - mode, the caps need to specify alignment=nal: - ... ! omxh264enc ! video/x-h264,alignment=nal ! ... - ... ! omxh265enc ! video/x-h265,alignment=nal ! ... +2020-01-21 16:02:56 +0530 yatinmaan1@gmail.com -2018-08-31 12:24:34 +0200 Guillaume Desmottes + * tests/check/python/test_clip.py: + tests: Add test for ges_clip_get_top_effect_index + Part-of: - * omx/gstomxvideoenc.c: - omxvideoenc: use subframe base class API - Use subframe base class support. +2020-07-14 10:20:32 +0200 Guillaume Desmottes -2018-09-04 19:34:59 +0000 Nicolas Dufresne + * tests/check/ges/clip.c: + tests: clip: fix test_rate_effects_duration_limit + Fix this assertion: + g_value_copy: assertion 'g_value_type_compatible (G_VALUE_TYPE (src_value), G_VALUE_TYPE (dest_value))' failed + 'tempo' is a float, not a double. + Part-of: - * omx/gstomx.c: - * omx/gstomx.h: - omx: Add helper to enable/disable/read subframe mode +2020-07-10 08:16:10 -0400 Thibault Saunier -2019-12-19 13:51:17 +0530 Guillaume Desmottes + * ges/meson.build: + build: Add version.h to the headers list + So it is properly installed and the gir contains the required information + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/75 + Part-of: - * omx/gstomx.c: - zynq: add mapping for latest custom indexes - Fix warning when building using version 2019.2 of OMX headers. +2020-07-09 21:42:50 -0400 Thibault Saunier -2019-09-12 16:29:59 -0700 Varunkumar Allagadapa + * ges/ges-pitivi-formatter.h: + pitivi-formatter: Also skip the class - * omx/gstomxvideoenc.c: - omxvideoenc: update qp-mode settings - Adds load-qp-absolute and load-qp-relative qp-modes +2020-07-08 17:33:07 +0100 Tim-Philipp Müller -2019-12-10 18:34:25 +0900 Shinya Saito + * meson.build: + * scripts/extract-release-date-from-doap-file.py: + meson: set release date from .doap file for releases + Part-of: - * omx/gstomxvideoenc.c: - omxvideoenc: Add stride check for input buffer extraction - Stride of input buffer may be different from - that of omx input port even if both sizes are the same. +2020-07-08 10:03:43 -0400 Thibault Saunier -2019-05-15 14:04:47 +0200 Guillaume Desmottes + * ges/ges-title-clip.h: + title: Make deprecated symbols visible API + Part-of: - * omx/gstomxvideoenc.c: - omxvideoenc: pass padding requirements to ALLOCATION query - By passing the expected video buffer layout, the upstream producer - may be able to produce buffers fitting those requierements allowing - gst-omx to use dynamic buffer mode rather than having to copy each input - buffer. - This is particularly useful with v4l2src as it can request the capture - driver to produce buffers with the required paddings. +2020-07-03 02:04:08 +0100 Tim-Philipp Müller -2019-07-09 13:07:32 +0200 Guillaume Desmottes + * meson.build: + Back to development - * omx/gstomxbufferpool.c: - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - omxbufferpool: use gst_video_meta_set_alignment() - Tell buffer consumer about our paddings. - v4l2src can now uses these paddings information when trying to import - buffers to configure the v4l2 driver accordingly. +=== release 1.17.2 === -2019-05-30 11:11:34 +0530 Guillaume Desmottes +2020-07-03 00:35:20 +0100 Tim-Philipp Müller - * omx/gstomxvideoenc.c: - omxvideoenc: fix buffer size in debug log - Use the actual OMX buffer size rather than the info.size as OMX - may require larger buffer if the port requires some padding. + * ChangeLog: + * NEWS: + * RELEASE: + * gst-editing-services.doap: + * meson.build: + Release 1.17.2 -2019-10-14 00:48:32 +0100 Tim-Philipp Müller +2020-06-23 16:11:59 +0200 Mathieu Duponchelle - * .gitignore: - * .gitmodules: - * Makefile.am: - * autogen.sh: - * common: - * config/Makefile.am: - * config/bellagio/Makefile.am: - * config/rpi/Makefile.am: - * config/tizonia/Makefile.am: - * config/zynqultrascaleplus/Makefile.am: - * configure.ac: - * examples/Makefile.am: - * examples/egl/Makefile.am: - * m4/Makefile.am: - * omx/Makefile.am: - * tests/Makefile.am: - * tests/check/.gitignore: - * tests/check/Makefile.am: - * tests/check/generic/.gitignore: - * tools/Makefile.am: - Remove autotools build + * docs/libs/GESTimeOverlayClip-children-props.md: + * docs/libs/GESTitleSource-children-props.md: + * docs/libs/GESVideoTestSource-children-props.md: + * docs/libs/GESVideoUriSource-children-props.md: + * ges/ges-track.c: + * plugins/nle/nleoperation.c: + docs: fix links -2019-10-07 16:59:10 +0000 Stéphane Cerveau +2020-06-23 00:05:13 +0200 Mathieu Duponchelle - * omx/gstomxallocator.c: - omxallocator: fix leak with a proper chaining finalize + * docs/gst_plugins_cache.json: + plugins_cache: add base classes -2019-09-20 15:02:24 +0530 Guillaume Desmottes +2020-06-23 00:04:52 +0200 Mathieu Duponchelle - * omx/gstomxvideoenc.c: - omxvideoenc: revert draining on ALLOCATION and DRAIN query - My latest patch introduces some regressions which I have no time to - debug properly at the moment so just revert it for now. + * docs/meson.build: + meson: mark plugins cache target as always stale -2019-09-17 13:02:54 +0530 Guillaume Desmottes +2020-06-21 01:42:26 +0200 Mathieu Duponchelle - * omx/gstomxvideoenc.c: - omxvideoenc: let encoder base class handle ALLOCATION query - Fixing a regression introduced in my previous patch - (7c40a91c31aa4bcbb191f7c6a5d222edf9dfd9d1). - The ALLOCATION query needs to be handled by GstVideoEncoder (to call - propose_allocation()) so chain up the query handling rather than early - returning. + * plugins/ges/gesbasebin.c: + * plugins/nle/nleobject.c: + docs: mark more types as plugin API -2019-08-29 12:20:56 +0530 Guillaume Desmottes +2020-06-19 22:56:41 -0400 Thibault Saunier - * omx/gstomxvideoenc.c: - omxvideoenc: drain encoder on ALLOCATION and DRAIN queries - Ensure that the encoder releases all its input buffers when requested by - upstream. Encoder input buffers may be shared with downstreaming (when - using dmabuf), upstream may then request the encoder to - drain when reconfiguring before destroying its buffers. - Also drain on ALLOCATION query as we already do in kmssink as that - notify of a format change. - Fix "decoder ! encoder" pipeline when decoding a file with different - resolutions on Zynq. + * docs/gst_plugins_cache.json: + doc: Stop documenting properties from parents -2019-08-28 15:52:41 +0530 Guillaume Desmottes +2020-06-22 12:34:20 +0300 Sebastian Dröge - * omx/gstomx.c: - omx: log the number of pending buffers when port is EOS + * ges/ges-smart-video-mixer.c: + smart-video-mixer: Don't call gst_ghost_pad_construct() anymore + It's deprecated, unneeded and doesn't do anything anymore. + Part-of: -2019-08-28 15:49:00 +0530 Guillaume Desmottes +2020-06-20 00:28:31 +0100 Tim-Philipp Müller - * omx/gstomx.c: - omx: log when an output port is eos + * meson.build: + Back to development -2019-08-27 15:47:28 +0530 Guillaume Desmottes +=== release 1.17.1 === - * omx/gstomxvideoenc.c: - omxvideoenc: log the full input format - Make it easier to debug dynamic format changes. +2020-06-19 19:25:56 +0100 Tim-Philipp Müller -2019-08-21 12:25:40 +0530 Guillaume Desmottes + * ChangeLog: + * NEWS: + * RELEASE: + * gst-editing-services.doap: + * meson.build: + Release 1.17.1 - * omx/gstomxvideodec.c: - omxvideodec: fix dmabuf import - When importing dmabuf, UseBuffer() has to be called with the fd as - pBuffer rather than the mapped address of the buffer. +2020-06-19 11:13:24 -0400 Thibault Saunier + + * ges/ges-clip-asset.c: + * ges/ges-clip-asset.h: + * ges/ges-clip.c: + * ges/ges-enums.c: + * ges/ges-layer.c: + * ges/ges-marker-list.c: + * ges/ges-marker-list.h: + * ges/ges-meta-container.c: + * ges/ges-project.h: + * ges/ges-source-clip-asset.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-timeline.c: + * ges/ges-track-element-asset.c: + * ges/ges-track-element-asset.h: + * ges/ges-track-element.c: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-video-source.c: + ges: Add all missing Since markers from 1.16 onward + Part-of: + +2020-06-09 10:07:13 -0400 Thibault Saunier + + * ges/ges-asset.c: + asset: Do not try to update proxies when we are in a proxying loop + This is a regression introduced in + c12b84788d197c714ec32653e2b751079e377c46, this commit simply brings back + the previous behavior. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/113 + Part-of: + +2020-06-09 00:03:57 -0400 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-effect-asset.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-gerror.h: + * ges/ges-internal.h: + * tests/check/meson.build: + * tests/check/scenarios/complex_effect_bin_desc.validatetest: + * tests/check/scenarios/complex_effect_bin_desc/flow-expectations/log-videosink-sink-expected: + ges: Refactor the way we plug converters in effects + Stopping to do it at the bin description level but properly + plugging them where they are needed and cleanly ghosting the pads + where it makes most sense. + This introduces support for GES to request pads on the most upstream + element in case no static pad can be ghosted. + Part-of: -2019-08-21 12:48:25 +0530 Guillaume Desmottes +2020-06-09 16:40:11 -0400 Thibault Saunier - * omx/gstomxbufferpool.c: - omxbufferpool: fix dmabuf import - When importing dmabuf from downstream, we want the allocator to be in - OTHER_POOL mode despite output_mode being DMABUF. - So check first if other_pool is set before checking for pool's - output_mode. + * ges/ges-command-line-formatter.c: + * ges/ges-structured-interface.c: + structured-interface: Add support for setting effects inpoint + Part-of: -2019-08-22 17:55:54 +0900 Shinya Saito +2020-06-09 16:35:44 -0400 Thibault Saunier - * omx/gstomxvideoenc.c: - omxvideoenc: Remove unnecessary gst_video_frame_unmap() + * ges/ges-track-element.c: + * ges/ges-track-element.h: + track-element: Make set_has_internal_source return a boolean + Telling the user if it is legal to have an internal source in that + particular GESTrackElement. + Part-of: -2019-07-25 16:30:13 +0530 Guillaume Desmottes +2020-06-15 13:09:39 -0400 Thibault Saunier - * omx/gstomxvideodec.c: - omxvideodec: log supported caps by the decoder - Can be useful when debugging to check the caps supported by the decoder - before filtering. + * ges/ges-pipeline.c: + pipeline: doc: Add a note about trying to render before setting rendering settings + Part-of: -2019-07-11 12:03:46 +0900 Shinya Saito +2020-06-15 12:23:26 -0400 Thibault Saunier - * omx/gstomxvideoenc.c: - omxvideoenc: Unref frame of codec config buffer - After handling codec config, codec frame should be unreffed. + * ges/ges-asset.c: + * ges/ges-uri-clip.c: + uri-clip: Add a warning about synchronous uri discovery + Part-of: -2019-06-14 16:27:37 +0530 Guillaume Desmottes +2020-06-09 15:22:30 -0400 Thibault Saunier - * omx/gstomxvideo.c: - omxvideo: check difference between frame and requested ts - This has proven to be very useful when debugging to detect bugs where we - match the wrong gst frame with an output OMX buffer. + * docs/gst_plugins_cache.json: + docs: Update plugins cache -2019-06-14 10:57:29 +0530 Guillaume Desmottes +2020-06-08 10:58:43 -0400 Thibault Saunier - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideo: add debug infos to find_nearest_frame() - Those debug infos have proved to be very helpful when debugging - timestamp issues. They are often linked to gst-omx picking the wrong - frame when trying to map from OMX. + * docs/gst_plugins_cache.json: + docs: Update plugins cache -2019-03-05 16:57:40 +0900 Shinya Saito +2020-06-05 15:56:00 +0200 Guillaume Desmottes - * omx/gstomxvideodec.c: - omxvideodec: Deactivate negotiated pool when output own buffer - If decoder outputs internal buffer and not use OMX_UseBuffer, - downstream bufferpool should be stopped. + * tests/check/scenarios/edit_while_seeked_with_stop.validatetest: + * tests/check/scenarios/edit_while_seeked_with_stop/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop.check_clock_sync.validatetest: + * tests/check/scenarios/seek_with_stop.validatetest: + tests: enforce I420 format + Tests are assuming video is I420 with a specific chroma and colorimetry + but were not actually enforcing it. + Fixes needed as I420 will no longer be the first video format, see + gst-plugins-base!689 + Part-of: -2019-06-03 12:21:05 +0900 Shinya Saito +2020-06-04 23:14:59 +0200 Mathieu Duponchelle - * omx/gstomxh264enc.c: - * omx/gstomxh264enc.h: - omxh264enc: Add 'ref-frames' property - Add a property to control the number of frames for reference. - Min and max value is based on OpenMAX IL 1.2.0 Specification. + * docs/gst_plugins_cache.json: + * ges/ges-track.c: + * plugins/nle/nlecomposition.c: + track, composition: mark stream id properties as DOC_SHOW_DEFAULT + and update plugins cache + Part-of: -2019-06-03 07:57:02 +0200 Niels De Graef +2020-06-03 18:30:39 -0400 Thibault Saunier - * configure.ac: - * meson.build: - meson: Bump minimal GLib version to 2.44 - This means we can use some newer features and get rid of some - boilerplate code using the G_DECLARE_* macros. - As discussed on IRC, 2.44 is old enough by now to start depending on it. + * docs/meson.build: + doc: Require hotdoc >= 0.11.0 -2019-04-19 12:38:54 -0400 Thibault Saunier +2020-05-27 16:03:35 +0300 Sebastian Dröge * docs/gst_plugins_cache.json: - * docs/index.md: - * docs/meson.build: + docs: Update gst_plugins_cache.json + +2020-06-03 09:57:06 +0200 Guillaume Desmottes + + * ges/ges-base-effect.c: + * ges/ges-base-effect.h: + * ges/ges-clip.c: + * ges/ges-enums.h: + * ges/ges-gerror.h: + * ges/ges-layer.c: + * ges/ges-time-overlay-clip.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + * ges/ges-track.c: + add missing Since annotations on new API + Part-of: + +2020-05-27 19:44:29 -0400 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + formatter: Do not dereference NULL pointer + CID 1461701 + Part-of: + +2020-05-27 19:39:49 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + xml-formatter: Add an GST_ERROR when setting control sources fails + CID 1463853 + Part-of: + +2020-05-26 19:14:53 -0400 Thibault Saunier + + * ges/ges-validate.c: + validate: Wait for state change to consider commit as done + Part-of: + +2020-05-26 19:02:58 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Stop always muting + Part-of: + +2020-05-21 17:22:18 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + formatter: Fix saving/loading project with clip speed rate control + We need to ensure that clips duration is set after time effects are + added and we now need to serialize effects inpoints and max duration. + Part-of: + +2020-05-21 15:42:23 +0100 Henry Wilkes + + * docs/design/time_notes.md: + docs: add some notes on Time in GES + These notes cover time coordinates in GES, time effects, time + translations. + It also goes into why keyframes will not work with non-linear time + effects. + Part-of: + +2020-05-21 11:25:30 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-uri-clip.c: + * tests/check/ges/asset.c: + uri-clip: don't assume duration needs to stay the same + ges_uri_clip_asset_get_duration does not tell us what the duration in + the timeline needs to be. Especially when we have time effects, or + effects with finite max-durations. So we should no longer expect the + duration to stay the same when replacing assets. Instead, we just check + that the new max-duration would be compatible with the current in-point + (which was not checked before), and the clip would not be totally + overlapped if its duration-limit changes. + This is based on the assumption that each source is replaced one-to-one + in its track. If a source is replaced with nothing in the same track, + this check may be a little too strong (but still mostly weaker than + before). However, problems could occur if track selection does + something unexpected, such as placing the new source in a track not + previously occupied. + Part-of: + +2020-05-20 21:23:03 +0100 Henry Wilkes + + * ges/ges-clip.c: + clip: provide an example of using time effects + Part-of: + +2020-05-20 21:20:10 +0100 Henry Wilkes + + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline-tree.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-xml-formatter.c: + * tests/check/ges/clip.c: + * tests/check/ges/project.c: + track-element: use out-point for updating control bindings + The out-point, which is an internal time, is used instead of the + duration for determining the control binding value at the end of the + element. + Also, allow the user to switch off the auto-clamping of control sources + if they are not desired. And allow them to clamp specific control sources + individually. + Also, fix a lot of memory leaks related to control sources. In + particular, releasing the extra ref gained by source in + g_object_get (binding, "control-source", &source, NULL); + Part-of: + +2020-05-15 18:09:50 +0100 Henry Wilkes + + * ges/ges-clip.c: + clip: test for layer in group + Make sure the layer exists before we try to remove the grouped clips + from it. + Part-of: + +2020-05-15 14:58:08 +0100 Henry Wilkes + + * ges/ges-internal.h: + * ges/ges-timeline-tree.c: + * ges/ges-timeline.c: + timeline-tree: make sure the layer priority refers to an existing layer + If a layer priority sits between the priorities of two layers in the + timeline, i.e. it references a gap in the timeline's layers, then + ges_timeline_append_layer will never fill this gap and create the + desired layer, so the edit in timeline-tree would loop forever. So a + check was added to avoid this. + This would be a usage error, but a user can reasonably end up with a gap + in their layers if they remove a layer from the timeline. + Part-of: + +2020-05-15 14:53:49 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + clip: add method for adding top effects + Unlike ges_container_add, this lets you set the index and will check + that track selection did not fail. This is useful for time effects whose + addition would create an unsupported timeline configuration. + Also can use the clip add error in ges_timeline_add_clip to let the user + know when adding a clip to a layer that its in-point is set larger than + the max-duration of its core children. + Part-of: + +2020-05-15 14:47:15 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-enums.h: + * ges/ges-internal.h: + * ges/ges-timeline-tree.c: + * tests/check/python/test_timeline.py: + timeline-tree: take time effects into account when trimming + When trimming the start of a clip, we want to set the in-point of its + children such that whatever data was at the timeline time T still + remains at the timeline time T after the trim, where + T = MAX (prev_start, new_start) + Part-of: + +2020-05-15 14:41:58 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * tests/check/ges/tempochange.c: + clip: use time translation for split + The new in-point should be the media position corresponding to the media + position. media_duration_factor is no longer needed. + Part-of: + +2020-05-18 17:34:01 +0100 Henry Wilkes + + * ges/ges-clip.c: + clip: fix warning when getting duration-limit + The duration-limit case was missing a 'break;' statement. + Part-of: + +2020-05-12 18:18:09 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-timeline-element.c: + * tests/check/ges/clip.c: + clip: add methods to convert between time coordinates + Add methods to convert between the timeline time coordinates and the + internal time coordinates of a track element in a clip, taking time + effects into account. + Part-of: + +2020-05-15 14:28:09 +0100 Henry Wilkes + + * ges/ges-base-effect-clip.c: + * ges/ges-base-effect.c: + * ges/ges-base-effect.h: + * ges/ges-clip.c: + * ges/ges-effect.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + * tests/check/ges/clip.c: + effect: Add support for time effects + Allow the user to register a child property of a base effect as a time + property. This can be used by GES to correctly calculate the + duration-limit of a clip when it has time effects on it. The existing + ges_effect_class_register_rate_property is now used to automatically + register such time effects for rate effects. + Part-of: + +2020-05-15 14:25:01 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-gerror.h: + * ges/ges-group.c: + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-layer.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-timeline-tree.c: + * ges/ges-timeline-tree.h: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-track.h: + * tests/check/ges/clip.c: + * tests/check/ges/test-utils.h: + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + errors: added edit errors + Added more errors to GES_ERROR for when edits fail (other than + programming or usage errors). Also promoted some GST messages if they + related to a usage error. + Also added explanation of timeline overlap rules in user docs. + Part-of: + +2020-05-15 12:19:16 -0400 Thibault Saunier + + * tests/check/scenarios/seek_with_stop.validatetest: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-audiosink-sink-expected: + tests: Stop recording gaps in seek_with_stop + We have little control over those as they are generated by streamsynchronizer in a not reproducible way + Part-of: + +2020-05-15 11:53:10 -0400 Thibault Saunier + + * docs/libs/GESTitleSource-children-props.md: + * docs/libs/GESVideoTestSource-children-props.md: + docs: Remove reference to deinterlacing props in title and video test source + Part-of: + +2020-05-15 18:33:46 -0400 Thibault Saunier + + * ges/ges-validate.c: + validate: Fix setting ges properties + And fix typos. + Part-of: + +2020-04-22 13:39:21 -0400 Thibault Saunier + + * docs/libs/GESTimeOverlayClip-children-props.md: + * docs/libs/document-children-props.py: * docs/sitemap.txt: - * meson.build: - * meson_options.txt: - * omx/meson.build: - doc: Build documentation of hotdoc - -2019-03-26 12:26:03 +0200 George Kiagiadakis - - * omx/gstomx.c: - * omx/gstomx.h: - gstomx: remove gst_omx_buffer_set_omx_buf/get_omx_buf - They are no longer used anywhere - -2019-03-22 12:11:13 +0200 George Kiagiadakis - - * omx/Makefile.am: - * omx/gstomxallocator.c: - * omx/gstomxallocator.h: - * omx/gstomxbufferpool.c: - * omx/gstomxbufferpool.h: - * omx/gstomxvideoenc.c: - * omx/meson.build: - omxbufferpool: refactor to allow memory sharing - One big restriction of the OMX buffer pool has always been - that the GstMemory objects were flagged with NO_SHARE. - This was because the buffer pool needed to be sure that when - a buffer returned to the pool, it would be safe to release the - OMX buffer back to OpenMAX. - With this change, this is no longer a restriction. What this - commit introduces is a new allocator that allows us to track - the GstMemory objects independently. Now, when a buffer returns - to the pool, it is not necessary for the memory to be released - as well. We simply track the memory's ref count in the allocator - and we return the OMX buffer back when the memory's ref count - drops to 0. - The reason for doing this is to allow implementing zero-copy - transfers in situations where we may need to copy or map a - certain region of the buffer. For instance, omxh264enc ! h264parse - should be possible to be zero-copy by using an OMX buffer pool - between them. - -2019-04-23 15:13:23 +0530 Guillaume Desmottes - - * omx/gstomxbufferpool.c: - omxbufferpool: fix memory mapping with offset - gst_memory_map() is already adding the offset to the mapped pointer. - Doing it in the memory implementation was resulting in the offset being - accounted twice. - It doesn't matter yet as we are only creating memory without offset for - now but it will once we'll start sharing OMX memories. - -2019-04-19 10:43:58 +0100 Tim-Philipp Müller + * ges/ges-internal.h: + * ges/ges-source-clip.c: + * ges/ges-test-clip.c: + * ges/ges-test-clip.h: + * ges/ges-time-overlay-clip.c: + * ges/ges-time-overlay-clip.h: + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + * ges/ges-video-test-source.h: + * ges/ges.h: + * ges/meson.build: + * tests/check/ges/clip.c: + * tests/check/scenarios/check_edit_in_frames_with_framerate_mismatch.scenario: + * tests/check/scenarios/edit_while_seeked_with_stop.validatetest: + * tests/check/scenarios/seek_with_stop.check_clock_sync.validatetest: + * tests/check/scenarios/seek_with_stop.validatetest: + ges: Move TimeOverlayClip out of GESTestClip + This was complexifying the implementation for very little gain. + Each source type should ideally have its own API. + In that patch we make it so we do not have to subclass anything + but instead use GESAsset to pass information about how the pipeline + should look like. + Part-of: + +2020-05-14 00:56:40 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Add stack initialization action after setting our state + Otherwise there is a pretty rare race where we get the + _initialize_stack_func executed leading to the stack set up and + the source pushing buffers before the composition source pad is + activated, and a STREAM_ERROR is reported as we end up pushing a + buffer to a flushing pad. + Thanks rr chaos mode for showing that improbable race + Part-of: + +2020-05-13 17:11:24 -0400 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-timeline.c: + * ges/ges-track.c: + timeline: No thread checking while disposing + While this is not correct, we can't predict from what thread a + GstElement will be disposed as it might still be referenced by + a GstMessage somewhere which is freed by, any thread. + In this specific case we can assume that GES user will already have + let go his timeline reference and we should not avoid assert in that + specific case as it should be safe to let the timeline be destroyed + at that point. + Part-of: + +2020-05-01 23:05:44 -0400 Thibault Saunier + + * plugins/nle/nleobject.c: + nle: Use G_PARAM_DEPRECATED for media-duration-factor + Part-of: + +2020-05-18 08:49:53 -0400 Thibault Saunier + + * ges/ges-timeline.c: + ges: Ensure that assets are added to project before adding clip to timeline + It is the right ordering and in Pitivi we set the project size + when adding the first (relevant) asset, meaning that our code to + reposition clips would kick in (in the unit tests) if we do not respect + that ordering. + Part-of: + +2020-05-13 12:11:32 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline-tree.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-uri-clip.c: + track-element: Add is_core method to API + Open up the method to the user, since they may need the information. + Also added more documentation on what a core track element is to a clip + and how they are treated. + Part-of: + +2020-05-01 12:40:58 +0100 Henry Wilkes + + * ges/ges-project.c: + * tests/check/ges/asset.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/clip.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + asset: unref requested assets + Prevent a few memory leaks in the tests. + Also mark ges_project_save as transfer full for the formatter asset. + Also make sure that ges_project_request_sync is transfer full on the + returned asset. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/104 + Part-of: + +2020-04-30 12:10:22 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-track-element.c: + * tests/check/ges/clip.c: + * tests/check/ges/test-utils.h: + clip: enforce duration-limit + Prevent setting of properties or that of children, if the clip would not + be able to set the corresponding duration if the duration-limit would + drop below the currently set duration. + Part-of: + +2020-04-30 12:01:52 +0100 Henry Wilkes + + * ges/ges-clip.c: + * tests/check/ges/clip.c: + clip: make sure core child is active for non-core in same track + Each active non-core child must have a corresponding active core child + in the same track. Therefore, if we de-activate a core child, we also + need to de-activate all the non-core children in the same track. + Similarly, if we activate a non-core child, we need to activate the + corresponding core child as well. + Part-of: + +2020-04-30 11:50:08 +0100 Henry Wilkes + + * ges/ges-clip.c: + clip: be more robust in handling priority + Make less assumptions about the priority of effects and core elements so + that the code would still work if the priority of an element was set + directly. In particular, the index of a top effect will always be its + position in the effect ordering. + Part-of: + +2020-04-28 17:29:22 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-internal.h: + container: stop storing priority offset in child mapping + GESGroup no longer uses this, and GESClip can be made simpler without + it. + Part-of: + +2020-04-27 19:11:16 +0100 Henry Wilkes + + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * tests/check/ges/clip.c: + clip: preserve auto-transition in split + When splitting a clip, keep the auto-transition at the end of the clip + alive and move its source to that of the corresponding split track + element. + Part-of: + +2020-04-21 12:55:34 +0100 Henry Wilkes + + * ges/ges-clip.c: + * tests/check/ges/clip.c: + clip: change order of split + We first change the duration of the splitted clip, then we add the new + clip to the layer and assign the tracks for its children. Normally, when + a clip is added to a layer it will have its track elements created, if + needed, and then assigned to their tracks. This will fail if any sources + would fully or triple overlap existing sources in the same track. + However, here we were adding the clip to the layer *and* avoiding the + track assignment process and instead setting the tracks explicitly. In + particular, the order was: + + add new clip to layer with no tracks assigned + + shrink the split clip + + assign the tracks for the new clip + This has been changed to: + + shrink the split clip + + add new clip to layer with no tracks assigned + + assign the tracks for the new clip + Thus, the order of events for any users connecting to object signals + will be close to that of adding another clip to the layer. + Part-of: + +2020-04-27 16:27:15 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-timeline.c: + timeline: create auto-transitions during track-element-added + Any time a track element is added to a track, we need to check whether + we need to create a new corresponding auto-transition. This simply moves + the code from ges-clip.c to ges-timeline.c, where it is more appropriate. + Moreover, it technically opens the possibility for creating + auto-transitions for track elements in the timeline that have no + corresponding clip. + Part-of: + +2020-04-27 16:05:54 +0100 Henry Wilkes + + * ges/ges-timeline-tree.c: + * tests/check/python/test_timeline.py: + timeline-tree: also trim non-core track elements + Also trim the in-point of non-core children of clips to ensure that + their content will appear in the timeline at the same position. + Part-of: + +2020-04-24 21:00:18 +0100 Henry Wilkes + + * ges/ges-timeline.c: + * tests/check/ges/basic.c: + timeline: make sure appended layer has lowest priority + Make sure that the priority of an appended layer is the lowest (highest + in value) when appending a layer to the timeline. This change is + important when appending a layer to a timeline, which can easily have a + gap in priorities if a layer has been removed. + Part-of: + +2020-04-23 17:34:52 +0100 Henry Wilkes + + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + tests: add tests for new editing behaviour + These tests expose some of the new editing behaviour in timeline + tree. In particular, we test: + + edits for clips within groups within a group + + that an edit can succeed if a snap allows it to + + that snapping occurs at a specific point, and that we alternate + between one call to snapping-started and one call to snapping-ended + with corresponding values + + that an edit can fail if a snap causes it to + + no snapping is released when an edit fails + + We tests for the expected changes, and otherwise check that the + configuration of the timeline has remained unchanged + + The timeline configuration remains the same when an edit fails + + That each clip overlap has a corresponding auto-transition + + That particular auto-transitions are created when a new overlap is + formed + + That particular auto-transitions are destroyed when an overlap ends + + That auto-transitions are not replaced when two clips move but + maintain their overlap + + That the timeline does not contain any unaccounted for clips + Part-of: + +2020-04-23 17:30:17 +0100 Henry Wilkes + + * ges/ges-layer.c: + * ges/ges-timeline.c: + layer: don't set timeline when moving clip + If a clip is moving we should not unset its timeline when it is removed + from the layer. Logic has been moved to ges_timeline_add_clip and + ges_timeline_remove_clip. + Part-of: + +2020-04-22 15:06:32 +0100 Henry Wilkes + + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-internal.h: + * ges/ges-timeline-tree.c: + * ges/ges-timeline.c: + timeline-tree: freeze auto-transitions whilst editing + Freeze the auto-tranistions so they do not destroy themselves during an + edit. Once complete the auto-transitions can move themselves back into + position, or remove themselves if their sources are no longer + overlapping. + Part-of: + +2020-04-21 15:06:03 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-timeline-tree.c: + * ges/ges-timeline-tree.h: + clip: make auto-transitions less expensive when adding to track + Only check the overlaps with the actual track element that was just added + to the track. This reduces the tree traversal by one order. + Part-of: + +2020-04-21 14:05:55 +0100 Henry Wilkes + + * ges/ges-layer.c: + * tests/check/ges/clip.c: + clip: remove children if failed to add to layer + If adding to a layer fails during ges_timeline_add_clip, any new children + that were created during this process should be removed from the clip to + put it back into its previous state. + Part-of: + +2020-04-21 11:36:58 +0100 Henry Wilkes + + * ges/ges-group.c: + group: let timeline-tree handle layer priority + Since a group can only have its priority set whilst it is part of a + timeline, we can simply let the timeline-tree handle the move, which it + can already do, whilst checking that the move would be legal (not break + the timeline configuration). All the group has to do now if update its + priority value if the priority of any of its children changes. It + doesn't even need to keep track of the layer priority offsets. + Also, added a check to ensure added children belong to the same + timeline. + Also moved the sigids from the GObject data to a g_hash_table, which is + clearer. + Part-of: + +2020-04-20 14:56:55 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-group.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + timeline-element: stop using edit vmethods + These were all redirecting to essentially ges_timeline_element_edit + anyway. + Part-of: + +2020-04-20 13:13:48 +0100 Henry Wilkes + + * ges/ges-auto-transition.c: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-group.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-tree.c: + timeline-element: simplify check for being edited + It should be sufficient to set the edit flag only on the toplevel, which + allows all of its children to know they are being edited and should not + move in response. + Also, removed some unnecessary setting/checking of this. + Also, supplied the ges_timeline_element_peak_toplevel, which unlike + ges_timeline_element_get_toplevel_parent, does not add a reference to + the toplevel. Some corresponding leaks in auto-transition have been + fixed by using this instead. + Part-of: + +2020-04-27 14:05:38 +0100 Henry Wilkes + + * ges/ges-timeline.c: + * tests/check/python/test_timeline.py: + timeline: emit snapping-started with new valid time + Only emit snapping-ended if we have a valid snap time. Moreover, we + should emit a new snapping-started even if we are snapping at the same + location. This is because a new snap will always correspond to a new edit, + possibly involving different snapping elements, which a user would want + to know about. + Part-of: + +2020-04-27 13:58:38 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-group.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-tree.c: + * ges/ges-timeline-tree.h: + * ges/ges-timeline.c: + * ges/ges-track.c: + * tests/check/ges/layer.c: + * tests/check/ges/timelineedition.c: + * tests/check/python/test_timeline.py: + * tests/check/scenarios/check_edit_in_frames_with_framerate_mismatch.scenario: + timeline-tree: simplify and fix editing + Editing has been simplified by breaking down each edit into a + combination of three basic single-element edits: MOVE, TRIM_START, and + TRIM_END. + Each edit follows these steps: + + Determine which elements are to be edited and under which basic mode + + Determine which track elements will move as a result + + Snap the edit position to one of the edges of the main edited element, + (or the edge of one of its descendants, in the case of MOVE), avoiding + moving elements. + NOTE: in particular, we can *not* snap to the edge of a neighbouring + element in a roll edit. This was previously possible, even though the + neighbour was moving! + + Determine the edit positions for clips (or track elements with no + parent) using the snapped value. In addition, we replace any edits of + a group with an edit of its descendant clips. If any value would be + out of bounds (e.g. negative start) we do not edit. + NOTE: this is now done *after* checking the snapping. This allows the + edit to succeed if snapping would cause it to go from being invalid to + valid! + + Determine whether the collection of edits would result in a valid + timeline-configuration which does not break the rules for sources + overlapping. + + If all this succeeds, we emit snapping-started on the timeline. + + We then perform all the edits. At this point they should all succeed. + The simplification/unification should make it easier to make other + changes. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/97 + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/98 + Part-of: + +2020-04-18 16:49:31 +0100 Henry Wilkes + + * ges/ges-group.c: + * tests/check/ges/group.c: + group: fix priority setting + Stop moving the group if a child clip is being edited by timeline-tree, + a child group is updating its own priority, or a layer that a clip is in + has changed priority. A group should only move if a descendant moves + layers outside of a timeline-tree edit, or the priority of the group is + set by the user. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/89 + Part-of: + +2020-04-18 16:34:56 +0100 Henry Wilkes + + * ges/ges-container.c: + * ges/ges-group.c: + * ges/ges-internal.h: + container: keep start and duration up to date + Simplified keeping the start and the duration of a container/group up to + date with the earliest start of the children and the last end of the + children. The previous logic was spread between ges-group and + ges-container, now all the position handling is in ges-container. + Part-of: + +2020-04-28 18:01:04 +0100 Henry Wilkes + + * ges/ges-uri-clip.c: + uri-clip: use duration-limit in set_max_duration + Use the duration-limit rather than max-duration - in-point, since the + former will be able to take other factors, such as effects, into + account. + Part-of: + +2020-04-13 17:42:22 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-clip.h: + * tests/check/ges/clip.c: + * tests/check/ges/test-utils.h: + clip: add the duration-limit property + The duration-limit is the maximum duration that can be set for the clip + given its current children and their properties. If a change in the + children properties causes this to drop below the current duration, it + is automatically capped by this limit. + Part-of: + +2020-05-04 10:35:25 -0400 Thibault Saunier + + * ges/ges-formatter.c: + * ges/python/gesotioformatter.py: + ges: Output otio formatter loading issues in debug logs + Instead of spamming the terminal with a python traceback + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/107 + Part-of: + +2020-05-05 23:03:36 -0400 Thibault Saunier + + * tests/check/scenarios/seek_with_stop.validatetest: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-audiosink-sink-expected: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-videosink-sink-expected: + tests: Stop recording segment position in seek_with_stop + There are two valid timing in GstAggregator where the segment event + is pushed before GstAggregator sets its srcpad->segment.position in + gst_aggregator_pad_chain_internal. Segment.position is basically + a helper field for internal elements use so we should not require + a specific value here as we are not checking a particular element + behavior. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/106 + Part-of: + +2020-05-02 01:24:18 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + test: Add support for .validatetest in the launcher app + +2020-05-01 14:26:32 +0100 Henry Wilkes + + * ges/ges-container.c: + container: return TRUE if adding doesn't cause any errors + If `add_child` and `set_parent` succeed we want to return TRUE, even if + the added element is no longer a child by the end of the method. This is + because some users may call ges_container_remove during `child-added`. + This shouldn't be considered an error. + +2020-04-30 17:44:33 -0400 Thibault Saunier + + * tests/check/scenarios/edit_while_seeked_with_stop.validatetest: + * tests/check/scenarios/edit_while_seeked_with_stop/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop.check_clock_sync.validatetest: + * tests/check/scenarios/seek_with_stop.check_clock_sync/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop.validatetest: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-audiosink-sink-expected: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-videosink-sink-expected: + ges:tests: Fix the `ignore-fields` format in validatetests + They are needed as those are not 100% reproducible with GES. + Part-of: + +2020-04-30 13:23:05 -0400 Thibault Saunier + + * plugins/ges/gesbasebin.c: + plugin: Fix a race removing tracks from timeline from the wrong thread + The case was that the timeline state was being changed from the parent + composition's action thread before the timeline was committed, leading + to the SELECT_STREAM event to be pushed from the track to the nested + timeline from the wrong composition thread. + ``` + ** + GES:ERROR:../subprojects/gst-editing-services/ges/ges-track.c:1263:ges_track_remove_element: assertion failed: (track->priv->valid_thread == g_thread_self()) + Bail out! GES:ERROR:../subprojects/gst-editing-services/ges/ges-track.c:1263:ges_track_remove_element: assertion failed: (track->priv->valid_thread == g_thread_self()) + Thread 1 (Thread 0x7f6ec2d43700 (LWP 1228982)): + #0 0x00007f6ed85b2a25 in raise () at /lib64/libc.so.6 + #1 0x00007f6ed859b895 in abort () at /lib64/libc.so.6 + #2 0x00007f6ed899cb8c in g_assertion_message (domain=, file=0x7f6ed8d7fd58 "../subprojects/gst-editing-services/ges/ges-track.c", line=, func=, message=) at ../glib/gtestutils.c:2914 + #3 0x00007f6ed89fa9ff in g_assertion_message_expr (domain=domain@entry=0x7f6ed8d76875 "GES", file=file@entry=0x7f6ed8d7fd58 "../subprojects/gst-editing-services/ges/ges-track.c", line=line@entry=1263, func=func@entry=0x7f6ed8d805b0 <__func__.6> "ges_track_remove_element", expr=expr@entry=0x7f6ed8d801e8 "track->priv->valid_thread == g_thread_self()") at ../glib/gtestutils.c:2940 + #4 0x00007f6ed8d2658f in ges_track_remove_element (track=track@entry=0x7f6eb4119b20 [GESAudioTrack], object=object@entry=0x106f240 [GESAudioUriSource]) at ../subprojects/gst-editing-services/ges/ges-track.c:1263 + #5 0x00007f6ed8d10842 in ges_clip_empty_from_track (clip=0x7f6e7803ee80 [GESUriClip], track=track@entry=0x7f6eb4119b20 [GESAudioTrack]) at ../subprojects/gst-editing-services/ges/ges-clip.c:1086 + #6 0x00007f6ed8d01453 in ges_timeline_remove_track (timeline=timeline@entry=0x7f6e6c01ae50 [GESTimeline], track=0x7f6eb4119b20 [GESAudioTrack]) at ../subprojects/gst-editing-services/ges/ges-timeline.c:2460 + #7 0x00007f6ed8d0286b in ges_timeline_send_event (element=, event=) at ../subprojects/gst-editing-services/ges/ges-timeline.c:484 + #8 0x00007f6ed8bf466c in gst_element_send_event (element=0x7f6e6c01ae50 [GESTimeline], event=event@entry=0x7f6eb410f9f0) at ../subprojects/gstreamer/gst/gstelement.c:1934 + #9 0x00007f6ed8d242cd in ges_track_handle_message (bin=0xd846f0 [GESVideoTrack], message=0x7f6eb411ac90) at ../subprojects/gst-editing-services/ges/ges-track.c:477 + #10 0x00007f6ed8bc9128 in bin_bus_handler (bus=, message=, bin=) at ../subprojects/gstreamer/gst/gstbin.c:3286 + #11 0x00007f6ed8bdbae2 in gst_bus_post (bus=bus@entry=0xfdf440 [GstBus], message=message@entry=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstbus.c:359 + #12 0x00007f6ed8bf1396 in gst_element_post_message_default (element=element@entry=0x10261d0 [NleComposition], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2067 + #13 0x00007f6ed8bccbee in gst_bin_post_message (element=0x10261d0 [NleComposition], msg=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstmessage.h:376 + #14 0x00007f6ed8bf4b66 in gst_element_post_message (element=0x10261d0 [NleComposition], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2110 + #15 0x00007f6ed8bc9128 in bin_bus_handler (bus=, message=, bin=) at ../subprojects/gstreamer/gst/gstbin.c:3286 + #16 0x00007f6ed8bdbae2 in gst_bus_post (bus=bus@entry=0xfdf2c0 [GstBus], message=message@entry=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstbus.c:359 + #17 0x00007f6ed8bf1396 in gst_element_post_message_default (element=element@entry=0x1029110 [GstBin], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2067 + #18 0x00007f6ed8bccbee in gst_bin_post_message (element=0x1029110 [GstBin], msg=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstmessage.h:376 + #19 0x00007f6ed8bf4b66 in gst_element_post_message (element=0x1029110 [GstBin], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2110 + #20 0x00007f6ed8bc9128 in bin_bus_handler (bus=, message=, bin=) at ../subprojects/gstreamer/gst/gstbin.c:3286 + #21 0x00007f6ed8bdbae2 in gst_bus_post (bus=bus@entry=0xfdf500 [GstBus], message=message@entry=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstbus.c:359 + #22 0x00007f6ed8bf1396 in gst_element_post_message_default (element=element@entry=0xd705e0 [NleSource], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2067 + #23 0x00007f6ed8bccbee in gst_bin_post_message (element=0xd705e0 [NleSource], msg=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstmessage.h:376 + #24 0x00007f6ed8bf4b66 in gst_element_post_message (element=0xd705e0 [NleSource], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2110 + #25 0x00007f6ed8bc9128 in bin_bus_handler (bus=, message=, bin=) at ../subprojects/gstreamer/gst/gstbin.c:3286 + #26 0x00007f6ed8bdbae2 in gst_bus_post (bus=bus@entry=0x1042400 [GstBus], message=message@entry=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstbus.c:359 + #27 0x00007f6ed8bf1396 in gst_element_post_message_default (element=element@entry=0x1029450 [GstBin], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2067 + #28 0x00007f6ed8bccbee in gst_bin_post_message (element=0x1029450 [GstBin], msg=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstmessage.h:376 + #29 0x00007f6ed8bf4b66 in gst_element_post_message (element=0x1029450 [GstBin], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2110 + #30 0x00007f6ed8bc9128 in bin_bus_handler (bus=, message=, bin=) at ../subprojects/gstreamer/gst/gstbin.c:3286 + #31 0x00007f6ed8bdbae2 in gst_bus_post (bus=bus@entry=0x1042640 [GstBus], message=message@entry=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstbus.c:359 + #32 0x00007f6ed8bf1396 in gst_element_post_message_default (element=element@entry=0x7f6eb42fc7a0 [GstURIDecodeBin], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2067 + #33 0x00007f6ed8bccbee in gst_bin_post_message (element=0x7f6eb42fc7a0 [GstURIDecodeBin], msg=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstmessage.h:376 + #34 0x00007f6ed8bf4b66 in gst_element_post_message (element=0x7f6eb42fc7a0 [GstURIDecodeBin], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2110 + #35 0x00007f6ed8bc9128 in bin_bus_handler (bus=, message=, bin=) at ../subprojects/gstreamer/gst/gstbin.c:3286 + #36 0x00007f6ed8bdbae2 in gst_bus_post (bus=bus@entry=0x7f6eb80a7130 [GstBus], message=message@entry=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstbus.c:359 + #37 0x00007f6ed8bf1396 in gst_element_post_message_default (element=element@entry=0x7f6e6c02aa60 [GstDecodeBin], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2067 + #38 0x00007f6ed8bccbee in gst_bin_post_message (element=0x7f6e6c02aa60 [GstDecodeBin], msg=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstmessage.h:376 + #39 0x00007f6ed8bf4b66 in gst_element_post_message (element=0x7f6e6c02aa60 [GstDecodeBin], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2110 + #40 0x00007f6ec8f1e00d in gst_decode_bin_handle_message (bin=0x7f6e6c02aa60 [GstDecodeBin], msg=) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:5667 + #41 0x00007f6ed8bc9128 in bin_bus_handler (bus=, message=, bin=) at ../subprojects/gstreamer/gst/gstbin.c:3286 + #42 0x00007f6ed8bdbae2 in gst_bus_post (bus=bus@entry=0x7f6eb4139110 [GstBus], message=message@entry=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstbus.c:359 + #43 0x00007f6ed8bf1396 in gst_element_post_message_default (element=element@entry=0x7f6e54038c70 [GESDemux], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2067 + #44 0x00007f6ed8bccbee in gst_bin_post_message (element=0x7f6e54038c70 [GESDemux], msg=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstmessage.h:376 + #45 0x00007f6ed8bf4b66 in gst_element_post_message (element=0x7f6e54038c70 [GESDemux], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2110 + #46 0x00007f6ed8bc9128 in bin_bus_handler (bus=, message=, bin=) at ../subprojects/gstreamer/gst/gstbin.c:3286 + #47 0x00007f6ed8bdbae2 in gst_bus_post (bus=bus@entry=0x7f6eb4139350 [GstBus], message=message@entry=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstbus.c:359 + #48 0x00007f6ed8bf1396 in gst_element_post_message_default (element=element@entry=0x7f6e6c01ae50 [GESTimeline], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2067 + #49 0x00007f6ed8bccbee in gst_bin_post_message (element=0x7f6e6c01ae50 [GESTimeline], msg=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstmessage.h:376 + #50 0x00007f6ed8bf4b66 in gst_element_post_message (element=element@entry=0x7f6e6c01ae50 [GESTimeline], message=0x7f6eb411ac90) at ../subprojects/gstreamer/gst/gstelement.c:2110 + #51 0x00007f6ed8cfa221 in ges_timeline_change_state (element=0x7f6e6c01ae50 [GESTimeline], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gst-editing-services/ges/ges-timeline.c:450 + #52 0x00007f6ed8bf5d1e in gst_element_change_state (element=element@entry=0x7f6e6c01ae50 [GESTimeline], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:3033 + #53 0x00007f6ed8bf6868 in gst_element_continue_state (element=element@entry=0x7f6e6c01ae50 [GESTimeline], ret=ret@entry=GST_STATE_CHANGE_SUCCESS) at ../subprojects/gstreamer/gst/gstelement.c:2741 + #54 0x00007f6ed8bf5d67 in gst_element_change_state (element=element@entry=0x7f6e6c01ae50 [GESTimeline], transition=transition@entry=GST_STATE_CHANGE_NULL_TO_READY) at ../subprojects/gstreamer/gst/gstelement.c:3072 + #55 0x00007f6ed8bf6368 in gst_element_set_state_func (element=0x7f6e6c01ae50 [GESTimeline], state=GST_STATE_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:2987 + #56 0x00007f6ed8bd2129 in gst_bin_element_set_state (next=GST_STATE_PAUSED, current=GST_STATE_PAUSED, start_time=0, base_time=0, element=0x7f6e6c01ae50 [GESTimeline], bin=0x7f6e54038c70 [GESDemux]) at ../subprojects/gstreamer/gst/gstbin.c:2615 + #57 gst_bin_change_state_func (element=0x7f6e54038c70 [GESDemux], transition=GST_STATE_CHANGE_PAUSED_TO_PAUSED) at ../subprojects/gstreamer/gst/gstbin.c:2957 + #58 0x00007f6ed8bf5d1e in gst_element_change_state (element=element@entry=0x7f6e54038c70 [GESDemux], transition=transition@entry=GST_STATE_CHANGE_PAUSED_TO_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:3033 + #59 0x00007f6ed8bf6368 in gst_element_set_state_func (element=0x7f6e54038c70 [GESDemux], state=GST_STATE_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:2987 + #60 0x00007f6ed8bd2129 in gst_bin_element_set_state (next=GST_STATE_PAUSED, current=GST_STATE_READY, start_time=0, base_time=0, element=0x7f6e54038c70 [GESDemux], bin=0x7f6e6c02aa60 [GstDecodeBin]) at ../subprojects/gstreamer/gst/gstbin.c:2615 + #61 gst_bin_change_state_func (element=0x7f6e6c02aa60 [GstDecodeBin], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstbin.c:2957 + #62 0x00007f6ec8f1e84f in gst_decode_bin_change_state (element=0x7f6e6c02aa60 [GstDecodeBin], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:5482 + #63 0x00007f6ed8bf5d1e in gst_element_change_state (element=element@entry=0x7f6e6c02aa60 [GstDecodeBin], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:3033 + #64 0x00007f6ed8bf6868 in gst_element_continue_state (element=element@entry=0x7f6e6c02aa60 [GstDecodeBin], ret=ret@entry=GST_STATE_CHANGE_SUCCESS) at ../subprojects/gstreamer/gst/gstelement.c:2741 + #65 0x00007f6ed8bf5d67 in gst_element_change_state (element=element@entry=0x7f6e6c02aa60 [GstDecodeBin], transition=transition@entry=GST_STATE_CHANGE_NULL_TO_READY) at ../subprojects/gstreamer/gst/gstelement.c:3072 + #66 0x00007f6ed8bf6368 in gst_element_set_state_func (element=0x7f6e6c02aa60 [GstDecodeBin], state=GST_STATE_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:2987 + #67 0x00007f6ed8bf5ae8 in gst_element_sync_state_with_parent (element=0x7f6e6c02aa60 [GstDecodeBin]) at ../subprojects/gstreamer/gst/gstelement.c:2413 + #68 0x00007f6ed89f17a0 in g_slist_foreach (list=, func=0x7f6ed8bf5a50 , user_data=user_data@entry=0x0) at ../glib/gslist.c:880 + #69 0x00007f6ec8f37d45 in gst_uri_decode_bin_change_state (element=, transition=) at ../subprojects/gst-plugins-base/gst/playback/gsturidecodebin.c:2869 + #70 0x00007f6ed8bf5d1e in gst_element_change_state (element=element@entry=0x7f6eb42fc7a0 [GstURIDecodeBin], transition=transition@entry=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:3033 + #71 0x00007f6ed8bf6368 in gst_element_set_state_func (element=0x7f6eb42fc7a0 [GstURIDecodeBin], state=GST_STATE_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:2987 + #72 0x00007f6ed8bd2129 in gst_bin_element_set_state (next=GST_STATE_PAUSED, current=GST_STATE_READY, start_time=0, base_time=0, element=0x7f6eb42fc7a0 [GstURIDecodeBin], bin=0x1029450 [GstBin]) at ../subprojects/gstreamer/gst/gstbin.c:2615 + #73 gst_bin_change_state_func (element=0x1029450 [GstBin], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstbin.c:2957 + #74 0x00007f6ed8bf5d1e in gst_element_change_state (element=element@entry=0x1029450 [GstBin], transition=transition@entry=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:3033 + #75 0x00007f6ed8bf6368 in gst_element_set_state_func (element=0x1029450 [GstBin], state=GST_STATE_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:2987 + #76 0x00007f6ed8bd2129 in gst_bin_element_set_state (next=GST_STATE_PAUSED, current=GST_STATE_READY, start_time=0, base_time=0, element=0x1029450 [GstBin], bin=0xd705e0 [NleSource]) at ../subprojects/gstreamer/gst/gstbin.c:2615 + #77 gst_bin_change_state_func (element=0xd705e0 [NleSource], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstbin.c:2957 + #78 0x00007f6ec805533f in nle_object_change_state (element=0xd705e0 [NleSource], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gst-editing-services/plugins/nle/nleobject.c:748 + #79 0x00007f6ed8bf5d1e in gst_element_change_state (element=element@entry=0xd705e0 [NleSource], transition=transition@entry=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:3033 + #80 0x00007f6ed8bf6368 in gst_element_set_state_func (element=0xd705e0 [NleSource], state=GST_STATE_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:2987 + #81 0x00007f6ed8bd2129 in gst_bin_element_set_state (next=GST_STATE_PAUSED, current=GST_STATE_READY, start_time=0, base_time=0, element=0xd705e0 [NleSource], bin=0x1029110 [GstBin]) at ../subprojects/gstreamer/gst/gstbin.c:2615 + #82 gst_bin_change_state_func (element=0x1029110 [GstBin], transition=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstbin.c:2957 + #83 0x00007f6ed8bf5d1e in gst_element_change_state (element=element@entry=0x1029110 [GstBin], transition=transition@entry=GST_STATE_CHANGE_READY_TO_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:3033 + #84 0x00007f6ed8bf6368 in gst_element_set_state_func (element=0x1029110 [GstBin], state=GST_STATE_PAUSED) at ../subprojects/gstreamer/gst/gstelement.c:2987 + #85 0x00007f6ed8bf5ae8 in gst_element_sync_state_with_parent (element=0x1029110 [GstBin]) at ../subprojects/gstreamer/gst/gstelement.c:2413 + #86 0x00007f6ec8060356 in _activate_new_stack (toplevel_seek=, comp=0x10261d0 [NleComposition]) at ../subprojects/gst-editing-services/plugins/nle/nlecomposition.c:3117 + #87 update_pipeline (comp=comp@entry=0x10261d0 [NleComposition], currenttime=, seqnum=, update_reason=update_reason@entry=COMP_UPDATE_STACK_INITIALIZE) at ../subprojects/gst-editing-services/plugins/nle/nlecomposition.c:3396 + #88 0x00007f6ec80614f6 in _initialize_stack_func (comp=0x10261d0 [NleComposition], ucompo=0x108c800) at ../subprojects/gst-editing-services/plugins/nle/nlecomposition.c:732 + #89 0x00007f6ed893788a in g_closure_invoke (closure=, return_value=, n_param_values=, param_values=, invocation_hint=) at ../gobject/gclosure.c:810 + #90 0x00007f6ec805aaf6 in _execute_actions (comp=0x10261d0 [NleComposition]) at ../subprojects/gst-editing-services/plugins/nle/nlecomposition.c:412 + #91 0x00007f6ed8c4c1cf in gst_task_func (task=0x7f6e6c01c290 [GstTask]) at ../subprojects/gstreamer/gst/gsttask.c:328 + #92 0x00007f6ed89fc0f4 in g_thread_pool_thread_proxy (data=) at ../glib/gthreadpool.c:354 + #93 0x00007f6ed89fb7f2 in g_thread_proxy (data=0x7f6eb0017800) at ../glib/gthread.c:807 + #94 0x00007f6ed7e14432 in start_thread () at /lib64/libpthread.so.0 + #95 0x00007f6ed86779d3 in clone () at /lib64/libc.so.6 + ``` + Part-of: + +2020-04-14 10:22:09 +0100 Henry Wilkes + + * tests/check/nle/tempochange.c: + check: give nle_tempochange test more time + These test can take longer than most under valgrind, so give them a + little more time until they timeout. + Part-of: + +2020-04-13 11:40:55 +0100 Henry Wilkes + + * ges/ges-timeline.c: + * tests/check/ges/basic.c: + timeline: fix adding track when layers contains clips + Made sure that adding a new track only uses select-tracks-for-object for + core children to determine whether a track elements should be added to the + new track or not, and *not* any other track. In particular, there should + be *no* change in the existing tracks of the timeline when adding another + track. Moreover, a new track should not invoke the creation of track + elements for other tracks. + Part-of: + +2020-04-08 17:11:14 +0100 Henry Wilkes + + * ges/ges-effect.c: + * ges/ges-track-element.c: + * plugins/nle/nleghostpad.c: + * plugins/nle/nleobject.c: + * plugins/nle/nleobject.h: + * plugins/nle/nleoperation.c: + * tests/check/ges/tempochange.c: + * tests/check/nle/tempochange.c: + nleobject: stop using media-duration-factor + The property had been deprecated and is unused. + This property is not needed. Any internal time effect that an nleoperation + wraps is itself responsible for converting seek/segment timestamps. + Previously, the ghostpads were performing a rate conversion after the + rate element had already done so, essentially doubling their effect on + seeks and segment times. This was always unnecessary, but went unnoticed + by the tempochange test because it was using an identity element rather + than an actual rate-changing element. + Part-of: + +2020-04-08 17:08:41 +0100 Henry Wilkes + + * plugins/nle/nlecomposition.c: + * plugins/nle/nleoperation.c: + * plugins/nle/nleoperation.h: + nleoperation: stop setting next_base_time + This property was unused. + Part-of: + +2020-04-21 16:22:31 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + * tests/check/meson.build: + * tests/check/scenarios/edit_while_seeked_with_stop.validatetest: + * tests/check/scenarios/edit_while_seeked_with_stop/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop.check_clock_sync.validatetest: + * tests/check/scenarios/seek_with_stop.check_clock_sync/flow-expectations/log-videosink-sink-expected: + * tests/check/scenarios/seek_with_stop.validatetest: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-audiosink-sink-expected: + * tests/check/scenarios/seek_with_stop/flow-expectations/log-videosink-sink-expected: + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/ges-validate.c: + nlecomposition: Fix seeking with stop + And add some tests + Part-of: + +2020-04-24 17:15:16 -0400 Thibault Saunier + + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/ges-validate.c: + launch: Add support for testfiles + Making it simpler to define a test in a single files, including the + configuration etc.. + Part-of: + +2020-04-24 16:46:50 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Do not commit ourselves automatically when changing state from wrong thread + The user is responsible to commit the timeline from the right thread + in that case and in the case of gesdemux, the loaded timeline is filling + gaps automatically when the project is set loaded. + Part-of: + +2020-04-18 16:22:25 +0200 Andoni Morales Alastruey - * RELEASE: - * configure.ac: * meson.build: - Back to development + macos: fix python's configure checks -=== release 1.16.0 === +2020-04-17 12:35:26 -0400 Thibault Saunier -2019-04-19 00:38:44 +0100 Tim-Philipp Müller + * ges/ges-video-source.c: + * ges/ges-video-uri-source.c: + ges: Fix interlaced stream playback + Negotiation was failling as `videoflip` was not allowing not + progressive interlacing. + Also avoid adding a deinterlace element when it is useless. - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: +2020-04-16 20:27:30 -0400 Thibault Saunier + + * ges/gstframepositioner.c: + * ges/gstframepositioner.h: * meson.build: - Release 1.16.0 + * tests/check/scenarios/check_video_track_restriction_scale.scenario: + framepositioner: Fix some source repositionning rounding issues + Avoid loosing (too much) precision when rescaling back and forth by + storing values in gdoubles. + Handle the fact that position values can be negative + Also fix debug category static variable + as it clashes with the instance variable name in a few methods. -2019-04-16 12:23:10 -0700 Julien Isorce +2020-04-16 12:53:00 -0400 Thibault Saunier - * omx/gstomx.c: - Fixes build with omx >= 1.2.0 - gstomx.c:1405:10: error: ‘OMX_IndexParamCustomContentPipe’ undeclared (first use in this function) - case OMX_IndexParamCustomContentPipe - Some enums have been deprecated in 1.2.0 - https://gitlab.freedesktop.org/gstreamer/gst-omx/issues/27 + * ges/ges-clip-asset.c: + * ges/ges-timeline.c: + timeline: Fix wrong usage of scale_int + We are multiplying the framerate by GST_SECOND and thus have no + guarantee that it won't overflow. -2018-05-18 10:55:21 +0200 Guillaume Desmottes +2020-04-11 11:40:06 -0400 Thibault Saunier - * configure.ac: - * examples/egl/Makefile.am: - * examples/egl/meson.build: - testegl: properly detect and use rpi specific libs - Use pkg-config to detect and configure rpi specific libs used in testegl - rather than hardcoding their flags. + * ges/ges-image-source.c: + * ges/ges-video-uri-source.c: + ges: Place imagefreeze at right place + Negotiation fails when having the imagefreeze after videorate and + frame positioning won't happen after seeks if we do not put it + before the postioner -2018-05-18 10:53:34 +0200 Guillaume Desmottes +2020-04-09 11:24:44 -0400 Thibault Saunier - * examples/egl/testegl.c: - testelg: include eglext.h - Neded for the declaration of eglSaneChooseConfigBRCM(). + * ges/ges-project.c: + * ges/ges-timeline.c: + asset: Avoid dereferencing NULL pointer + CID 1461286 -2018-05-18 10:38:33 +0200 Guillaume Desmottes +2020-04-09 11:20:34 -0400 Thibault Saunier - * examples/egl/testegl.c: - testegl: move up pi specific macros - We need to define __VCCOREVER__ and disable redundant-decls before - including the egl.h from the pi. + * plugins/ges/gesbasebin.c: + basebin: Do not set stream_group if upstream didn't provide it + CID: 1461278 -=== release 1.15.90 === +2020-04-09 11:17:59 -0400 Thibault Saunier -2019-04-11 00:40:52 +0100 Tim-Philipp Müller + * ges/gstframepositioner.c: + framepositionner: Fix wrong old size check condition + CID: 1461277 - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.15.90 +2020-04-09 11:16:34 -0400 Thibault Saunier -2019-04-10 00:19:55 +0100 Tim-Philipp Müller + * ges/ges-validate.c: + validate: Avoid dereferencing NULL pointer + CID: 1461266 - * meson.build: - meson: add -Wundef as additional warning flag +2020-04-09 11:10:43 -0400 Thibault Saunier -2019-04-10 00:16:27 +0100 Tim-Philipp Müller + * ges/ges-timeline.c: + timeline: Ensure setting framerate in timeline_get_framerate + CID: 1461250, 1461288 - * omx/gstomxvideoenc.c: - omx: fix autotools build for generic target - gstomxvideoenc.c:2874:7: error: "USE_OMX_TARGET_ZYNQ_USCALE_PLUS" is not defined, evaluates to 0 [-Werror=undef] - #elif USE_OMX_TARGET_ZYNQ_USCALE_PLUS - Works on meson because it doesn't use -Wundef +2020-04-09 11:07:04 -0400 Thibault Saunier -2018-11-12 12:51:28 +0200 Jordan Petridis + * tests/check/nle/complex.c: + tests: Check that linking pads works + CID: 1456061 - * .gitlab-ci.yml: - Add Gitlab CI configuration - This commit adds a .gitlab-ci.yml file, which uses a feature - to fetch the config from a centralized repository. The intent is - to have all the gstreamer modules use the same configuration. - The configuration is currently hosted at the gst-ci repository - under the gitlab/ci_template.yml path. - Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29 +2020-04-09 11:02:26 -0400 Thibault Saunier -2019-03-25 16:30:11 +0100 Guillaume Desmottes - - * omx/gstomx.c: - omx: disable OMX_API_TRACE code if gst debug is disabled - No need to create debug structs which won't be used as DEBUG macros are - no-op. - -2018-10-11 10:55:04 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: log Get/SetParameter/Config calls - Extend OMX_API_TRACE by logging component configuration calls. - -2019-02-06 14:57:05 +0100 Guillaume Desmottes - - * omx/gstomxbufferpool.c: - omxbufferpool: don't use CAT_PERFORMANCE if pool will copy - This was the single place where this category was used in gst-omx so - most users, including me, are generally not turning it and were missing this - important information from logs. - The copying code uses gst_video_frame_copy() which is already logging - with CAT_PERFORMANCE so we can still have this information when using - only this debug category. - -2019-02-06 14:50:44 +0100 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: add debug if proposed pool can't provide enough buffers - We were silently ignoring the pool which was pretty confusing when - debugging. - -2019-03-26 12:17:26 +0000 Charlie Turner - - * omx/gstomxaacdec.c: - * omx/gstomxaacenc.c: - * omx/gstomxamrdec.c: - * omx/gstomxh263dec.c: - * omx/gstomxh263enc.c: - * omx/gstomxh264dec.c: - * omx/gstomxh264enc.c: - * omx/gstomxh265dec.c: - * omx/gstomxh265enc.c: - * omx/gstomxmjpegdec.c: - * omx/gstomxmp3dec.c: - * omx/gstomxmp3enc.c: - * omx/gstomxmpeg2videodec.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxtheoradec.c: - * omx/gstomxvp8dec.c: - * omx/gstomxwmvdec.c: - omx: Add hardware classifiers to encoders/decoders - -2019-03-25 16:01:48 +0100 Guillaume Desmottes + * ges/ges-structured-interface.c: + structured-interface: Properly check that setting keyframe works + Fixes CID: 1455490 - * meson.build: - meson: sync warnings flags with -good - Add more warnings flags and disabled unused variable warnings if gst - debug system is disabled. - Copied from gst-plugins-good/meson.build +2020-04-09 10:59:40 -0400 Thibault Saunier -2019-03-04 09:16:40 +0000 Tim-Philipp Müller + * plugins/ges/gesdemux.c: + gesdemux: Check result of g_stat + CID: 1455489, 1455521 - * NEWS: - * RELEASE: - * configure.ac: - * meson.build: - Back to development +2020-04-09 10:54:26 -0400 Thibault Saunier -=== release 1.15.2 === + * tests/check/ges/tempochange.c: + test: tempochange: Plug leak + CID: 1455448 -2019-02-26 12:02:23 +0000 Tim-Philipp Müller +2020-04-09 10:42:03 -0400 Thibault Saunier - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.15.2 + * ges/ges-timeline.c: + ges: Cast to signed int to compare agasint 0 + The check made sense but we were not casting to be able to check + signess of subtraction result. + CID: 1444923 -2019-02-14 23:57:09 +0000 Tim-Philipp Müller +2020-04-09 10:37:20 -0400 Thibault Saunier - * meson.build: - * meson_options.txt: - meson: add options to disable examples, tests and tools and bump meson requirement + * ges/ges-timeline.c: + timeline: Do not compare unsigned with 0 + Layer priorities are always positive the check was making no + sense in any case. + Fixes CID: 1444922, 1461284 -2019-01-04 10:11:38 +0100 Guillaume Desmottes +2020-04-09 10:31:36 -0400 Thibault Saunier - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideo: use GST_VIDEO_CAPS_MAKE() for template caps - Simplify the code and so we advertise the formats actually supported by - gst-omx. + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-group.c: + * ges/ges-pitivi-formatter.c: + * plugins/ges/gesdemux.c: + * tests/check/ges/clip.c: + ges: Always check return value of `ges_container_add` + Making coverity happy + CIDs: 1461460, 1461461, 1461462, 1461463, 1461464, 1461465, 1461466, 1461468, -2018-06-04 12:20:03 +0200 Guillaume Desmottes +2020-04-09 10:00:43 -0400 Thibault Saunier - * omx/gstomxvideoenc.c: - omxvideoenc: validate cpb-size and initial-delay - cpb-size cannot be smaller than initial-delay. + * ges/ges-video-test-source.c: + ges: Fix sending EOS on testclip when using timeoverlay + Basically when using timeoverlay we where waiting for input-selector + to receive EOS on its active on the output-selector streaming thread + but... EOS was being sent from that same thread waiting for input-selector + to unblock to send EOS on its other pad. + In our specific use case we want EOS to be sent only on the active pad. + Fixes: https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/103 -2018-10-02 10:47:06 -0400 Nicolas Dufresne +2020-04-09 09:29:17 -0400 Thibault Saunier - * omx/gstomxvideodec.c: - omxvideodec: Remove duplicated QoS code - The 'finish' function do the exact same check / drop, there is no - need to duplicate this here. + * docs/deprecated.md: + * docs/libs/GESAudioTestSource-children-props.md: + * docs/libs/GESAudioUriSource-children-props.md: + * docs/libs/GESTitleSource-children-props.md: + * docs/libs/GESTransitionClip-children-props.md: + * docs/libs/GESVideoTestSource-children-props.md: + * docs/libs/GESVideoUriSource-children-props.md: + * docs/libs/document-children-props.py: + * docs/sitemap.txt: + * ges/ges-audio-test-source.h: + * ges/ges-audio-uri-source.h: + * ges/ges-effect-asset.c: + * ges/ges-source-clip-asset.c: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + * ges/ges-transition-clip.h: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + * ges/ges-video-test-source.h: + * ges/ges-video-uri-source.h: + ges: Update documentation + And start generating TrackElement children property with a stupid + simple script + +2020-04-09 09:24:12 -0400 Thibault Saunier + + * ges/ges-video-test-source.c: + ges: Add the foreground color child property + +2020-04-07 10:53:15 -0400 Thibault Saunier + + * ges/ges-asset.c: + * tests/check/python/test_assets.py: + ges: Fix reloading UriClipAsset synchronously + And add tests for that + +2020-04-07 10:47:07 -0400 Thibault Saunier + + * bindings/python/gi/overrides/GES.py: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-internal.h: + * ges/ges-track-element.c: + * ges/ges-transition-clip.c: + * ges/ges-uri-asset.c: + * tests/check/python/test_clip.py: + ges: Rework the way we ensure core elements are not wrongly moved between clips + Instead of focusing on the instances of the clips and their children, + we relax the check to allow moving track element clip between clips + that share a common asset. This makes it as correct conceptually but + more flexible, and the code becomes simpler. + +2020-04-02 11:58:18 +0100 Henry Wilkes + + * ges/ges-container.c: + * ges/ges-group.c: + * ges/ges-timeline.c: + group: tidied timeline membership in copy-paste + Previously, the GESContainer ->paste method and GESGroup ->paste methods + were unnecessarily setting the timeline of groups, even though this is + handled by the GESGroup ->child_added method. This could result in the + group being added multiple times. + +2020-04-01 21:34:48 +0100 Henry Wilkes + + * ges/ges-timeline-tree.c: + * tests/check/python/test_timeline.py: + timeline-tree: fix overlap check + Previously, the code was not able to detect that an element overlaps on + its end, nor could it detect that an element overlaps two elements that + already overlap. + +2020-04-06 12:44:30 +0100 Henry Wilkes + + * ges/ges-clip.c: + * tests/check/ges/clip.c: + clip: tidy grouping + Make the grouping of clips cleaner by checking that the clips share the + same asset. + +2020-04-06 12:42:03 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-layer.c: + clip: secure adding clip to layer + Add more checks when adding a clip to a layer, or moving a clip to a new + layer. Also, mark the "layer" property as explicit-notify. + +2020-04-06 12:28:13 +0100 Henry Wilkes + + * ges/ges-uri-clip.c: + uri-clip: match children by track + When the asset of a uri clip is reset, its core children are removed and + replaced by the new core children. When replacing, the `set_asset` + method attempts to copy children properties from the previous children + to the new children. However, the children were matched by track-type + only. This would not function as intended when a URI contains multiple + audio or video streams. Instead, we now match children by the tracks + themselves. This should work better, provided the user's + select-tracks-for-object is well behaved. + Also, fix a memory problem in `set_mute` for when a child is not in a + track. + +2020-04-06 12:26:11 +0100 Henry Wilkes + + * ges/ges-timeline-element.c: + * ges/ges-track-element.c: + timeline-element: only copy read-write properties + Only copy the properties that can be both read and written, and are not + construct only. Similarly for child properties when a track-element is + deep copied. + +2020-04-06 12:17:43 +0100 Henry Wilkes + + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + timeline: return sunk element on pasting + Technically, an element can still be floating on the return from + `->paste` (e.g. a clip not in a layer). Since the return of the `_paste` + methods are (return full) a non-floating object is probably expected in + all cases. + +2020-04-06 12:16:11 +0100 Henry Wilkes + + * ges/ges-timeline.c: + * tests/check/ges/basic.c: + auto-transition: select track directly + By-pass the select-tracks-for-object signal for auto-transitions since + their track element must land in the same track as the elements it is + the auto-transition for. + +2020-04-06 12:09:54 +0100 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/test-utils.h: + 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-03-26 09:21:42 +0000 Henry Wilkes + + * ges/ges-timeline.c: + timeline: stop connecting to track-element-added + This was used to connect to the track element's notify::start signal in + order to update the duration of the timeline (it is not clear why the + notify::duration signal was not also connected to for the same reason). + However, this is already covered by the timeline_tree_move method, which + is always called to update the start of a track element, even if it is not + part of a clip (and similarly for timeline_tree_trim, which is called + when the duration is set). + +2020-03-25 19:35:11 +0000 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-uri-clip.c: + * tests/check/ges/clip.c: + clip: allow arbitrary max-duration when no core children + Before the max-duration could be set arbitrarily when the clip was empty, + to indicate what the max-duration would be once the core children were + created. Now, we can also do this whilst the clip only contains non-core + children. + +2020-03-25 18:49:16 +0000 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * tests/check/python/test_clip.py: + track-element: change owner to creator + Rename the private "owners" to "creators" to avoid confusing this with + the owner of the track element's memory. + Also made the ungroup method for GESClip symmetric by making all the + children of the resulting clips share their creators, which allows them + to be added to any of the other ungrouped clips. Once the clips are + grouped back together, the tracks loose these extra creators. + +2020-04-06 12:21:54 +0100 Henry Wilkes + + * ges/ges-container.c: + * tests/check/ges/clip.c: + container: change ownership when adding + Make sure we sink the child on adding, and keep it alive until the end + in case the method fails. + Also, since the child mappings hold a ref to the child, they should give + them up in their free method. This way, the ref will be given up on + disposing, even if ges_container_remove fails. + Also, reverse setting of the start of the container if adding fails. + +2020-04-06 23:06:29 +0530 Nirbheek Chauhan + + * ges/ges-uri-clip.c: + * ges/ges-video-source.c: + ges: Fix build with GCC 10 + gcc-10 defaults to -fno-common, which exposes a symbol conflict, so + use `static` correctly. Also we don't use `parent_extractable_iface` + in `ges-uri-clip.c`. + See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85678 + +2020-03-31 11:25:49 -0300 Thibault Saunier + + * ges/ges-container.c: + * tests/check/python/test_timeline.py: + ges: Fix trimming clip inside deeply nested groups + This broke in 6b7c658b6a551a5b9170987ba44592d1d819e1ae + +2020-03-24 22:47:01 -0300 Thibault Saunier + + * ges/ges-uri-clip.c: + uri-clip: Remove dead code + GES_TESTING_ASSETS_DIRECTORY is prehistoric and since then + new mechanism for asset relocation have been added, it makes + no sense to keep that unused code path + +2020-03-24 22:44:07 -0300 Thibault Saunier + + * ges/ges-uri-clip.c: + uri-clip: Remove ->create_track_element implementation + It is dead code + +2020-03-24 22:35:35 -0300 Thibault Saunier + + * ges/ges-image-source.c: + * ges/ges-multi-file-source.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-video-source.c: + * ges/ges-video-source.h: + * ges/ges-video-uri-source.c: + * tests/check/ges/uriclip.c: + * tests/check/python/test_clip.py: + ges: Deprecate GESImageSource and GESMultiFileSource + Refactoring GESVideoSource so that #GESUriVideoSource can handle + still image in a simple way + MultiFileSource has been replaced with the new `imagesequencesrc` + element, this was totally broken anyway as `multifilesrc` can not seek + properly. + +2020-03-24 22:30:38 -0300 Thibault Saunier + + * ges/ges-audio-uri-source.c: + * ges/ges-track-element.c: + * ges/ges-video-source.c: + * ges/ges-video-uri-source.c: + track-element: Create nleobject on GESExtractable::set_asset + This means that we have all the information about the asset + when constructing the underlying GstElements. + This also allows to cleanup some code all around + +2020-03-24 22:25:47 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + timeline:element: Refactor the way we 'copy' + Simplifying the implementation and making sure assets are set asap + +2020-03-24 22:23:16 -0300 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-audio-test-source.c: + * ges/ges-audio-transition.c: + * ges/ges-audio-transition.h: + * ges/ges-effect-clip.c: + * ges/ges-group.c: + * ges/ges-text-overlay.c: + * ges/ges-text-overlay.h: + * ges/ges-title-source.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + * ges/ges-video-transition.c: + * ges/ges-video-transition.h: + ges: Use assets to instantiate track elements/group + And deprecate all GESTrackElement constructors, but the GESEffect one. + Those should **never** be created by users and should become internal + in the future. + Stop having docstring for the constructors that were internal. + +2020-03-18 16:24:08 -0300 Thibault Saunier + + * tests/check/assets/audio_only.ogg: + * tests/check/assets/audio_video.ogg: + * tests/check/assets/image.png: + * tests/check/assets/test-auto-transition.xges: + * tests/check/assets/test-project.xges: + * tests/check/assets/test-properties.xges: + * tests/check/ges/test-utils.c: + * tests/check/meson.build: + * tests/check/python/test_clip.py: + tests: Cleanup test files handling + +2020-03-13 15:03:17 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-layer.h: + * ges/ges-xml-formatter.c: + formatter: Serialize source properties + This way we ensure that the TrackElement 'active' property is + properly serialized + +2020-03-06 18:56:52 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-layer.h: + * ges/ges-timeline-tree.c: + * ges/ges-timeline-tree.h: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-validate.c: + * ges/ges-xml-formatter.c: + * tests/check/meson.build: + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + * tests/check/scenarios/check_layer_activness_gaps.scenario: + ges: Add a way to set layer activeness by track + a.k.a muting layers. + Adding unit tests and making sure serialization works properly -2018-09-20 14:44:09 -0400 Nicolas Dufresne +2020-03-23 21:21:10 -0300 Thibault Saunier - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Remove dead code - The omxvideodec base class have a totally unused prepare_frame() vritual - function, remove it. + * ges/ges-timeline-element.c: + element: Add API safe guard against invalid position in edit() -2018-07-11 17:38:22 -0700 Varunkumar Allagadapa +2020-03-23 21:11:45 -0300 Thibault Saunier - * omx/gstomxvideoenc.c: - omxvideoenc: add adaptive gop-mode option - Added adaptive gop-mode option to ZYNQ_USCALE_PLUS encoder properties + * ges/ges-validate.c: + validate: Refactor actions implementation + Making them simpler to read and avoiding leaks -2018-02-13 18:25:51 +0000 Nicolas Dufresne +2020-03-23 15:14:13 -0300 Thibault Saunier - * omx/gstomxvideoenc.c: - omxvideoenc: Add dynamic framerate support - Instead of going through a full reset, try and change the framerate - config on the encoder when only the framerate have change. + * ges/ges-structured-interface.c: + structured-interface: Fix adding clip to layer error reporting -=== release 1.15.1 === +2020-03-17 11:53:47 -0300 Thibault Saunier -2019-01-17 02:38:28 +0000 Tim-Philipp Müller + * ges/ges-clip-asset.c: + * ges/ges-source-clip-asset.c: + * ges/ges-source-clip-asset.h: + * ges/ges-source-clip.c: + * ges/ges-test-clip.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/meson.build: + ges: Add a SourceClipAsset class + Cleaning up the way we use the default framerate for natural + frame rate. - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.15.1 +2020-03-10 16:10:12 -0300 Thibault Saunier -2018-02-20 10:57:42 -0800 Varunkumar Allagadapa - - * omx/gstomxvideoenc.c: - omxvideoenc: Add dynamic IDR insertion support on zynq - As the pi, the zynq has its own API to request keyframe. - -2019-01-07 13:29:37 +0100 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxbufferpool.c: - omxbufferpool: fix race when releasing input buffers - If buffers were released from the pool while - gst_omx_video_enc_handle_frame() was waiting for new buffers, - gst_omx_port_acquire_buffer() was never awaken as the buffers weren't - released through OMX's messaging system. - GQueue isn't thread safe so also protect it with the lock mutex. - -2018-11-15 11:17:59 +0100 Guillaume Desmottes - - * omx/gstomxbufferpool.c: - * omx/gstomxbufferpool.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxbufferpool: fix early input buffer release - We used to track the 'allocating' status on the pool. It is used while - allocating so output buffers aren't passed right away to OMX and input - ones are not re-added to the pending queue. - This was causing a bug when exporting buffers to v4l2src. On start - v4l2src acquires a buffer, read its stride and release it right away. - As no buffer was received by the encoder element at this point, 'allocating' - was still on TRUE and so the the buffer wasn't put back to the pending - queue and, as result, no longer available to the pool. - Fix this by checking the active status of the pool instead of manually - tracking it down. The pool is considered as active at the very end of - the activation process so we're good when buffers are released during - the activation. - -2018-12-05 17:24:48 -0300 Thibault Saunier + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/ges-validate.c: + launch: Add a way to disable validate at runtime + Also avoid to add useless bin in our sinks - * common: - Automatic update of common submodule - From ed78bee to 59cb678 +2020-03-09 15:38:58 -0300 Thibault Saunier -2018-11-23 12:57:15 +0100 Guillaume Desmottes + * ges/ges-structured-interface.c: + * ges/ges-timeline.c: + * ges/ges-uri-asset.c: + * ges/ges-validate.c: + * tests/check/meson.build: + * tools/ges-launch.c: + * tools/ges-launcher.c: + * tools/ges-validate.c: + ges: Plug some leaks + +2020-02-28 11:56:22 -0300 Thibault Saunier + + * ges/ges-validate.c: + * tests/check/scenarios/check_edit_in_frames_with_framerate_mismatch.scenario: + validate: Add support to seek in frames + +2020-02-28 11:47:25 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-extractable.c: + * ges/ges-extractable.h: + * ges/ges-internal.h: + * ges/ges-structure-parser.c: + * ges/ges-test-clip.c: + * ges/ges-video-test-source.c: + * tests/check/python/test_timeline.py: + ges: support test clips assets natural size/framerate + This way we can test this kind of behaviour without requiring + real sources. + Also add simple tests. + +2020-02-21 09:17:11 -0300 Thibault Saunier + + * ges/ges-clip-asset.c: + * ges/ges-clip-asset.h: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-command-line-formatter.c: + * ges/ges-gerror.h: + * ges/ges-internal.h: + * ges/ges-structured-interface.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-types.h: + * ges/ges-utils.c: + * ges/ges-validate.c: + * tests/check/meson.build: + * tests/check/scenarios/check_edit_in_frames.scenario: + * tests/check/scenarios/check_edit_in_frames_with_framerate_mismatch.scenario: + ges: Add APIs to have a sens of frame numbers + APIs: + - ges_timeline_get_frame_time + - ges_timeline_get_frame_at + - ges_clip_asset_get_frame_time + - ges_clip_get_timeline_time_from_source_frame + Extracting ges_util_structure_get_clocktime to internal utilities adding + support for specifying timing values in frames with the special + f synthax. + +2019-10-29 16:52:52 +0000 Henry Wilkes + + * tools/utils.c: + utils: fix argument sanitization + _sanitize_argument is supposed to wrap arguments in '"' quote marks such + that they can be parsed and copied into a GstStructure string. This + purpose is now supported more directly, which fixes some bugs, e.g.: + arguments before fix + +title my=title +title my="title" +title "my=title" + +title abc n=my=name +title abc n="my="name" +title abc n="my=name" + +title my"title +title "my"title" +title "my\"title" + +title my\title +title "my\title" +title "my\\title" + +2020-02-28 11:52:38 -0300 Thibault Saunier + + * tools/ges-launcher.c: + * tools/utils.c: + launch: Fix memory management issue with the rendering format + +2020-02-25 17:42:47 -0300 Thibault Saunier + + * ges/ges-validate.c: + validate: Rename edit-container to edit + Keeping the old version for backward compat + +2020-02-21 17:17:10 -0300 Thibault Saunier + + * ges/ges-source.c: + * ges/ges-video-test-source.c: + ges: Add a timeoverlay to video test sources + This is often very useful to have a timeoverlay inside test sources. + We do not want to use it as an effect as segments are not the sames + in GES when it comes to nleoperations. + +2020-02-25 18:39:47 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + element: Handle using own property as child property + Avoiding ref cycles + +2020-02-21 17:16:01 -0300 Thibault Saunier + + * ges/ges-clip.c: + ges: Ensure GESClips assets are always ClipAssets + +2020-02-18 15:21:38 -0300 Thibault Saunier + + * ges/ges-audio-uri-source.c: + * ges/ges-clip-asset.c: + * ges/ges-clip-asset.h: + * ges/ges-clip.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element-asset.c: + * ges/ges-track-element-asset.h: + * ges/ges-track-element.c: + * ges/ges-uri-asset.c: + * ges/ges-video-uri-source.c: + ges: Add API to retrieve the natural framerate of an element + +2020-02-28 17:53:55 -0300 Thibault Saunier + + * ges/ges-track.c: + ges: Some memory management fixes setting track mixing + Also fix 'mixing' property notifies + +2020-02-28 17:50:05 -0300 Thibault Saunier + + * ges/ges-enums.c: + ges: Cleanup GESEdge and GESEditMode GEnum values + By duplicating the registered values, so that bindings have + better values to use + +2020-03-02 14:35:33 -0300 Thibault Saunier + + * tools/ges-launcher.c: + launch: Make command line provided sinks override scenario defined ones + +2020-02-28 11:58:30 -0300 Thibault Saunier + + * ges/gstframepositioner.c: + framepositioner: Avoid dereferencing NULL pointer + +2020-03-04 16:03:30 -0300 Thibault Saunier + + * ges/ges-validate.c: + validate: Initialize GValue before calling g_object_get_value + This is required with GLib < 2.60 + +2020-03-17 18:13:51 -0300 Thibault Saunier + + * ges/ges-asset.h: + * ges/ges-audio-source.h: + * ges/ges-audio-test-source.h: + * ges/ges-audio-track.h: + * ges/ges-audio-transition.h: + * ges/ges-audio-uri-source.h: + * ges/ges-auto-transition.h: + * ges/ges-base-effect-clip.h: + * ges/ges-base-effect.h: + * ges/ges-base-transition-clip.h: + * ges/ges-base-xml-formatter.h: + * ges/ges-clip-asset.h: + * ges/ges-clip.h: + * ges/ges-command-line-formatter.h: + * ges/ges-container.h: + * ges/ges-effect-asset.h: + * ges/ges-effect-clip.h: + * ges/ges-effect.h: + * ges/ges-enums.h: + * ges/ges-extractable.h: + * ges/ges-formatter.h: + * ges/ges-gerror.h: + * ges/ges-group.h: + * ges/ges-image-source.h: + * ges/ges-internal.h: + * ges/ges-layer.h: + * ges/ges-marker-list.h: + * ges/ges-meta-container.h: + * ges/ges-multi-file-source.h: + * ges/ges-operation-clip.h: + * ges/ges-operation.h: + * ges/ges-overlay-clip.h: + * ges/ges-pipeline.h: + * ges/ges-pitivi-formatter.h: + * ges/ges-prelude.h: + * ges/ges-project.h: + * ges/ges-screenshot.h: + * ges/ges-smart-adder.h: + * ges/ges-smart-video-mixer.h: + * ges/ges-source-clip.h: + * ges/ges-source.h: + * ges/ges-structure-parser.h: + * ges/ges-structured-interface.h: + * ges/ges-test-clip.h: + * ges/ges-text-overlay-clip.h: + * ges/ges-text-overlay.h: + * ges/ges-timeline-element.h: + * ges/ges-timeline-tree.h: + * ges/ges-timeline.h: + * ges/ges-title-clip.h: + * ges/ges-title-source.h: + * ges/ges-track-element-asset.h: + * ges/ges-track-element.h: + * ges/ges-track.h: + * ges/ges-transition-clip.h: + * ges/ges-transition.h: + * ges/ges-types.h: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.h: + * ges/ges-utils.h: + * ges/ges-version.h.in: + * ges/ges-video-source.h: + * ges/ges-video-test-source.h: + * ges/ges-video-track.h: + * ges/ges-video-transition.h: + * ges/ges-video-uri-source.h: + * ges/ges-xml-formatter.h: + * ges/ges.h: + * plugins/ges/gesbasebin.h: + * tests/check/ges/test-utils.h: + * tools/ges-launcher.h: + * tools/ges-validate.h: + ges: Use #pragma once everywhere + +2020-03-17 15:51:39 -0300 Thibault Saunier + + * ges/ges-asset.h: + * ges/ges-audio-source.h: + * ges/ges-audio-test-source.h: + * ges/ges-audio-track.h: + * ges/ges-audio-transition.h: + * ges/ges-audio-uri-source.h: + * ges/ges-auto-transition.h: + * ges/ges-base-effect-clip.h: + * ges/ges-base-effect.h: + * ges/ges-base-transition-clip.h: + * ges/ges-base-xml-formatter.h: + * ges/ges-clip-asset.h: + * ges/ges-clip.h: + * ges/ges-command-line-formatter.h: + * ges/ges-container.h: + * ges/ges-effect-asset.h: + * ges/ges-effect-clip.h: + * ges/ges-effect.h: + * ges/ges-extractable.h: + * ges/ges-formatter.h: + * ges/ges-group.h: + * ges/ges-image-source.h: + * ges/ges-internal.h: + * ges/ges-layer.h: + * ges/ges-meta-container.h: + * ges/ges-multi-file-source.h: + * ges/ges-operation-clip.h: + * ges/ges-operation.c: + * ges/ges-operation.h: + * ges/ges-overlay-clip.h: + * ges/ges-pipeline.h: + * ges/ges-pitivi-formatter.h: + * ges/ges-project.h: + * ges/ges-smart-video-mixer.c: + * ges/ges-source-clip.h: + * ges/ges-source.h: + * ges/ges-test-clip.h: + * ges/ges-text-overlay-clip.h: + * ges/ges-text-overlay.h: + * ges/ges-timeline-element.h: + * ges/ges-timeline.h: + * ges/ges-title-clip.h: + * ges/ges-title-source.h: + * ges/ges-track-element-asset.h: + * ges/ges-track-element.h: + * ges/ges-track.h: + * ges/ges-transition-clip.h: + * ges/ges-transition.c: + * ges/ges-transition.h: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.h: + * ges/ges-video-source.h: + * ges/ges-video-test-source.h: + * ges/ges-video-track.h: + * ges/ges-video-transition.h: + * ges/ges-video-uri-source.h: + * ges/ges-xml-formatter.h: + * tools/ges-launcher.h: + ges: Cleanup the way we declare object types + We create our own _DECLARE_ macro because we have instance structures + +2020-03-19 09:15:07 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + ges: Stop using hash_table_steal_extended + This appeard in GLib 2.58 + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/99 + +2020-03-18 13:36:47 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-uri-clip.c: + * tests/check/assets/30frames.ogv: + * tests/check/ges/clip.c: + * tests/check/python/test_clip.py: + clip: Allow setting max-duration clips without TrackElements + Otherwise this breaks quite a few assumption in user code, several + pitivi tests broke because of that. + +2020-03-18 12:56:06 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * tests/check/assets/30frames.ogv: + * tests/check/python/test_clip.py: + ges: Make it so core elements can be re added to their 'owners' + The user might want to add/remove/add core children to clips and be able + to regroup ungrouped clip. This is needed for undo/redo in Pitivi for + example + +2020-03-18 11:12:55 -0300 Thibault Saunier + + * ges/ges-container.c: + container: Let subclass know adding child was interrupted + When the `child-added` signal emission was called, the + `GESContainer->child_added` vmethod was called (the signal is + `G_SIGNAL_RUN_FIRST`) so we need to call `GESContainer->child_removed` + ourself so subclasses know they do not control the child anymore. + +2020-03-10 16:01:02 +0000 Henry Wilkes + + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + timeline-element: make start and duration EXPLICIT_NOTIFY + The properties will only have their signal emitted when they change in + value, even when g_object_set, etc, methods are used. + The _set_start method already did this, but start was missing the + EXPLICIT_NOTIFY flag. There should be no need to check that the property + has changed in ->set_start or ->set_duration + +2020-03-10 15:27:20 +0000 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-track-element.c: + * tests/check/ges/clip.c: + timeline-element: make max-duration cap in-point + Do not allow the in-point to exceed the max-duration of any timeline + element. - * omx/gstomx.c: - omx: fix OMX_EventBufferFlag OMX_API_TRACE struct - The GType was missing from the second field of the struct. +2020-03-10 11:53:09 +0000 Henry Wilkes + + * ges/ges-clip.c: + * tests/check/ges/clip.c: + clip: only allow children with the same timeline + Refuse the addition of children whose timeline is neither NULL nor the + clip's timeline. + +2020-03-10 11:38:58 +0000 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-transition-clip.c: + * ges/ges-uri-clip.c: + * tests/check/ges/clip.c: + * tests/check/ges/overlays.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + clip: re-handle child in-point and max-duration + The in-point of a clip is kept in sync with its core children, unless they + have no has-internal-source. + The max-duration is defined as the minimum max-duration amongst the + clip's core children. If it is set to a new value, this sets the + max-duration of its core children to the same value if they have + has-internal-source set as TRUE. + Non-core children (such as effects on a source clip) do not influence + these values. + As part of this, we no longer track in-point in GESContainer. Unlike start + and duration, the in-point of a timeline element does not refer to its + extent in the timeline. As such, it has little meaning for most + collections of timeline-elements, in particular GESGroups. As such, there + is no generic way to relate the in-point of a container to its children. + +2020-03-10 11:35:23 +0000 Henry Wilkes + + * ges/ges-group.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + timeline-element: make in-point and max-duration EXPLICIT_NOTIFY + As such, they only emit a signal if their value changes, either through + their _set_inpoint or _set_max_duration methods, or through + g_object_set, etc. + Also, we now require the ->set_max_duration method to be implemented. + This was added to GESGroup, which will only allow the max-duration to be + set to GST_CLOCK_TIME_NONE. + +2020-03-10 11:29:40 +0000 Henry Wilkes + + * ges/ges-image-source.c: + * ges/ges-source.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + track-element: add has-internal-source property + Unless this property is set to TRUE, the in-point must be 0 and the + max-duration must be GST_CLOCK_TIME_NONE. + Also added EXPLICIT_NOTIFY flags to the active and track-type + properties such that their notifies are emitted only if the property + changes, even when the g_object_set, etc, methods are used. + Also added a missing notify signal to the set_active method. + +2020-03-03 18:00:51 +0000 Henry Wilkes + + * ges/ges-clip.c: + * tests/check/ges/clip.c: + clip: copy and paste control bindings + Previously the control bindings were not properly copied into the pasted + clip. Also changed the order so that elements are added to the clip + before the clip is added to the timeline. + +2020-03-03 14:31:10 +0000 Henry Wilkes + + * ges/ges-container.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * tests/check/ges/clip.c: + * tests/check/ges/group.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + timeline-element: add signals for child properties + Add the child-property-added and child-property-removed signals to + GESTimelineElement. + GESContainer is able to use this to keep their child properties in sync + with their children: if they are added or removed from the child, they + are also added or removed from the container. + +2020-03-02 12:23:07 +0000 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-group.c: + * tests/check/ges/clip.c: + container: freeze notifies during add and remove + Hold the notify signals for the container and the children until after + the child has been fully added or removed. + After the previous commit, this was used to ensure that the + notify::priority signal was sent for children of a clip *after* the + child-removed signal. This stopped being the case when the code in + ->child_removed was moved to ->remove_child (the latter is called before + the child-removed signal is emitted, whilst the former is called + afterwards). Rather than undo this move of code, which was necessary to + ensure that ->add_child was always reversed, the notify::priority signal + is now simply delayed until after removing the child has completed. This + was done for all notify signals, as well as in the add method, to ensure + consistency. + This allows the test_clips.py test_signal_order_when_removing_effect to + pass. + Also make subclasses take a copy of the list of the children before + setting the start and duration, since this can potentially re-order the + children (if they have the SET_SIMPLE flag set). + +2020-03-02 13:35:20 +0000 Henry Wilkes + + * ges/ges-clip.c: + clip: make remove_child a reverse of add_child + Previously, we relied on ->child_removed to reverse the priority changes + that occured in ->add_child. However, ->child_removed is not always + called (the signal child-removed is not always emitted) when a + ->add_child needs to be removed. However, ->remove_child is always + called to reverse ->add_child, so the code was moved here. Otherwise, we + risk that the priorities of the clip will contain gaps, which will cause + problems when another child is added to the clip. + +2020-03-02 13:25:21 +0000 Henry Wilkes + + * ges/ges-clip.c: + clip: tidy handling of child priorities + Handle the child priorities in a way that keeps the container children + list sorted by priority at all times. Also, no longer rely on the + control_mode of the container, since we have less control over its value, + compared to private variables. + Also fixed the changing of priorities in set_top_effect_index: + previously *all* children whose priority was above or below the new + priority were shifted, when we should have been only shifting priorities + for the children whose priority lied *between* the old and the new + priority of the effect. E.g. + effect: A B C D E F + index: 0 1 2 3 4 5 + After moving effect E to index 1, previously, we would get + effect: A B C D E F + index: 0 2 3 4 1 6 + (this would have also shifted the priority for the core children as + well!). Whereas now, we have the correct: + effect: A B C D E F + index: 0 2 3 4 1 5 + +2020-03-02 12:56:03 +0000 Henry Wilkes + + * ges/ges-base-effect-clip.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-container.c: + * ges/ges-internal.h: + * ges/ges-source-clip.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/test-utils.h: + clip: only allow core elements as children + Only allow elements that were created by ges_clip_create_track_elements + (or copied from such an element) to be added to a clip. This prevents + users from adding arbitrary elements to a clip. + As an exception, a user can add GESBaseEffects to clips whose class + supports it, i.e. to a GESSourceClip and a GESBaseEffectClip. + This change also introduces a distinction between the core elements of a + clip (created by ges_clip_create_track_elements) and non-core elements + (currently, only GESBaseEffects, for some classes). In particular, + GESBaseEffectClip will now distinguish between its core elements and + effects added by the user. This means that the core elements will always + have the lowest priority, and will not be listed as top effects. This is + desirable because it brings the behaviour of GESBaseEffectClip in line + with other clip types. + +2020-03-11 19:38:19 -0300 Thibault Saunier + + * plugins/nle/nlecomposition.c: + * plugins/nle/nleobject.c: + nle: Delay marking object as not in composition + Instead of doing it at the time of resetting `object->in_composition` + when user calls `gst_bin_remove` do it after we actually removed + it from the object thread, and do it in the `nle_object_reset` + method where it belongs + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/96 + +2020-03-10 21:54:56 +0000 Henry Wilkes + + * ges/ges-auto-transition.c: + auto-transition: fix setting of SET_SIMPLE flag + Previously, the SET_SIMPLE flag was non unset for auto-transitions after + it had been set. + +2020-03-11 13:42:50 +0200 Sebastian Dröge -2018-11-05 05:43:43 +0000 Matthew Waters + * meson.build: + Fix build with Python 3.8 by also checking for python-3.X-embed.pc + Since Python 3.8 the normal checks don't include the Python libraries + anymore and linking of the Python formatters would fail. + See also https://github.com/mesonbuild/meson/issues/5629 + and https://gitlab.freedesktop.org/gstreamer/gst-python/issues/28 + +2020-03-09 11:49:33 -0300 Thibault Saunier + + * ges/ges-validate.c: + validate: Handle checking/setting subprojects ges properties + +2020-03-09 11:49:02 -0300 Thibault Saunier + + * ges/ges-project.c: + project: Do not warn when resetting URI to the same one + +2020-03-05 15:56:28 -0300 Thibault Saunier + + * ges/ges-auto-transition.c: + * ges/ges-clip.c: + * ges/ges-source-clip.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-tree.c: + * ges/ges-timeline.c: + * tests/check/ges/group.c: + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + ges: Make setting start/duration move or trim generic + We were implementing the logic for moving/trimming elements specific + to SourceClip but this was not correct ass the new timeline tree allows + us to handle that for all element types in a generic and nice way. + This make us need to have groups trimming properly implemented in the + timeline tree, leading to some fixes in the group tests. + This adds tests for the various cases known to not be handled properly + by the previous code. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/92 + +2020-03-04 17:42:46 -0300 Thibault Saunier + + * ges/ges-group.c: + * tests/check/python/common.py: + * tests/check/python/test_group.py: + group: Update priority when a child is removed + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/93 + +2020-03-04 17:16:18 -0300 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/python/test_timeline.py: + clip: Don't split clips at illegal position + Make sure that when we split a clip, the resulting timeline would + not be in an illegal state. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/94 + +2020-03-05 19:00:20 +0000 Henry Wilkes + + * ges/ges-pipeline.c: + pipeline: don't link tracks unnecessarily + Unless the pipeline is in certain modes, we do not want to try and link + every track. The previous debug message implied this, but the method did + not actually end early. + Also, we always end early if we receive a track that is neither video + nor audio. + +2020-03-05 18:15:41 +0000 Henry Wilkes + + * ges/ges-asset.c: + * tests/check/ges/asset.c: + asset: fix handling of proxies + Previous usage of the property proxy-target seemed to alternate between + the two definitions: + + The asset we are the default proxy of + + The asset we are in the proxy list of + Now, the latter definition is used, which seems more useful to a user + since knowing the latter can easily allow you to find out the former. + The previous behaviour of ges_asset_set_proxy (asset, NULL) was not very + clear. It is now defined so that it clears all the proxies for 'asset'. + This means that after this call, the GESAsset:proxy property will indeed + be NULL. + Also fixed: + + We can call ges_asset_set_proxy (asset, proxy) when 'proxy' is already + in the proxy list of 'asset'. + + Handling of removing the default proxy in ges_asset_unproxy. This was + sending out the wrong notifies. + + Prohibiting circular proxying. Before we could only prevent one case, + we should now be able to prevent all cases. This will prevent a hang + in ges_asset_request. + +2020-03-04 17:00:46 +0000 Henry Wilkes + + * tests/check/ges/asset.c: + test: remove asset test that needs internal method + The test_proxy_asset test needs the internal method + ges_asset_finish_proxy. The test also uses the associated internal methods + ges_asset_try_proxy and ges_asset_cache_lookup. However, these are + marked with GES_API in ges-internal.h, which allows us access to them + here. + The new method is not marked as GES_API because it would not allow us to + remove the method in the future without removing it from the symbols list. + We do not want to add to the problem. + The test was simply commented out since we may wish to support tests + that access internal methods in the future using meson. + +2020-03-04 13:05:58 +0000 Henry Wilkes + + * ges/ges-asset.c: + asset: fix ownership in ges_asset_request + Fix the ownership in ges_asset_request. This should be transfer-full, + but for proxies it would fail to add a reference. Also, + ges_asset_cache_put was leaking memory if the asset already existed. + +2020-03-04 11:31:32 +0000 Henry Wilkes + + * ges/ges-asset.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-project.c: + * tests/check/ges/asset.c: + asset: move set_proxy (NULL, proxy) behaviour to new method + We should not be accepting ges_asset_set_proxy (NULL, proxy) as part of + the API! This behaviour was used internally in combination with + ges_asset_try_proxy, which is called on a still loading asset, so it was + moved to ges_asset_finish_proxy. + +2020-03-04 10:34:45 +0000 Henry Wilkes + + * ges/ges-asset.c: + * ges/ges-asset.h: + asset: deprecate ->proxied method + This method was no longer called, so it has been deprecated. + +2020-03-04 09:59:33 +0000 Henry Wilkes + + * ges/ges-asset.c: + asset: make proxy-target read only + We should not be able to set this property. + +2020-02-27 16:08:45 +0000 Henry Wilkes + + * ges/ges-timeline.c: + timeline: fix layer priority argument in trim + Previously, we tested that the given priority was `>0`, when it seems + that `>=0` was intended. A priority of `-1` means leave the priority + unchanged, whilst a priority of 0, or more, means move to this layer + priority. + +2020-02-21 09:23:34 +0000 Henry Wilkes + + * ges/ges-container.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + timeline-element: use default ->list_children_properties + Stop overwriting the ->list_children_properties virtual method in + subclasses because the timeline element class handles everything itself + anyway. + Note that containers already automatically add the children properties of + their child elements in ges_container_add. + +2020-02-25 08:16:58 +0000 Henry Wilkes + + * ges/ges-group.c: + group: fix memory leak in child layer callback + We were leaking the sigids->layer argument because gst_clip_get_layer + returns a new reference. + +2020-02-24 20:19:12 +0000 Henry Wilkes + + * ges/ges-container.c: + container: fix child duration callback + Previously, we were setting the inpoint_offset using the start offset in + the duration callback! + Also added a notify for when the duration is changed in the child start + callback. + +2020-02-24 18:58:55 +0000 Henry Wilkes + + * ges/ges-group.c: + group: fix max layer priority + The maximum priority is `height - prio - 1`. Previously missing the -1. + Related to, but does not completely fix, + https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/91 + +2020-02-18 18:02:08 +0000 Henry Wilkes - * .gitmodules: - * gst-omx.doap: - Update git locations to gitlab - -2018-09-18 16:50:11 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: rename OMX_PERFORMANCE debug cat to OMX_API_TRACE - This debug category can now be used to track more OMX calls and events - so best to rename it to something more generic. - https://bugzilla.gnome.org/show_bug.cgi?id=797171 - -2018-08-21 17:35:04 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: log OMX commands with OMX_PERFORMANCE debug category - It has been useful to have a clear raw and structured view of the gst - <-> OMX exchanges when debugging. - https://bugzilla.gnome.org/show_bug.cgi?id=797171 - -2018-08-21 16:50:38 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: factor out gst_omx_component_send_command() - No semantic change. I'm going to add extra debug in this function. - https://bugzilla.gnome.org/show_bug.cgi?id=797171 - -2018-08-21 15:14:09 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: log OMX events with OMX_PERFORMANCE debug category - It has been useful to have a clear raw and structured view of the gst - <-> OMX exchanges when debugging. - https://bugzilla.gnome.org/show_bug.cgi?id=797171 - -2018-08-22 12:51:30 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: rename log_omx_performance() to log_omx_performance_buffer() - I'm about to log more things under this category - https://bugzilla.gnome.org/show_bug.cgi?id=797171 - -2018-09-07 22:57:30 -0400 Nicolas Dufresne - - * omx/gstomxvideoenc.c: - omxvideoenc: Remove spurious locking - The method we call in the context of pushing a buffer are all thread - safe. Holding a lock would prevent input buffers from being queued while - pushing. - https://bugzilla.gnome.org/show_bug.cgi?id=715192 - -2018-09-07 23:09:29 -0400 Nicolas Dufresne - - * omx/gstomxvideoenc.c: - omxvideoenc: Remove unneeded size check - We only enter this branch if nFilledLen > 0, there is not need - to check again. - https://bugzilla.gnome.org/show_bug.cgi?id=715192 - -2018-09-07 22:55:41 -0400 Nicolas Dufresne - - * omx/gstomxvideodec.c: - omxvideodec: Remove spurious unlock in error case - This was forgotton in previous patch. We no long hold the lock when goto - invalid_buffer is called. - https://bugzilla.gnome.org/show_bug.cgi?id=715192 - -2018-08-31 17:28:03 -0400 Nicolas Dufresne - - * omx/gstomxvideodec.c: - omxvideodec: don't hold the stream lock when trying to push a frame - The base class methods will lock this properly when needed, there seems - to be no need to lock it explicitly. - This allows the patch in gstvideodec for unlocking the stream lock - when pushing buffers out to work. - https://bugzilla.gnome.org/show_bug.cgi?id=715192 - -2018-07-31 13:22:31 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: don't import OMX buffers from downstream - We already have code configuring the encoder stride and slice height - when receiving the first buffer from upstream. - We don't have an equivalent when the encoder is exporting its buffers to the - decoder. - There is no point adding it and making the code even more - complex as we wouldn't gain anything by exporting from the encoder to - the decoder. The dynamic buffer mode already ensures 0-copy between OMX - components. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-05-15 11:59:26 +0200 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxbufferpool.c: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: implement dmabuf export on input buffers - Propose pool upstream so input buffers can be allocated by the port and - exported as dmabuf. - The actual OMX buffers are allocated when the pool is activated, so we - don't end up doing useless allocations if the pool isn't used. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-08-13 15:10:37 +0200 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudiodec.c: - * omx/gstomxaudioenc.c: - * omx/gstomxaudiosink.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: allow gst_omx_port_acquire_buffer() to not wait for buffers - Will be needed to implement GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-07-31 15:04:33 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: don't import non-dmabuf when dec is in dmabuf mode - Fix 'omxh264dec ! videocrop' pipeline. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-08-02 11:29:12 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: factor out gst_omx_try_importing_buffer() - No semantic change, just make the code clearer and improve debug output. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-07-26 16:30:08 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: fix gst_video_info_from_caps() caps assertion - The "use buffers" code path uses gst_video_info_from_caps() which is - asserting if caps is NULL (because pool was rejected). - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-07-26 16:22:50 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: fix pool caps reference stealing - gst_buffer_pool_config_get_params() doesn't ref the returning caps; - so gst_caps_replace() was unreffing the reference owned by the pool. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-07-25 09:57:20 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: prevent timeout when shutting down because of pending out buffers - The OMX transition state to Loaded won't be complete until all buffers - have been freed. There is no point waiting, and timeout, if we know that - output buffers haven't been freed yet. - The typical scenario is output buffers being still used downstream - and being freed later when released back to the pool. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-07-24 15:14:31 +0200 Guillaume Desmottes - - * omx/gstomxbufferpool.c: - omxbufferpool: reference the OMX component - Now that the pool is responsible of freeing the OMX buffers, we need to - ensure that the OMX component stay alive while the pool is as we rely on - the component to free the buffers. - The GstOMXPort is owned by the component so no need to ref this one. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-07-24 15:06:01 +0200 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudiodec.c: - * omx/gstomxaudioenc.c: - * omx/gstomxaudiosink.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - turn GstOMXComponent to a GstMiniObject - Will use it for refcounting. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-05-28 12:20:45 +0200 Guillaume Desmottes - - * omx/gstomxbufferpool.c: - * omx/gstomxvideodec.c: - omxbufferpool: deallocate OMX buffers when stopping - The pool is stopped when all the buffers have been released. Deallocate - when stopping so we are sure that the buffers aren't still used by - another element. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-05-24 16:28:21 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: call gst_omx_buffer_unmap() when handling BUFFER_DONE - When using a input buffer pool, the buffer may be released to the pool when - gst_omx_buffer_unmap() is called. We need to have buf->used unset at - this point as the pool may use it to check the status of the pool. - {Empty,Fill}BufferDone is called from OMX internal threads while - messages are handled from gst elements' thread. Best to do all this - when handling the message so we don't mess with OMX threads and keep - the original thread/logic split. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-05-25 14:44:16 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideo{enc,dec}: stop calling shutdown() in change_state - This is no longer needed since we implemented close() vfuncs as the - encoder/decoder base class already take care of calling close() (which - is calling shutdown()) in its own change_state implementation. - We also move the shut down of the component from PAUSED_TO_READY to READY_TO_NULL. - By doing so upstream will have already deactivated the pool from the - encoder and so won't be preventing the OMX state change as the buffers - will all be released. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-05-15 16:21:26 +0200 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxbufferpool.c: - omx: factor out gst_omx_buffer_get/set_omx_buf() - Move the qdata code to helper functions as I'm going to need them in - omxvideoenc to implement dmabuf export. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-05-15 11:01:13 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: factor out gst_omx_video_enc_set_to_idle() - No semantic change. We'll have to use this when the input pool is - activated so we can allocate buffers. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-05-15 09:56:10 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: factor out gst_omx_video_enc_deallocate_in_buffers() - Will add extra code when adding input buffer pool. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-05-14 15:16:38 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: add pBuffer to OMX_PERFORMANCE logs - Can be useful to check the fd being passed when using dmabuf. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-03-21 12:43:33 +0100 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: factor out gst_omx_port_set_dmabuf() - No semantic change. I also made the debug message a bit clearer. - https://bugzilla.gnome.org/show_bug.cgi?id=796918 - -2018-08-22 15:56:18 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: wait for flush complete and buffers being released when flushing - When flusing we should wait for OMX to send the flush command complete event - AND all ports being released. - We were stopping as soon as one of those condition was met. - Fix a race between FillThisBufferDone/EmptyBufferDone and the flush - EventCmdComplete messages. The OMX implementation is supposed to release - its buffers before posting the EventCmdComplete event but the ordering - isn't guaranteed as the FillThisBufferDone/EmptyBufferDone and - EventHandler callbacks can be called from different threads (cf 2.7 - 'Thread Safety' in the spec). - Only wait for buffers currently used by OMX as some buffers may not be - in the pending queue because they are held downstream. - https://bugzilla.gnome.org/show_bug.cgi?id=789475 - -2018-08-22 15:52:23 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: factor out should_wait_until_flushed() - No semantic change. Makes the code easier to understand and I'm about to - change the waiting condition. - https://bugzilla.gnome.org/show_bug.cgi?id=789475 - -2018-08-28 13:10:35 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: pause component when flushing - As stated in the spec ("6.1.3 Seek Event Sequence") we should pause - before flushing. - We were pausing the decoder but not the encoder so I just aligned the - two code paths. - https://bugzilla.gnome.org/show_bug.cgi?id=797038 - -2018-07-12 12:41:18 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: fix vertical padding in NV16 formats - My previous patch to calculate the vertical padding was always halfing - the height of the chroma plane which is incorrect for NV16 formats. - https://bugzilla.gnome.org/show_bug.cgi?id=796749 - -2018-07-05 15:13:47 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: include vertical padding in nFilledLen when copying - According to the OMX spec (3.1.3.7.1) nFilledLen is meant to include any - padding. We use to include the horizontal one (stride) but not the - vertical one if nSliceHeight is bigger than the actual height. - The calculated nFilledLen was wrong as it didn't include the padding - between planes. - https://bugzilla.gnome.org/show_bug.cgi?id=796749 - -2018-04-26 12:30:47 +0200 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: implement decide_allocation - Increase the number of output buffers by the number of buffers requested - downstream. - Prevent buffers starvation if downstream is going to use dynamic buffer - mode on its input. - https://bugzilla.gnome.org/show_bug.cgi?id=795746 - -2018-04-26 12:29:16 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: implement propose_allocation - Tell upstream about how many buffer we plan to use so they can adjust - their own number of buffers accordingly if needed. - Same logic as the existing gst_omx_video_enc_propose_allocation(). - https://bugzilla.gnome.org/show_bug.cgi?id=795746 - -2018-05-17 09:54:11 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: always signal drain cond when stopping streaming loop - Similar change as the one I just did in omxvideodec. - https://bugzilla.gnome.org/show_bug.cgi?id=796207 - -2018-05-16 17:06:29 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: always signal drain cond when stopping streaming loop - If for some reason something goes wrong and we stop the streaming loop - we may end up with other threads still waiting on the drain cond. - No more buffers will be produced by the component so they were waiting - forever. - Fix this by always signalling this cond when stopping the streaming - loop. - https://bugzilla.gnome.org/show_bug.cgi?id=796207 - -2018-05-16 17:02:01 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideoenc: factor out gst_omx_video_enc_pause_loop() - No semantic change. I'm going to use it in more failure cases. - https://bugzilla.gnome.org/show_bug.cgi?id=796207 - -2018-05-17 14:24:52 +0200 Guillaume Desmottes - - * config/zynqultrascaleplus/gstomx.conf: - zynqultrascaleplus: enable 'ensure-buffer-count-actual' hack - https://bugzilla.gnome.org/show_bug.cgi?id=791211 - -2018-04-27 16:26:36 +0200 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideodec/enc: add hack updating nBufferCountActual before allocating - The OMX specs states that the nBufferCountActual of a port has to default - to its nBufferCountMin. If we don't change nBufferCountActual we purely rely - on this default. But in some cases, OMX may change nBufferCountMin before we - allocate buffers. Like for example when configuring the input ports with the - actual format, it may decrease the number of minimal buffers required. - This method checks this and update nBufferCountActual if needed so we'll use - less buffers than the worst case in such scenarios. - SetParameter() needs to be called when the port is either disabled or - the component in the Loaded state. - Don't do this for the decoder output as - gst_omx_video_dec_allocate_output_buffers() already check - nBufferCountMin when computing the number of output buffers. - On some platform, like rpi, the default nBufferCountActual is much - higher than nBufferCountMin so only enable this using a specific gst-omx - hack. - https://bugzilla.gnome.org/show_bug.cgi?id=791211 - -2018-05-28 15:02:13 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvidee{enc,dec}: refresh input port definition after setting format - Setting the input format and the associated encoder/decoder settings - may also affect the nBufferCountMin of the input port. - Refresh the input port so we'll use up to date values in propose/decide - allocation. - https://bugzilla.gnome.org/show_bug.cgi?id=796445 - -2018-05-07 11:59:08 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: always consider component in 'invalid' state when an error occured - gst_omx_component_get_state() used to early return if there was no - pending state change. So if the component raised an error it wasn't - considered in the invalid state until the next requested state change. - Fix this by checking first if we received an error. - https://bugzilla.gnome.org/show_bug.cgi?id=795874 - -2018-05-25 01:35:58 +1000 Matthew Waters + * ges/ges-clip.c: + clip: allow for neither track nor type in search + Previously, either the track or track_type arguments had to be specified + in order to find **any** track elements. Now, you can specify neither, + which will match any track element, of the specified type. - * meson.build: - * meson_options.txt: - meson: Update option names to omit 'with_omx' prefixes - Companion commit to: - https://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=4fb02fc85b70be631f5331b2547e5dc61ef7a43a - https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=1e1a5d658e4a031535c44823fd398d3052ca2000 - etc... - -2018-03-21 13:52:23 +0100 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: pass a GstOMXBufferMode to gst_omx_buffer_pool_new() - The output_mode is supposed to be a GstOMXBufferMode, not a boolean. - -2018-05-03 09:27:15 +0200 Guillaume Desmottes - - * config/zynqultrascaleplus/gstomx.conf: - zynq: remove 'no-disable-outport' hack - No longer needed with newer version of the OMX stack. - -2018-03-13 16:15:30 +0100 Guillaume Desmottes - - * omx/gstomxh264enc.c: - * omx/gstomxh265enc.c: - omxh26{4,5}enc: don't pick default 10-bit profile - The OMX stack of the zynqultrascaleplus (the only one supporting - NV12_10LE32 and NV16_10LE32) will now pick the proper profile if none - has been requested. Best to rely on its default than hardcoding a - specific one in gst-omx. - https://bugzilla.gnome.org/show_bug.cgi?id=794319 - -2018-03-06 14:16:56 +0100 Guillaume Desmottes - - * omx/gstomxh264utils.c: - omxh264: sync with supported profiles on zynqultrascaleplus - Add extra supported AVC profiles and remove extended and 4:4:4 profiles - which are actually not implemented. - https://bugzilla.gnome.org/show_bug.cgi?id=794177 - -2018-03-06 10:45:14 +0100 Guillaume Desmottes - - * omx/gstomxh264enc.c: - * omx/gstomxh264utils.c: - * omx/gstomxh264utils.h: - omxh264: factor out gst_omx_h264_utils_get_profile_from_enum() - Move the profile <-> enum mapping to one place. Make changes easier as - I'm about to add extra profiles. - No semantic change. - https://bugzilla.gnome.org/show_bug.cgi?id=794177 - -2018-03-06 11:02:44 +0100 Guillaume Desmottes - - * omx/gstomxh265utils.c: - omxh265: add format range extension profiles on zynqultrascaleplus - The zynqultrascaleplus OMX gained support for more format range - extensions profiles (A.3.5). - https://bugzilla.gnome.org/show_bug.cgi?id=794177 - -2018-03-06 10:45:14 +0100 Guillaume Desmottes - - * omx/gstomxh265enc.c: - * omx/gstomxh265utils.c: - * omx/gstomxh265utils.h: - omxh265: factor out gst_omx_h265_utils_get_profile_from_enum() - Move the profile <-> enum mapping to one place. Make changes easier as - I'm about to add some profiles. - No semantic change. - https://bugzilla.gnome.org/show_bug.cgi?id=794177 - -2018-03-08 12:22:26 +0100 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: add NV16 support - NV16 format wasn't supported on encoder input while it was on decoder - output. - https://bugzilla.gnome.org/show_bug.cgi?id=794175 - -2018-03-08 12:09:38 +0100 Guillaume Desmottes - - * omx/gstomxvideo.c: - omxvideo: display port number when listing supported formats - More convenient when debugging. - https://bugzilla.gnome.org/show_bug.cgi?id=794175 - -2018-03-29 16:42:40 +0200 Guillaume Desmottes - - * omx/gstomx.h: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: restore OMX default target-bitrate if requested by user - 0xffffffff is the magic number in gst-omx meaning 'the default value - defined in OMX'. This works fine with OMX parameters which are only set - once when starting the component but not with configs which can be - changed while PLAYING. - Save the actual OMX default bitrate so we can restore it later if user - sets back 0xffffffff on the property. - Added GST_OMX_PROP_OMX_DEFAULT so we stop hardcoding magic numbers - everywhere. - https://bugzilla.gnome.org/show_bug.cgi?id=794998 - -2018-03-29 11:36:00 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: use gst_omx_video_enc_set_bitrate() when setting bitrate in set_format - We weren't using the usual pattern when re-setting the bitrate: - - get parameters from OMX - - update only the fields different from 0xffffffff (OMX defaults) - - set parameters - Also added a comment explaining why we re-set this param. - https://bugzilla.gnome.org/show_bug.cgi?id=794998 - -2018-03-29 11:26:04 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: factor out gst_omx_video_enc_set_bitrate() - No semantic change, I'm about to re-use this function in set_format(). - https://bugzilla.gnome.org/show_bug.cgi?id=794998 - -2018-04-20 11:54:14 +0100 Tim-Philipp Müller +2020-02-18 12:17:50 +0000 Henry Wilkes - * meson.build: - meson: fix miscellaneous meson warnings - cc.has_header*() doesn't have a 'required:' kwarg. + * tests/check/python/test_timeline.py: + pythontests: change num layers in timeline to 1 + In the test_timeline.test_auto_transition, the corresponding xges only + has one layer, so we should only expect one layer when we extract the + timeline. This fixes a change that was missing from commit + d3e2cf55e3ad6258ff09220ee6393655fdd833f1 -2018-04-18 12:42:55 +0200 Guillaume Desmottes +2020-02-18 12:14:25 +0000 Henry Wilkes - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideoenc/dec: fix handling of component enabling failing - - Report the error from OMX if any (OMX_EventError) - - If not report the failing to the application (GST_ELEMENT_ERROR) - - return GST_FLOW_ERROR rather than FALSE - - don't leak @frame - https://bugzilla.gnome.org/show_bug.cgi?id=795352 + * ges/ges-extractable.c: + extractable: check extractable-type of set asset + When setting the asset of a GESExtractable object, first make sure that + the asset's extractable-type matches the type of the object. -2018-04-16 10:53:41 +0100 Tim-Philipp Müller +2020-02-18 09:17:09 +0000 Henry Wilkes - * common: - Automatic update of common submodule - From 3fa2c9e to ed78bee + * ges/ges-layer.c: + layer: fix ownership when failing to add clip + If a clip is already part of a layer, then adding it to another layer + should fail. Previously, in this case, `ges_layer_add_clip` was adding a + reference to the clip instead, without subsequently giving up ownership. + This meant that the clip would be left with an unowned reference. + This has now been corrected by also calling `unref` after the + `ref_sink`. + Note that, since `clip` is already part of `current_layer`, it should + already be non-floating, so the `ref_sink`-`unref` should do nothing + overall. But we keep both to make the ownership (transfer floating/none) + explicit. -2018-03-14 14:53:50 +0100 Guillaume Desmottes +2020-02-12 22:23:38 +0000 Henry Wilkes - * omx/gstomx.c: - log_omx_performance: convert pointers to strings - G_TYPE_POINTER are not serialized in logs. - https://bugzilla.gnome.org/show_bug.cgi?id=794331 + * ges/ges-audio-track.c: + * ges/ges-video-track.c: + docs: update GESAudioTrack and GESVideoTrack -2018-04-02 15:14:51 +0200 Guillaume Desmottes +2020-01-21 12:01:41 +0000 Henry Wilkes - * omx/gstomxvideoenc.c: - omxvideoenc: remove duplicated debug message - We already have the exact same message at the beginning of - gst_omx_video_enc_handle_frame(). Having it twice is confusing when - reading/grepping logs. - I kept the earlier one to keep the symetry with - gst_omx_video_dec_handle_frame(). - https://bugzilla.gnome.org/show_bug.cgi?id=794897 + * ges/ges-enums.h: + * ges/ges-pipeline.c: + docs: update GESPipeline -2018-02-22 11:27:03 +0100 Guillaume Desmottes +2020-01-17 20:10:23 +0000 Henry Wilkes - * omx/gstomxvideoenc.c: - omxvideoenc: add 'roi' qp-mode on zynqultrascaleplus - New QP mode used to handle ROI metadata. - https://bugzilla.gnome.org/show_bug.cgi?id=793696 + * ges/ges-meta-container.c: + * ges/ges-meta-container.h: + docs: update GESMetaContainer -2018-03-20 10:31:10 +0000 Tim-Philipp Müller +2020-01-17 15:27:29 +0000 Henry Wilkes - * NEWS: - * RELEASE: - * configure.ac: - * meson.build: - Back to development + * ges/ges-extractable.c: + * ges/ges-extractable.h: + docs: update GESExtractable -=== release 1.14.0 === +2020-01-17 12:20:11 +0000 Henry Wilkes -2018-03-19 20:31:02 +0000 Tim-Philipp Müller + * ges/ges-asset.c: + * ges/ges-asset.h: + docs: update GESAsset - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.14.0 +2020-01-15 14:46:02 +0000 Henry Wilkes -=== release 1.13.91 === + * ges/ges-track-element.c: + * ges/ges-track-element.h: + docs: update GESTrackElement -2018-03-13 19:32:39 +0000 Tim-Philipp Müller +2020-01-15 14:44:38 +0000 Henry Wilkes - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.13.91 + * ges/ges-track.c: + * ges/ges-track.h: + docs: update GESTrack -2018-03-09 12:02:29 +0000 Tim-Philipp Müller +2020-01-09 12:11:35 +0000 Henry Wilkes - * meson.build: - meson: fix typo in package name define + * ges/ges-clip.c: + * ges/ges-clip.h: + docs: update GESClip -2018-02-27 15:42:53 +0100 Guillaume Desmottes +2020-01-09 12:09:15 +0000 Henry Wilkes - * omx/gstomxh265enc.c: - * omx/gstomxh265utils.c: - omxh265: update 422 profile names - h265parse is gaining support for the format range extension profile - (bgo#793876). - Use the profile names defined in h265parse. - https://bugzilla.gnome.org/show_bug.cgi?id=793928 + * ges/ges-container.c: + * ges/ges-group.c: + docs: update GESGroup -2018-03-05 13:49:18 -0500 Nicolas Dufresne +2020-01-08 09:26:07 +0000 Henry Wilkes - * omx/gstomxvideoenc.c: - omxvideoenc: Don't drop the frame on empty payload - This otherwise may lead to "No reference frame found" warning. + * ges/ges-container.c: + * ges/ges-container.h: + docs: update GESContainer -2018-03-01 15:16:55 -0500 Nicolas Dufresne +2020-01-07 17:40:53 +0000 Henry Wilkes - * omx/gstomxvideodec.c: - omxvideodec: Don't drop the frame on empty payload - This otherwise may lead to "No reference frame found" warning. + * ges/ges-enums.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + docs: update GESTimelineElement -2018-03-02 15:36:06 -0500 Nicolas Dufresne +2019-12-20 12:30:54 +0000 Henry Wilkes - * omx/gstomx.c: - omx: Free empty buffers list in use_dynamic_buffers - To indicate we are doing dynamic buffers importation, we pass - a list of NULL pointers, but we forgot to free that list. + * ges/ges-validate.c: + validate: unref copied and pasted -2018-03-01 15:16:32 -0500 Nicolas Dufresne +2019-12-20 11:20:49 +0000 Henry Wilkes - * omx/gstomxvideodec.c: - omxvideodec: Fix CodecState leak + * ges/ges-timeline.c: + timeline: fix paste ownership + The method steals ownership of `copied_from`, so should be responsible + for unreffing it. Also make sure we fail when `layer != -1`, since this + functionality is not supported. -=== release 1.13.90 === +2019-12-18 20:33:45 +0000 Henry Wilkes -2018-03-03 23:00:59 +0000 Tim-Philipp Müller + * ges/ges-layer.c: + * ges/ges-layer.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-utils.c: + docs: update GESTimeline and GESLayer - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.13.90 +2020-03-03 18:07:32 -0300 Thibault Saunier -2018-03-03 20:21:06 +0000 Tim-Philipp Müller + * bindings/python/gi/overrides/GES.py: + python: Cleanup overrides using monkey patching + Following the PyGObject guidelines[0], this starts monkey patching + overridden elements instead of subclassing them. + [0]: https://pygobject.readthedocs.io/en/latest/devguide/override_guidelines.html#python-override-guidelines - * config/Makefile.am: - config: dist tizonia config files +2018-11-29 19:12:24 +0100 Jens Göpfert -2018-03-02 11:06:08 -0500 Nicolas Dufresne + * examples/c/concatenate.c: + add assets to layer and adjust position and duration (closes #45) - * omx/gstomx.c: - Revert "omx: wait for flush complete and buffers being released when flushing" - This reverts commit 4211e4c29a262f110cb92ddf9c06b403ced233ef. +2020-03-02 19:06:17 -0300 Thibault Saunier -2018-02-21 12:50:42 +0100 Guillaume Desmottes + * bindings/python/gi/overrides/GES.py: + * tests/check/python/test_timeline.py: + python: Add a Timeline.iter_clips() helper to iterate clips - * omx/gstomxvideoenc.c: - videoenc: don't set stride padding to 0 when copying frames - Padding can be left undefined there is no point filling it with 0. - https://bugzilla.gnome.org/show_bug.cgi?id=793694 +2020-02-24 12:21:11 -0300 Thibault Saunier -2018-02-16 11:50:35 +0100 Guillaume Desmottes + * meson.build: + * meson_options.txt: + meson: Add an option to enable/disable validate integration - * omx/gstomxbufferpool.c: - * omx/gstomxh264enc.c: - * omx/gstomxh265enc.c: - * omx/gstomxvideo.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - add support for NV12_10LE32 and NV16_10LE32 on zynqultrascaleplus - The encoder and decoder on zynqultrascaleplus support these new 10 bits - format. - https://bugzilla.gnome.org/show_bug.cgi?id=793694 +2020-02-22 14:23:45 -0300 Thibault Saunier -2018-02-16 11:46:47 +0100 Guillaume Desmottes + * ges/gstframepositioner.c: + * tests/check/meson.build: + * tests/check/scenarios/check_video_track_restriction_scale.scenario: + * tests/check/scenarios/check_video_track_restriction_scale_with_keyframes.scenario: + framepositioner: Reposition source when the user positioned them + Keeping the same proportion in the size and position and only if + the aspect ratio is conserved. + +2020-02-24 08:50:04 -0300 Thibault Saunier + + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/ges-validate.c: + * tools/ges-validate.h: + ges:launch: Handle setting playback information in scenarios + This way we can avoid real sinks when implementing scenarios + +2020-02-24 08:47:11 -0300 Thibault Saunier + + * ges/ges-structured-interface.c: + * ges/ges-track-element.c: + * ges/ges-validate.c: + validate: Handle absolute control binding support when setting keyframes + And minor fix in set-control-source + +2020-02-19 18:09:19 -0300 Thibault Saunier + + * ges/ges-video-source.c: + * ges/ges-video-uri-source.c: + * ges/gstframepositioner.c: + * ges/gstframepositioner.h: + * tests/check/scenarios/check_video_track_restriction_scale.scenario: + ges: Properly position video sources in the scene by default + We try to do our best to have the video frames scaled the best way + to fill most space on the final frames, keeping aspect ratio. The user + can later on rescale or move the sources as usual but it makes the + default behaviour a better and more natural especially now that we + set default restriction caps to the video tracks. + And fix the unit test to take that change into account + +2020-02-19 18:06:26 -0300 Thibault Saunier + + * ges/ges-image-source.c: + * ges/ges-internal.h: + * ges/ges-video-source.c: + * ges/ges-video-source.h: + * ges/ges-video-test-source.c: + * ges/ges-video-uri-source.c: + ges: Add a method to retrieve the 'natural' size of VideoSource + This way the user can easily know how the clip would look like + if no scaling was applied to the clip, this is useful to be able + to properly position the clips with the framepositionner element. + +2020-02-19 15:31:28 -0300 Thibault Saunier + + * bindings/python/gi/overrides/GES.py: + * ges/ges-container.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + ges: Call the right ->set_child_property vmethod + We used to always call the `->set_child_property` virtual method + of the object that `ges_timeline_element_set_child_property` was called + from, but that means that, in the case of referencing GESContainer + children properties from its children, the children wouldn't know + what child property have been set, and the children override wouldn't + be takent into account, in turns, it means that the behaviour could be + different in the setter depending on parent the method was called, + which is totally unexpected. + We now make sure that the vmethod from the element that introduced the + child property is called whatever parent method is called, making the + behaviour more uniform. + Fix the python override to make sure that new behaviour is respected. + +2020-02-18 16:31:15 -0300 Thibault Saunier + + * ges/ges-timeline.h: + ges: Deprecate the GESTimeline::track field + It is not MT safe to access it, and user should use the proper getter + +2020-02-18 16:09:55 -0300 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-video-track.c: + ges: Set default caps for GESVideoTrack + By default, video track output full HD@30fps, this makes the behaviour + of clip position much more understandable and guarantess that we + always have a framerate. + The user can modify the values whenever he wants + +2020-02-20 12:28:59 -0300 Thibault Saunier + + * ges/gstframepositioner.c: + * tests/check/ges/timelineedition.c: + * tests/check/meson.build: + * tests/check/scenarios/check_video_track_restriction_scale.scenario: + * tools/meson.build: + framepositioner: Stop lying about the source size + Basically we were advertising that the source size would be the + size of the track if it hadn't been defined by end user, but since + we started to let scaling happen in the compositor, this is not true + as the source size is now the natural size of the underlying video + stream. + Remove the unit test and reimplemented using a validate scenario which + make the test much simpler to read :=) + +2020-02-20 12:27:37 -0300 Thibault Saunier + + * ges/ges-validate.c: + validate: Add action types to set/check various child properties at once + And add a way to take into account control bindings. + +2020-02-20 12:22:19 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + ges: Allow setting children property using the set_object_arg format + This make it much simpler for the user to set enum values and should not cause any issue + +2020-02-20 17:13:46 -0300 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-validate.c: + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/ges-validate.c: + * tools/utils.c: + * tools/utils.h: + ges: Plug leaks in new ges-launch and related + +2020-02-25 17:38:15 -0300 Thibault Saunier + + * ges/ges-validate.c: + validate: Port to the new REPORT_ACTION API + +2020-02-18 23:08:53 -0300 Thibault Saunier + + * plugins/nle/nlesource.c: + nlesource: When standalone consider object.duration==0 as not set + nleobject.duration defaults to 0, but this is pretty unintuitive for + end user in the case nlesource is use standalone, just consider + duration=0 equivalent to duration=GST_CLOCK_TIME_NONE as it makes + the element much simpler to use, we could actually forbid 0 as a value + in the future. + Also take into account potential CLOCK_TIME_NONE + +2020-02-10 18:05:38 -0300 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-internal.h: + * ges/ges-source.c: + * ges/ges-video-source.c: + * ges/ges-video-source.h: + * ges/ges-video-test-source.c: + * ges/ges-video-uri-source.c: + ges: Avoid adding unnecessary converters for nested timelines + Basically we know that if we are using mixing, compositor will be + able to do video conversion and scaling for us, so avoid adding those + usless elements. + This optimizes a lot caps negotiation for deeply nested timelines. + +2020-02-10 18:00:33 -0300 Thibault Saunier + + * plugins/ges/gesbasebin.c: + * plugins/ges/gesdemux.c: + plugins:ges: Fix pushing tags after e8c782d119eccf364fa24812cdc90c40f60d65d6 + Basically the tags we send before STREAM_START are now ignored, meaning + that we could not detect nested timelines anymore, this commits makes + sure that we send our tag event after getting pushing STREAM_START. + +2020-02-06 16:42:25 -0300 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Optimize prerolling when using nested compositions + When a composition is nested into anotherone, we *know* that the + toplevel composition is going to send a stack initializing seek, + we can thus avoid sending it on the subcomposition itself when + prerolling. This avoid seeking roundtrips and we now have one and + only one seek travelling in the overall pipeline (after it has + prerolled). + +2020-02-06 12:43:57 -0300 Thibault Saunier + + * plugins/nle/nlesource.c: + nlesource: Fix seeks when used standalone + The 'start' of nleobject is in the 'composition' scale, inpoint is in + the media scale, when outside a composition, a nleobject->start value + doesn't mean anything. + +2020-02-06 12:39:12 -0300 Thibault Saunier + + * plugins/nle/nlecomposition.c: + * plugins/nle/nlesource.c: + nle: Seek the whole stack on initialization + Instead of seeking each nleobject separately to setup new stack, wait + for the whole stack to preroll and then seek that newly setup stack, + leading to the same code path and seek 'tweaking' as when processing + a seek on the composition (without stack changes). + This is mandatory to properly handle filter that tweak segments to handle + time remapping for example. + +2020-02-06 12:37:37 -0300 Thibault Saunier + + * plugins/nle/nlecomposition.c: + * plugins/nle/nleghostpad.c: + nle: Minor typo fixes + +2020-02-04 17:07:39 -0300 Thibault Saunier + + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/ges-validate.c: + * tools/ges-validate.h: + validate: Allow overriding ges-launch options through scenarios + In 99c45d42cfd1cafb658b63abf0b506db20167499 we allowed setting + track-types but in the end we could do it generically using the + following synthax in the scenario 'properties' metadata: + `ges-options={--track-types=video,--disable-mixing}` + +2020-02-07 09:39:39 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-extractable.c: + * ges/ges-extractable.h: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-transition-clip.c: + * ges/ges-uri-clip.c: + ges: Ignore deprecation of GParameter + GParameter is part of our API, and for GLib < 2.54 we do not even have + a way around avoiding it (namely `g_object_new_with_properties`). + We should stop using GParameter once we depend on GLib 2.54. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/86 + +2019-08-20 17:46:09 -0400 Thibault Saunier + + * ges/ges-container.h: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-layer.h: + * ges/ges-prelude.h: + * ges/ges-screenshot.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-title-clip.c: + * ges/ges-title-clip.h: + * ges/ges-track-element-deprecated.h: + * ges/ges-track-element.h: + * ges/meson.build: + ges: Use G_DEPRECATE to mark deprecated methods + Cleanup a few things on the way. + And move ges-track-element deprecations to a dedicated header file + +2019-12-14 17:04:54 +0000 Henry Wilkes + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-source-clip.c: + * ges/ges-timeline-element.c: + * tests/check/ges/clip.c: + ges-source-clip: fixed return of duration setter + In general, brought the behaviour of the `start`, `duration` and + `inpoint` setters in line with each other. In particular: + 1. fixed return value the GESSourceClip `duration` setter + 2. changed the GESClip `start` setter + 3. fixed the inpoint callback for GESContainer + 4. changed the type of `res` in GESTimelineElement to be gint to + emphasise that the GES library is using the hack that a return of -1 + from klass->set_duration means no notify signal should be sent out. + Also added a new test for clips to ensure that the setters work for + clips within and outside of timelines, and that the `start`, `inpoint` + and `duration` of a clip will match its children. + +2019-12-05 14:23:04 -0300 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Ensure that encodebin enforces a single segment sent to encoders + +2019-10-04 09:58:17 -0300 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Move to the new GstValidateEncodingTestInterface API + +2019-11-20 07:52:56 +0100 Edward Hervey + + * ges/ges-xml-formatter.c: + xml-formatter: Free structure after usage + CID: 1416901 + CID: 1439518 + CID: 1439527 + +2019-11-20 07:46:47 +0100 Edward Hervey + + * ges/ges-pitivi-formatter.c: + formatter: Free path object after usage + As it's done everywhere else + CID: 1455511 + +2019-11-07 16:54:32 +0530 Nirbheek Chauhan - * omx/gstomxvideoenc.c: - omxvideoenc: factor out gst_omx_video_enc_nv12_manual_copy() - No semantic change, I'm going to re-use it to copy the NV12_10LE32 - format. - https://bugzilla.gnome.org/show_bug.cgi?id=793694 + * meson.build: + meson: Fix disabling of the python support + Cannot call python.dependency() if the python module was not found. -2018-01-17 10:40:49 +0100 Guillaume Desmottes +2019-08-29 07:45:45 +0200 Niels De Graef - * omx/gstomxvideoenc.c: - omxvideoenc: display the computed buffer size when configuring input - https://bugzilla.gnome.org/show_bug.cgi?id=793694 + * ges/ges-container.c: + * ges/ges-layer.c: + * ges/ges-marker-list.c: + * ges/ges-meta-container.c: + * ges/ges-project.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * plugins/nle/nlecomposition.c: + * plugins/nle/nleoperation.c: + Don't pass default GLib marshallers for signals + By passing NULL to `g_signal_new` instead of a marshaller, GLib will + actually internally optimize the signal (if the marshaller is available + in GLib itself) by also setting the valist marshaller. This makes the + signal emission a bit more performant than the regular marshalling, + which still needs to box into `GValue` and call libffi in case of a + generic marshaller. + Note that for custom marshallers, one would use + `g_signal_set_va_marshaller()` with the valist marshaller instead. -2018-02-06 14:25:57 +0100 Guillaume Desmottes +2019-10-16 19:26:55 +0100 Henry Wilkes - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - videoenc: implement ROI on zynqultrascaleplus - Check input buffers for ROI meta and pass them to the encoder by using - zynqultrascaleplus's custom OMX extension. Also add a new - "default-roi-quality" in order to tell the encoder what quality level - should be applied to ROI by default. - https://bugzilla.gnome.org/show_bug.cgi?id=793696 + * ges/ges-marker-list.c: + * ges/ges-meta-container.h: + * tests/check/ges/markerlist.c: + marker: add color meta + Support optionally coloring markers by reserving GES_META_MARKER_COLOR + for an ARGB guint. -2018-02-14 17:23:39 +0100 Guillaume Desmottes +2019-10-16 13:40:57 +0100 Henry Wilkes - * omx/gstomxvideoenc.c: - omxvideoenc: remove GST_PARAM_MUTABLE_PLAYING from 'max-bitrate' property - This property isn't actually mutable in the PLAYING state. - https://bugzilla.gnome.org/show_bug.cgi?id=793458 + * ges/ges-meta-container.c: + * ges/ges-meta-container.h: + meta-container: add register_static_meta + Allows us to register a static meta without having to set a value. -2018-02-14 17:20:02 +0100 Guillaume Desmottes +2019-10-16 11:37:23 +0100 Henry Wilkes - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: protect target_bitrate with the object lock - The 'target-bitrate' property can be changed while PLAYING - (GST_PARAM_MUTABLE_PLAYING). Make it thread-safe to prevent concurrent - accesses between the application and streaming thread. - https://bugzilla.gnome.org/show_bug.cgi?id=793458 + * ges/ges-meta-container.c: + meta-container: move comment + The comment that was above _register_meta is actually meant for + _set_value. -2018-02-20 11:46:49 +0100 Guillaume Desmottes +2019-10-23 16:04:01 +0200 Thibault Saunier - * omx/gstomxbufferpool.c: - omxbufferpool: add PERFORMANCE DEBUG message when copying output frames - I spent quiet some time figuring out why performance of my pipeline were - terrible. Turned out it was because of output frames being copied - because of stride/offset mismatch. - Add a PERFORMANCE DEBUG message to make it easier to spot and debug from logs. - https://bugzilla.gnome.org/show_bug.cgi?id=793637 + * ges/ges-command-line-formatter.c: + * tools/ges-launch.c: + * tools/ges-launcher.c: + ges-launch: Document timeline description format under --help + Making it simpler for user to get the documentation -2018-02-15 19:44:37 +0000 Tim-Philipp Müller +2019-10-22 22:51:41 +0200 Rico Tzschichholz - * configure.ac: - * meson.build: - Back to development + * ges/ges-marker-list.c: + marker-list: Use proper parameters names even in the docs + Otherwise there will be parameters with hyphen in their name in the GIR. -=== release 1.13.1 === +2019-10-22 13:30:36 +0200 Thibault Saunier -2018-02-15 17:50:14 +0000 Tim-Philipp Müller + * plugins/nle/nlecomposition.c: + nlecomposition: Enhance dumping stack output - * Makefile.am: - * NEWS: +2019-10-22 12:21:04 +0200 Thibault Saunier + + * ges/ges-marker-list.c: + ges: Handle empty marker lists + +2019-10-22 11:53:36 +0200 Thibault Saunier + + * ges/ges-validate.c: + validate: Tear down pipeline when openning a new project + Avoiding potential deadlock when we remove tracks on a playing pipeline + +2019-10-22 11:50:02 +0200 Thibault Saunier + + * ges/ges-structured-interface.c: + ges: Fix setting GError when adding children to containers + We were misusing assertion and not properly setting the GError value + +2019-10-22 11:31:04 +0200 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + smart-video-mixer: Handle segment updates + We were basically ignoring any segment update which could potentially + lead to setting a wrong stream time leading to wrong alpha value + being used. + +2019-10-17 16:30:49 +0200 Thibault Saunier + + * tools/ges-launcher.c: + * tools/utils.c: + * tools/utils.h: + launcher: Enhance printed output + +2019-10-17 16:21:28 +0200 Thibault Saunier + + * tools/ges-launcher.c: + * tools/utils.c: + * tools/utils.h: + launcher: Use the output URI extension to set encoding format + And print a description of the encoding profile. + +2019-10-17 16:19:11 +0200 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Be smarter about how we match encoding profiles and tracks + +2019-10-18 00:50:16 +0100 Tim-Philipp Müller + + * meson.build: + meson: build gir even when cross-compiling if introspection was enabled explicitly + This can be made to work in certain circumstances when + cross-compiling, so default to not building g-i stuff + when cross-compiling, but allow it if introspection was + enabled explicitly via -Dintrospection=enabled. + See gstreamer/gstreamer#454 and gstreamer/gstreamer#381 + +2019-10-16 16:40:27 +0100 Henry Wilkes + + * ges/ges-marker-list.c: + * tests/check/ges/markerlist.c: + marker-list: add prev position to ::marker-moved + Additionally give the previous marker position in the + GESMarkerList::marker-moved signal, since a user may want to know + where a move was from. + Also, fixed the documentation for GESMarkerList::marker-added + https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/78 + +2019-10-13 13:37:11 +0100 Tim-Philipp Müller + + * .gitignore: + * .gitmodules: + * Makefile.am: + * autogen.sh: + * bindings/Makefile.am: + * bindings/python/Makefile.am: + * bindings/python/gi/Makefile.am: + * bindings/python/gi/overrides/Makefile.am: + * common: * configure.ac: - * gst-omx.doap: + * examples/.gitignore: + * examples/Makefile.am: + * examples/c/Makefile.am: + * ges/.gitignore: + * ges/Makefile.am: + * m4/Makefile.am: + * pkgconfig/.gitignore: + * pkgconfig/Makefile.am: + * plugins/Makefile.am: + * plugins/ges/Makefile.am: + * plugins/nle/.gitignore: + * plugins/nle/Makefile.am: + * tests/.gitignore: + * tests/Makefile.am: + * tests/benchmarks/Makefile.am: + * tests/check/Makefile.am: + * tests/check/ges/.gitignore: + * tests/validate/Makefile.am: + * tests/validate/scenarios/Makefile.am: + * tools/Makefile.am: + Remove autotools build system + Todo: + - hook up data/completions/ges-launch-1.0 in Meson (#77) + +2019-10-01 18:02:27 +0300 Sebastian Dröge + + * ges/ges-internal.h: + * ges/ges.c: + ges: Hide internal debug category behind a GOnce + Otherwise it might be used (e.g. by the plugin loader via the GES + plugin!) before ges_init() is called. + +2019-10-01 18:01:21 +0300 Sebastian Dröge + + * plugins/ges/gesdemux.c: + gesdemux: Initialize debug category before first using it + Prevents critical warnings during class_init() + +2019-09-23 16:10:59 -0300 Thibault Saunier + + * ges/ges-project.c: + project: Add missing safe guard when listing assets + +2019-09-23 16:07:58 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-structured-interface.c: + * tools/ges-launcher.c: + launch: Add an option to embed nested timelines when saving + +2019-08-19 14:38:12 +0100 Henry Wilkes + + * ges/ges-xml-formatter.c: + xml-formatter: increase xges version to 0.6 + Increase minor_version to 6 if a sub-project is saved under an asset or an asset includes a child stream-info element. + +2019-08-23 17:26:51 -0400 Thibault Saunier + + * ges/ges-timeline.c: + * tests/check/python/test_timeline.py: + tests: Fix transition project tests + Basically the test project was plain broken as it had fully overlapping + clips is prohibited since the timeline edition API was reimplemented. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/62 + +2019-08-21 14:41:46 -0400 Thibault Saunier + + * ges/ges-asset.c: + asset: Fix asset cache for CLips and TrackElement with same ID + We clearly uniquely identify assets by both their IDs and their + extractable type, and we should make sure that you can have a + TrackElement and a Clip with the same ID. + There is one exception in our implementation which is GESFormatter + because we treat their subclasses as 1 type with different IDs. + +2019-08-17 11:59:38 -0400 Thibault Saunier + + * ges/ges-effect.c: + * ges/ges.c: + ges: Expose ges mixer to be used as effects + +2019-08-17 11:59:02 -0400 Thibault Saunier + + * ges/ges-effect-clip.c: + * ges/ges-layer.c: + ges: Add support for EffectClip assets + +2019-08-28 18:13:06 +1000 Matthew Waters + + * plugins/ges/gesdemux.c: + * plugins/ges/gessrc.c: + build: also suppress unused-function warnings about g_autoptr + ../plugins/ges/gesdemux.c:50:1: error: unused function 'glib_autoptr_cleanup_GESDemux' [-Werror,-Wunused-function] + G_DECLARE_FINAL_TYPE (GESDemux, ges_demux, GES, DEMUX, GESBaseBin); + ^ + /home/matt/Projects/cerbero/build/dist/android_universal/x86_64/include/glib-2.0/gobject/gtype.h:1401:3: note: expanded from macro 'G_DECLARE_FINAL_TYPE' + _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName) \ + ^ + /home/matt/Projects/cerbero/build/dist/android_universal/x86_64/include/glib-2.0/glib/gmacros.h:451:22: note: expanded from macro '_GLIB_DEFINE_AUTOPTR_CHAINUP' + static inline void _GLIB_AUTOPTR_FUNC_NAME(ModuleObjName) (ModuleObjName **_ptr) { \ + ^ + /home/matt/Projects/cerbero/build/dist/android_universal/x86_64/include/glib-2.0/glib/gmacros.h:441:43: note: expanded from macro '_GLIB_AUTOPTR_FUNC_NAME' + #define _GLIB_AUTOPTR_FUNC_NAME(TypeName) glib_autoptr_cleanup_##TypeName + ^ + :81:1: note: expanded from here + glib_autoptr_cleanup_GESDemux + ^ + ../plugins/ges/gessrc.c:56:1: error: unused function 'glib_autoptr_cleanup_GESSrc' [-Werror,-Wunused-function] + G_DECLARE_FINAL_TYPE (GESSrc, ges_src, GES, SRC, GESBaseBin); + ^ + /home/matt/Projects/cerbero/build/dist/android_universal/x86_64/include/glib-2.0/gobject/gtype.h:1401:3: note: expanded from macro 'G_DECLARE_FINAL_TYPE' + _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName) \ + ^ + /home/matt/Projects/cerbero/build/dist/android_universal/x86_64/include/glib-2.0/glib/gmacros.h:451:22: note: expanded from macro '_GLIB_DEFINE_AUTOPTR_CHAINUP' + static inline void _GLIB_AUTOPTR_FUNC_NAME(ModuleObjName) (ModuleObjName **_ptr) { \ + ^ + /home/matt/Projects/cerbero/build/dist/android_universal/x86_64/include/glib-2.0/glib/gmacros.h:441:43: note: expanded from macro '_GLIB_AUTOPTR_FUNC_NAME' + #define _GLIB_AUTOPTR_FUNC_NAME(TypeName) glib_autoptr_cleanup_##TypeName + ^ + :158:1: note: expanded from here + glib_autoptr_cleanup_GESSrc + ^ + +2019-08-27 10:02:04 -0400 Thibault Saunier + + * plugins/ges/gesbasebin.h: + * plugins/ges/gesdemux.c: + * plugins/ges/gessrc.c: + ges: fix G_DECLARE_FINAL_TYPE -Werror with clang + Also fix wrong casing the `G_DECLARE` for GESDemux. + ../subprojects/gst-editing-services/plugins/ges/gessrc.c:56:1: warning: unused function 'GES_SRC' [-Wunused-function] + G_DECLARE_FINAL_TYPE (GESSrc, ges_src, GES, SRC, GESBaseBin); + ^ + /usr/include/glib-2.0/gobject/gtype.h:1405:33: note: expanded from macro 'G_DECLARE_FINAL_TYPE' + static inline ModuleObjName * MODULE##_##OBJ_NAME (gpointer ptr) { \ + ^ + :39:1: note: expanded from here + GES_SRC + ^ + ../subprojects/gst-editing-services/plugins/ges/gessrc.c:56:1: warning: unused function 'GES_IS_SRC' [-Wunused-function] + /usr/include/glib-2.0/gobject/gtype.h:1407:26: note: expanded from macro 'G_DECLARE_FINAL_TYPE' + static inline gboolean MODULE##_IS_##OBJ_NAME (gpointer ptr) { \ + ^ + :42:1: note: expanded from here + GES_IS_SRC + ^ + ../subprojects/gst-editing-services/plugins/ges/gesdemux.c:50:1: warning: unused function 'GES_Demux' [-Wunused-function] + G_DECLARE_FINAL_TYPE (GESDemux, ges_demux, GES, Demux, GESBaseBin); + ^ + /usr/include/glib-2.0/gobject/gtype.h:1405:33: note: expanded from macro 'G_DECLARE_FINAL_TYPE' + static inline ModuleObjName * MODULE##_##OBJ_NAME (gpointer ptr) { \ + ^ + :72:1: note: expanded from here + GES_Demux + ^ + ../subprojects/gst-editing-services/plugins/ges/gesdemux.c:50:1: warning: unused function 'GES_IS_Demux' [-Wunused-function] + /usr/include/glib-2.0/gobject/gtype.h:1407:26: note: expanded from macro 'G_DECLARE_FINAL_TYPE' + static inline gboolean MODULE##_IS_##OBJ_NAME (gpointer ptr) { \ + ^ + :75:1: note: expanded from here + GES_IS_Demux + ^ + +2019-08-27 13:52:52 +1000 Matthew Waters + + * ges/ges-timeline.c: + ges/timeline: remove unused function get_toplevel_container + Fixes -Werror build with clang: + ../subprojects/gst-editing-services/ges/ges-timeline.c:695:1: warning: unused function 'get_toplevel_container' [-Wunused-function] + get_toplevel_container (gpointer element) + ^ + +2019-08-23 12:36:38 -0400 Thibault Saunier + + * docs/gst_plugins_cache.json: + * ges/ges-enums.h: + doc: Update cache and fix usage of + +2019-08-22 18:50:00 +0200 Millan Castro + + * ges/Makefile.am: + * ges/ges-internal.h: + * ges/ges-marker-list.c: + * ges/ges-marker-list.h: + * ges/ges-meta-container.c: + * ges/ges-meta-container.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * ges/meson.build: + * tests/check/ges/layer.c: + * tests/check/ges/markerlist.c: + * tests/check/meson.build: + markerlist: implement GESMarkerList + Co-authored by Mathieu Duponchelle + +2019-08-20 15:29:12 -0400 Thibault Saunier + + * plugins/ges/gesdemux.c: + gesdemux: Fix querying if we need stack reloading + We are probing upstream queries, not downstream ones + This was clearly a small test that slipt into previous commit + +2019-08-16 17:41:17 +0100 Henry Wilkes + + * ges/ges-xml-formatter.c: + xml-formatter: strip "caps" from the "properties" attribute of a track element + We already have the separate "caps" attribute for xges track + elements, which is actually used in parsing. + +2019-08-19 16:35:49 +0100 Henry Wilkes + + * ges/ges-xml-formatter.c: + xml-formatter: fix cb of ::error-loading-asset + Corrected typo that attached project_loaded_cb, rather than error_loading_asset_cb, to ::error-loading-asset, which meant data.error would be left unset if an error occurred in loading. + +2019-08-15 17:32:12 +0100 Henry Wilkes + + * ges/ges-base-xml-formatter.c: + Test that gst_structure_get succeeds to ensure gchar *restriction is actually set before reading it. Warn if no caps are returned by gst_caps_from_string. + +2019-08-14 15:48:46 -0400 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-structured-interface.c: + structured-interface: Properly error out when a child property could not be set + +2019-08-12 17:37:39 -0400 Thibault Saunier + + * tests/check/nle/nlecomposition.c: + tests:nle: Unref the bus before unrefing the pipeline + Aiming at fixing a rare race condition where we get: + ../subprojects/gstreamer/libs/gst/check/gstcheck.c:1258:F:nlecomposition:test_seek_on_nested:0: nested_src0_0x1a1a310 is not destroyed, 1 refcounts left! + The idea is that there might have a remaining GstMessage + with the nested_src as `message.src` on the bus that has + yet to be processed in some conditions leading to a reference + still existing when unrefing the pipeline. + +2019-08-12 17:17:53 +0300 Sebastian Dröge + + * ges/ges-xml-formatter.c: + ges-xml-formatter: Use g_filename_to_uri() instead of deprecated gst_uri_construct() + ges-xml-formatter.c: In function ‘_parse_asset’: + ges-xml-formatter.c:357:7: error: ‘gst_uri_construct’ is deprecated: Use 'gst_uri_new' instead [-Werror=deprecated-declarations] + 357 | id = gst_uri_construct ("file", subproj_data->filename); + | ^~ + +2019-08-12 17:16:44 +0300 Sebastian Dröge + + * ges/ges-asset.c: + * ges/ges-uri-asset.c: + Fix old-style C function declarations + ges-uri-asset.c: In function ‘create_discoverer’: + ges-uri-asset.c:53:1: error: old-style function definition [-Werror=old-style-definition] + 53 | create_discoverer () + | ^~~~~~~~~~~~~~~~~ + ges-uri-asset.c: In function ‘get_discoverer’: + ges-uri-asset.c:67:1: error: old-style function definition [-Werror=old-style-definition] + 67 | get_discoverer () + | ^~~~~~~~~~~~~~ + CC libges_1.0_la-ges-auto-transition.lo + ges-asset.c: In function ‘_get_type_entries’: + ges-asset.c:489:1: error: old-style function definition [-Werror=old-style-definition] + 489 | _get_type_entries () + | ^~~~~~~~~~~~~~~~~ + +2019-08-12 09:49:45 -0400 Thibault Saunier + + * ges/ges-track.c: + * ges/ges-uri-asset.c: + * plugins/ges/gesbasebin.c: + doc: Add some missing Since: + +2019-08-11 21:20:21 -0400 Thibault Saunier + + * ges/ges-project.c: + project: Properly handle NULL project asset ID + +2019-07-30 18:24:07 -0700 Thibault Saunier + + * ges/ges-structured-interface.c: + structured: Enhance error message when no clip duration set + +2019-07-30 18:22:18 -0700 Thibault Saunier + + * ges/ges-structured-interface.c: + structured-interface: Avoid setting invalid clip duration + +2019-07-16 21:51:10 -0400 Thibault Saunier + + * ges/ges-track.c: + * ges/ges-track.h: + track: Add a getter for restriction_caps + +2019-07-13 21:27:46 -0400 Thibault Saunier + + * tools/ges-launcher.c: + launch: Set user restriction caps even when loading projects + +2019-07-13 21:26:35 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Enhance restriction capsfilter name + +2019-07-13 13:25:48 -0400 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Serialize DiscovererStreamInfo + We do not use it yet but it gives interesting information to + users + +2019-07-12 16:15:35 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-xml-formatter.c: + * tests/check/ges/project.c: + formatter: Plug lists of TimedValue leak + +2019-07-05 09:40:57 -0400 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-xml-formatter.c: + formatter: Better document metadata registration + And fix xges mimetype to match typefind mimetype + +2019-07-04 16:51:54 -0400 Thibault Saunier + + * docs/meson.build: + doc: Do not require the GStreamer cache generator + +2019-07-04 15:58:44 -0400 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-formatter.c: + * ges/ges-internal.h: + * ges/ges.c: + * ges/python/gesotioformatter.py: + * plugins/ges/gesdemux.c: + gesdemux: Compute sinkpad caps based on formatter mimetypes + Implement lazy loading asset cache so gesdemux use the formatters + assets while GES hasn't been initialized. + And set extensions to temporary files as some formatters require + the information (otio) + +2019-07-03 20:15:23 -0400 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-project.c: + formatter: Add a method to retrieve the best formatter for a givent URI + Uses the file extension as hint falling back to the default formatter + if none is found + Make use of that function in when saving a project and not formatter + is specified. + +2019-02-05 15:46:49 -0300 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges.resource: + * ges/meson.build: + * ges/python/gesotioformatter.py: * meson.build: - Release 1.13.1 + * meson_options.txt: + Implement a formatter based on [OpenTimelineIO] + [OpenTimelineIO]: http://opentimeline.io/ + +2019-04-19 09:07:44 -0400 Thibault Saunier + + * ges/ges-formatter.c: + formatter: Handle coma separated extensions in formatter metas + +2019-03-11 19:25:23 -0300 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + formatter: Duplicate const gchar* for metadatas + +2019-02-05 16:08:10 -0300 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-project.h: + project: Expose the ges_project_add_formatter method + This method is useful when implementing a formatter outside + GES that end up converting to xges and uses the default formatter + to finally load the timeline. + +2019-07-11 16:23:47 -0400 Thibault Saunier + + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.c: + * plugins/ges/gesdemux.c: + Mark nested timeline assets as such + Adding a property to let the application know + Also make sure that the duration of nested timeline assets is reported + as CLOCK_TIME_NONE as those are extended as necessary. + And make a difference between asset duration and their max duration + As nested timelines can be extended 'infinitely' those max duration + is GST_CLOCK_TIME_NONE, but their duration is the real duration of + the timeline. + +2019-07-11 15:54:27 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-project.c: + * plugins/ges/gesdemux.c: + * tools/ges-launcher.c: + formatter: Enhance error reporting + And add a "loading-error" signal in GESProject so we can report + issue when loading async elements for the timeline. + +2019-07-11 15:43:47 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * tests/check/ges/test-properties.xges: + xml-formatter: Fix loading sources + And fix the project file which couldn't be load now that we + properly check clips coherency + +2019-07-10 19:36:21 -0400 Thibault Saunier + + * plugins/ges/gesdemux.c: + gesdemux: Add a testsrc to timelines if parent nleobject duration is too long + +2019-07-10 12:06:01 -0400 Thibault Saunier + + * ges/ges-validate.c: + ges:validate: Properly error when editing container fails + +2019-07-10 11:02:07 -0400 Thibault Saunier + + * ges/ges-structured-interface.c: + * plugins/ges/gesdemux.c: + * plugins/nle/nlecomposition.c: + nle: Handle nested timelines update when file changes + When we have nested timelines, we need to make sure the underlying + formatted file is reloaded when commiting the main composition to + take into account the new timeline. + In other to make the implementation as simple as possible we make + sure that whenever the toplevel composition is commited, the decodebin + holding the gesdemux is torn down so that a new demuxer is created + with the new content of the timeline. + To do that a we do a NleCompositionQueryNeedsTearDown query to which + gesdemux answers leading to a full nlecomposition stack + deactivation/activation cycle. + +2019-07-10 10:15:31 -0400 Thibault Saunier + + * ges/ges-structured-interface.c: + * ges/ges-structured-interface.h: + * ges/ges-validate.c: + ges:validate: Add a way to execute actions on serialized timelines + This way we can modify nested timelines. + +2019-07-09 01:03:56 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-timeline-element.c: + * ges/ges-utils.c: + ges: Implement our own idle_add which uses the thread local maincontext + +2019-07-09 00:28:29 -0400 Thibault Saunier + + * ges/ges-validate.c: + validate: Allow passing 'uri' to 'load-project' + The action type was thought to allow that but it wasn't implemented. + +2019-07-09 00:07:16 -0400 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Lower down borring debug to _LOG + +2019-07-09 00:05:21 -0400 Thibault Saunier -2017-06-30 15:15:06 +0200 Guillaume Desmottes + * ges/ges-project.c: + project: Use asset ID as URI if possible + It was making no sense to consider it an empty timeline when the user + had passed the project URI when requesting the asset. Usually user + use `ges_project_new` with the URI but it is also valid to use + `ges_asset_request` with the uri as ID so let's handle that properly. - * omx/gstomxh265enc.c: - omxh265enc: fix typo in "periodicty-idr" property name - Also fix the 'nick' of the property. - omxh265enc is based on the code from omxh264enc and suffers the same - typo as we fixed in https://bugzilla.gnome.org/show_bug.cgi?id=784370 - This element isn't part of a stable release yet so it's not an API - break. - https://bugzilla.gnome.org/show_bug.cgi?id=793390 +2019-07-08 19:25:32 -0400 Thibault Saunier -2018-02-08 19:18:59 +0000 Tim-Philipp Müller + * bindings/python/gi/overrides/GES.py: + python: Add a better asset __repr__ +2019-07-07 20:55:53 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-base-xml-formatter.h: + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-xml-formatter.c: + * ges/ges.c: + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + ges: Implement subprojects + Subprojects simply consist of adding the GESProject + to the main project asset list. Then those are recursively + serialized in the main project in the not, when deserializing, + temporary files are created and those will be used in clips + as necessary + +2019-07-07 20:35:14 -0400 Thibault Saunier + + * ges/ges-project.c: + project: Fix our asset cache + It was not talking into account the fact that you can have + several assets with a same ID but different exactractable types. + +2019-07-14 16:28:23 -0400 Thibault Saunier + + * ges/ges-asset.c: + asset: Handle trying to proxy an asset to itself + And avoid infinite recursion + +2019-07-03 12:10:24 -0400 Thibault Saunier + + * plugins/ges/gesdemux.c: + gesdemux: Detect recursively loading the same project file + And error out when it is the case. + +2019-07-03 12:09:23 -0400 Thibault Saunier + + * plugins/ges/gesdemux.c: + gesdemux: Create proper stream-ids + +2019-07-03 10:10:42 -0400 Thibault Saunier + + * tests/check/nle/nlecomposition.c: + nle: Check seeking on deeply nested composition + +2019-06-28 20:19:49 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Disable last gap by default + And let the GESPipeline logic handle that + +2019-06-28 20:19:20 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Drop all group-done but the last one + +2019-06-28 17:35:40 -0400 Thibault Saunier + + * tools/ges-launcher.c: + * tools/ges-validate.c: + * tools/ges-validate.h: + validate: Allow scenarios to set track types + +2019-06-19 15:52:21 +0530 Swayamjeet + + * tests/validate/geslaunch.py: + tests: Add ges-sample-path-recurse with projects location + So that project files are found when using nested timelines + +2019-06-23 13:03:54 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + * tools/ges-validate.c: + validate: Add a way to use validate configs with scenarios + Config files should have the-scenario-name.scenario.config to be picked automatically + +2019-06-23 13:03:04 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Use proper sink and give them good names + +2019-06-23 12:42:21 -0400 Thibault Saunier + + * ges/ges-validate.c: + validate: Create folders as needed when serializing timelines + +2019-06-22 23:49:50 -0400 Thibault Saunier + + * plugins/nle/nlesource.c: + nlesource: Wait for the seek to actualy happen before removing the probe + Make sure that an event resulting from the seek happens before removing + the pad probe, dropping anything while it is not the case. + This guarantees that the seek happens before `nlesource` outputs + anything. This was not necessary as with decodebin or usual source + flushing seeks lead to synchronous flush_start/flush_stop and we could + safely assume that once the seek is sent, it was happenning. + With nested `nlecomposition` this assumption is simply not true as + in the composition seeks are basically cached and happen later in + the composition updating thread. + This fixes races where we ended up removing the blocking probe before + the seek actually started to be executed in the nlecomposition + nested inside an nlesource which leaded to data from *before* the seek + to be outputed which means we could display wrong frames, + and it was leading to interesting deadlocks. + +2019-06-22 23:25:57 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Minor debugging enhancements + +2019-06-21 11:45:20 -0400 Thibault Saunier + + * ges/ges-uri-asset.c: + * tests/check/python/test_assets.py: + uri-asset: Fix retrieving a relocated asset sync twice + Add a simple test for that. + +2019-06-21 10:47:34 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Make adding/removing track MT safe + It was almost the case already so make it happen fully + +2019-06-19 18:14:52 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Ensure flushes after seek have the right seqnum + Seeks that lead to a stack change lead to deactivating the current + stack. At that point we explicitely flush downstream as a reaction to + the flushing seek. Until now those flushes had a random seqnum, this + fails if we are a nested compostion as the parent composition will end + up dropping that flush which in turns might lead to deadlocks. For + example, the flush goes through a `compositor` which wants to flush + downstream to stop its srcpad task, but that flush wouldn't have + "released" its srcpad thread if the composition srcpad drops it, meaning + it won't be able to stop the task ever. + +2019-06-17 18:23:43 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + * tests/check/nle/nlecomposition.c: + nlecomposition: Shutdown children when setting state to NULL + Otherwise if we shutdown a composition whith an nested composition + (inside a source in the test) and leak it, we end up with the nested + composition task still running (in READY) which is bad. + Add a test for that which leaks the pipeline on purpose. + +2019-06-17 18:23:07 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nle: Parent the GstTask to ourself + This allows accessing the nlecomposition in gdb when a task is + 'dangling' making debugging easier. + +2019-06-11 23:51:14 +0530 Swayamjeet + + * tests/validate/geslaunch.py: + tests: Implement nested timelines tests + +2019-06-16 23:03:44 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Properly set seqnum on flush events + +2019-06-16 23:00:31 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Drop ASYNC_/START/DONE messages + When we have nested timelines, we do not want those messages to pop + to the parent timelines as we handle the sequence ourself in the + timeline. + +2019-06-14 23:48:20 -0400 Thibault Saunier + + * plugins/ges/gesdemux.c: + demux: Create timeline from the streaming thread + First marshilling it to the main thread is dangerous as it is a blocking + operation and it should never happen there. + The asset cache is MT safe now so it is possible to load the timeline + from that thread directly + +2019-06-16 21:27:47 -0400 Thibault Saunier + + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * plugins/ges/gesdemux.c: + uri-asset: Implement multi threading support + Making sure to have 1 GstDiscoverer per thread. + Use that new feature in gesdemux by loading the timeline directly from + the streaming thread. Modifying the timeline is not supported allowed + anyway. + +2019-06-09 19:35:21 -0400 Thibault Saunier + + * tests/check/nle/nlecomposition.c: + nle: Add a seeking test for nested composition + +2019-06-07 16:12:26 -0400 Thibault Saunier + + * ges/ges-uri-asset.c: + * plugins/ges/gesdemux.c: + Use the new GstDiscoverer caching feature + +2019-06-07 16:06:39 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Do not post upstream translated composition update messages + In the case of nested timeline in the toplevel timeline we ended up + with CompositionUpdate for seeks sent by our own composition to + granchildren composition. This was not causing essential issues + if all tracks where containing nested timelines but in cases + where one of the tracks only had a nested timelines, then we + were waiting forever for a `CompositionUpdateDone`. + CompositionUpdate translated into ASYNC_START/ASYNC_DONE should + be kept inside the GESTimeline and not travel up (possibly to some + parent GESTimeline). + +2019-06-07 09:10:53 -0400 Thibault Saunier + + * ges/ges-structured-interface.c: + structured-interface: Handle track-types in clip addition + The field was already expected in the launcher + +2019-06-06 23:19:38 -0400 Thibault Saunier + + * ges/ges-timeline.c: + * ges/ges-track.c: + * plugins/ges/gesbasebin.c: + * plugins/ges/gesdemux.c: + * plugins/nle/nlecomposition.c: + Implement and use the GstStream API + +2019-06-06 17:21:01 -0400 Thibault Saunier + + * ges/ges-timeline.c: + * ges/ges-track.c: + * plugins/nle/nlecomposition.c: + timeline: Create stable stream IDs + +2019-06-06 15:40:57 -0400 Thibault Saunier + + * docs/meson.build: + * docs/plugins/index.md: + * docs/plugins/nle.md: + * docs/plugins/sitemap.txt: * meson.build: - meson: make version numbers ints and fix int/string comparison - WARNING: Trying to compare values of different types (str, int). - The result of this is undefined and will become a hard error - in a future Meson release. - Also remove unused libversion/soversion. + * plugins/ges/gessrc.c: + * plugins/nle/nleoperation.c: + docs: Generate ges plugin doc + +2019-06-06 13:51:45 -0400 Thibault Saunier + + * docs/gst_plugins_cache.json: + * plugins/ges/gesbasebin.c: + * plugins/ges/gesbasebin.h: + * plugins/ges/gesdemux.c: + * plugins/ges/gessrc.c: + * plugins/ges/meson.build: + plugins:ges: Factor out a GESBaseBin class + And use it in both gesdemux and gessrc + +2019-06-06 13:02:33 -0400 Thibault Saunier + + * plugins/ges/gesdemux.c: + gesdemux: Emit no-more-pad as required + +2019-06-06 12:46:08 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Respect seek seqnum in output EOS/SEGMENT + Allowing a proper seek EOS handling with nested compositions + +2019-06-06 11:26:45 -0400 Thibault Saunier + + * plugins/ges/gesdemux.c: + gesdemux: Properly combine flows + +2019-06-06 10:16:50 -0400 Thibault Saunier + + * plugins/ges/gesdemux.c: + * plugins/ges/gesdemux.h: + * plugins/ges/gesplugin.c: + * plugins/ges/gessrc.c: + * plugins/ges/gessrc.h: + plugin: Make use of G_DECLARE + And remove useless .h files + +2019-06-16 11:09:46 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-xml-formatter.c: + xml-formatter: Plug some leaks + +2019-06-15 16:44:50 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + xml-formatter: Refactor the way we handle loading state + +2019-06-15 15:11:38 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + xml-formatter: Cleanup removing all now useless pending fields + +2018-06-23 11:26:03 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-layer.c: + * ges/ges-uri-asset.c: + * tests/check/python/test_clip.py: + xml-formatter: Load assets before their proxies + Paving the way to removing pending fields to make the code + simpler to follow. + +2019-06-15 01:33:49 -0400 Thibault Saunier + + * ges/ges-asset.c: + assets: Recurse in the chain of proxies + When linking loaded proxies and trying to setup their targets + +2019-06-06 09:48:32 -0400 Thibault Saunier + + * docs/gst_plugins_cache.json: + * plugins/ges/meson.build: + docs: Add gstges plugin + +2019-05-26 09:55:03 -0400 Thibault Saunier + + * ges/ges-validate.c: + validate: Add action type to copy/paste clips + +2019-05-25 20:20:07 -0400 Thibault Saunier + + * ges/ges-container.c: + * tests/check/python/test_timeline.py: + container: Handle children pasting failures + +2019-05-25 18:51:08 -0400 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/python/test_timeline.py: + clip: Fix layer managament when copying a clip that was pasted -2017-12-12 16:50:00 +0100 Guillaume Desmottes +2019-05-25 16:05:00 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-timeline-element.c: + * tests/check/python/test_timeline.py: + element: Properly handle the fact that pasting can return NULL + And fix paste annotation + +2019-05-31 23:13:48 +0200 Niels De Graef * configure.ac: * meson.build: - * omx/gstomx.h: - include all OMX extension headers if present - The OMX specs defines 8 headers that implementations can use to define - their custom extensions. We were checking and including 3 and ignoring - the other ones. - https://bugzilla.gnome.org/show_bug.cgi?id=792043 + meson: Bump minimal GLib version to 2.44 + This means we can use some newer features and get rid of some + boilerplate code using the G_DECLARE_* macros. + As discussed on IRC, 2.44 is old enough by now to start depending on it. -2018-01-30 10:31:03 +0100 Guillaume Desmottes +2019-05-29 23:12:11 +0200 Mathieu Duponchelle - * meson.build: - * omx/meson.build: - * tools/meson.build: - meson: simplify OMX extensions detection - We are now always checking which files are present or not, even when using our - internal copy of OMX, rather than hardcoding the ones present in it. - https://bugzilla.gnome.org/show_bug.cgi?id=792043 + * plugins/nle/nleobject.c: + * plugins/nle/nleoperation.c: + doc: remove xml from comments -2018-01-30 11:54:24 +0000 Nicolas Dufresne +2019-05-17 19:54:51 -0400 Thibault Saunier - * meson.build: - * omx/meson.build: - * tools/meson.build: - Revert "meson: use include_directories() with external OMX headers path" - This reverts commit 9d37a92a615e54e8ee12f8c65bcfe386ec9de2d0. + * ges/ges-video-transition.c: + video-transition: When using non crossfade effect use 'over' operations + For smptealph element to work as expected the following compositing + element should mix with the default "over" operator, as described + in its documentation. -2017-11-27 14:52:10 +0100 Guillaume Desmottes +2019-05-23 18:43:06 -0400 Thibault Saunier - * omx/gstomxh265enc.c: - * omx/gstomxh265enc.h: - omxh265enc: add some encoding properties - constrained-intra-prediction and loop-filter-mode. - Those map standard OMX settings. - https://bugzilla.gnome.org/show_bug.cgi?id=792528 + * tools/ges-launcher.c: + launcher: Remove duplicated track types option -2017-11-23 15:54:15 +0100 Guillaume Desmottes +2019-05-23 18:42:34 -0400 Thibault Saunier - * omx/gstomxh264enc.c: - * omx/gstomxh264enc.h: - omxh264enc: add some encoding properties - entropy-mode, constrained-intra-prediction and loop-filter-mode. - Those map standard OMX settings. - https://bugzilla.gnome.org/show_bug.cgi?id=792528 + * ges/ges-layer.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + docs: Minor documentation fixes -2017-06-08 12:31:21 +0200 Guillaume Desmottes +2019-05-23 17:20:56 -0400 Thibault Saunier - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: add zynqultrascaleplus specific properties - https://bugzilla.gnome.org/show_bug.cgi?id=792528 + * bindings/python/gi/overrides/GES.py: + overrides: Make sure overrides are in hierarchy order + Otherwise method order resolution will not be correct -2017-10-31 12:24:39 +0100 Guillaume Desmottes +2019-01-24 19:39:48 -0300 Thibault Saunier - * omx/gstomxvideoenc.c: - omxvideoenc: document unit of target-bitrate property - nTargetBitrate and nEncodeBitrate are defined in bits per second in the - OMX spec. - https://bugzilla.gnome.org/show_bug.cgi?id=792528 + * ges/ges-timeline-element.c: + ges: Minor reorganisation of timeline-element.c -2017-07-06 10:18:48 +0200 Guillaume Desmottes +2019-01-24 08:43:00 -0300 Thibault Saunier - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: add internal-entropy-buffers property on zynqultrascaleplus - Custom property to control the number of internal buffers used in the - decoder to smooth out entropy decoding performance. - https://bugzilla.gnome.org/show_bug.cgi?id=792528 + * ges/ges-timeline-element.h: + ges: Cleanup timeline-element.h indentation -2018-01-30 10:31:03 +0100 Guillaume Desmottes +2019-05-01 18:20:42 -0400 Thibault Saunier - * meson.build: - * omx/meson.build: - * tools/meson.build: - meson: use include_directories() with external OMX headers path - It seems cleaner to use the proper meson tools to include this path - rather than manually tweak the build flags. - This also allows us to simplify the OMX extensions detection code. We - are now always checking which files are present, even when using our - internal copy of OMX, rather than hardcoding the ones present in it. - https://bugzilla.gnome.org/show_bug.cgi?id=792043 - -2017-11-07 15:09:35 +0100 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: expose chroma format and bit depth in output caps - As we added in the parser (bgo#792039) expose the chroma and bit - depth information in output caps. - https://bugzilla.gnome.org/show_bug.cgi?id=792040 - -2017-11-07 14:30:45 +0100 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: factor out get_output_caps() - No semantic change so far. - https://bugzilla.gnome.org/show_bug.cgi?id=792040 - -2017-12-29 11:59:36 +0100 Guillaume Desmottes - - * config/zynqultrascaleplus/gstomx.conf: - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omxvideodec: add hack to pass color format from caps to OMX decoder - This hack tries to pass as much information as possible from caps to the - decoder before it receives any buffer. These information can be used by - the OMX decoder to, for example, pre-allocate its internal buffers - before starting to decode and so reduce its initial latency. - This mechanism is currently supported by the zynqultrascaleplus decoder. - https://bugzilla.gnome.org/show_bug.cgi?id=792040 - -2017-12-01 12:43:19 +0100 Guillaume Desmottes - - * omx/gstomx.c: - log failing OMX calls as errors - I find it confusing when debugging that OMX calls returning an error - where not logged as GST_LEVEL_ERROR making them harder to spot. - Fix this by introducing simple log macros checking the return value of - the OMX call and logging failures as errors. - https://bugzilla.gnome.org/show_bug.cgi?id=791069 - -2017-10-30 11:59:19 +0100 Guillaume Desmottes - - * omx/gstomx.c: - add OMX_PERFORMANCE debug category - Can be used to log buffers exchange between OMX and gst-omx to profile - performances of the OMX component. - Ideally this should be done using tracer hooks but it's currently not - possible to define custom hooks outside of core. - Use GST_DEBUG="OMX_PERFORMANCE:8" to enable it. - See also - https://github.com/gdesmott/gst-log-parser/blob/master/src/bin/omx-perf.rs - as a simple program consuming those logs to generate gnuplot files and - stats. - https://bugzilla.gnome.org/show_bug.cgi?id=791093 - -2017-07-27 11:21:59 +0200 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: implement dmabuf import on zynqultrascaleplus - The Zynq UltraScale+ encoder implements a custom OMX extension to - directly import dmabuf saving the need of mapping input buffers. - This can be use with either 'v4l2src io-mode=dmabuf' or an OMX video - decoder upstream. - https://bugzilla.gnome.org/show_bug.cgi?id=792361 - -2017-09-22 16:02:40 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: drop late input frames if QoS is enabled - Make use of the new GstVideoEncoder QoS API to drop late input frames. This may - help a live pipeline to catch up if it's being late and all frames end up - being dropped at the sink. - https://bugzilla.gnome.org/show_bug.cgi?id=792783 - -2018-01-19 15:18:23 +0530 Ashish Kumar - - * examples/egl/testegl.c: - TestEgl: Removed redundant/unused code - https://bugzilla.gnome.org/show_bug.cgi?id=788550 - -2018-01-03 16:07:18 +0100 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: early return in fill_buffer() if something goes wrong - If something goes wrong while trying to manually copy the input buffer, - the 'break' was moving us out of the 'for' loop but not out of the switch block. - So we ended up calling gst_video_frame_unmap() a second time (raising - assertions) and returning TRUE rather than FALSE. - Reproduced with a WIP zynqultrascaleplus OMX branch reporting wrong - buffer sizes and so triggering this bug. - https://bugzilla.gnome.org/show_bug.cgi?id=792167 - -2017-12-19 16:09:41 +0000 Tim-Philipp Müller + * ges/ges-project.c: + * ges/ges-project.h: + project: Add a signal to notify when a new timeline is starting to load - * meson.build: - meson: gl: the winsys and platform list in the .pc file is space-separated +2019-05-23 16:58:25 -0400 Thibault Saunier -2017-12-19 16:08:58 +0000 Tim-Philipp Müller + * tools/ges-launcher.c: + tools: Initialize GStreamer before parsin options + We need it to be initialized to be able to parse our options - * meson.build: - meson: fix subproject fallback for gstreamer-gl-1.0 - It's now in -base. - -2017-12-12 17:30:27 +0000 Julien Isorce - - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - * omx/gstomxvideodec.c: - omxvideodec: ignore very little variations of the framerate - If less than 1%. - The dynamic format change should not happen when the - resolution does not change and when only the framerate - changes but very slightly, i.e. from 50000/1677=29.81 - to 89/3=29.66 so a "percentage change" of less than 1% - (i.e. 100*(29.81-29.66)/29.66 = 0.50 < 1 ). In that case - just ignore it to avoid unnecessary renegotiation. - https://bugzilla.gnome.org/show_bug.cgi?id=759043 - -2017-08-09 12:07:33 -0400 Guillaume Desmottes - - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: use dynamic buffer mode on input if possible - Prevent from copying the input buffers between GStreamer and OMX. - Tested on zynqultrascaleplus and rpi (without dynamic buffers). - https://bugzilla.gnome.org/show_bug.cgi?id=787093 - -2017-07-20 16:35:31 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: use dynamic buffer mode on input if possible - If the OMX component supports dynamic buffer mode and the input buffers - are properly aligned avoid copying each input frame between OMX and - GStreamer. - Tested on zynqultrascaleplus and rpi (without dynamic buffers). - https://bugzilla.gnome.org/show_bug.cgi?id=787093 - -2017-07-20 12:56:37 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideoenc/dec: factor out input buffer allocation - No semantic change so far. I'm going to add an alternate way to allocate - input buffers. - https://bugzilla.gnome.org/show_bug.cgi?id=787093 - -2017-07-20 16:31:54 +0200 Guillaume Desmottes - - * omx/gstomx.c: - * omx/gstomx.h: - omx: add API to implement dynamic buffers support - OMX 1.2.0 introduced a third way to manage buffers by allowing - components to only allocate buffers header during their initialization - and change their pBuffer pointer at runtime. - This new feature can save us a copy between GStreamer and OMX for each - input buffer. - This patch adds API to allocate and use such buffers. - https://bugzilla.gnome.org/show_bug.cgi?id=787093 - -2017-12-14 14:53:17 +1100 Matthew Waters +2019-05-01 17:28:26 -0400 Thibault Saunier - * common: - Automatic update of common submodule - From e8c7a71 to 3fa2c9e + * tools/ges-launcher.c: + * tools/utils.c: + * tools/utils.h: + tools: Use a proper implementation of get_flags_from_string + +2019-05-01 17:26:51 -0400 Thibault Saunier + + * tests/check/ges/test-utils.h: + tests: Simply include ges-internal.h instead of redefining the same macros + +2019-05-16 09:07:03 -0400 Thibault Saunier + + * docs/gst_plugins_cache.json: + * docs/meson.build: + docs: Stop building the doc cache by default + And update the cache + Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36 + +2019-05-16 15:09:51 +0300 Sebastian Dröge + + * ges/ges-timeline-element.c: + timeline-element: Mark edit() as Since: 1.18 + +2019-05-16 15:06:14 +0300 Sebastian Dröge + + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-uri-asset.c: + * ges/ges.c: + ges: Sprinkle around some Since: 1.16 markers + +2019-05-01 13:19:42 -0400 Thibault Saunier + + * docs/sitemap.txt: + * ges/ges-pipeline.c: + * ges/ges-screenshot.c: + ges: Deprecate ges_play_sink_convert_frame + It has nothing to do in our namespace/API + +2019-05-01 12:56:44 -0400 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-title-source.c: + * ges/ges-types.h: + * ges/ges-video-source.c: + More porting to markdown + +2019-05-01 11:53:07 -0400 Thibault Saunier + + * ges/ges-title-clip.c: + title-clip: Enhance documentation + +2018-10-22 08:22:52 +0200 Thibault Saunier + + * Makefile.am: + * configure.ac: + * docs/Makefile.am: + * docs/base-classes.md: + * docs/gst_plugins_cache.json: + * docs/images/layer_track_overview.png: + * docs/index.md: + * docs/libs/.gitignore: + * docs/libs/Makefile.am: + * docs/libs/architecture.xml: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * docs/libs/meson.build: + * docs/low_level.md: + * docs/meson.build: + * docs/nle-index.md: + * docs/nle-sitemap.txt: + * docs/nle.md: + * docs/sitemap.txt: + * ges/meson.build: + * meson.build: + * meson_options.txt: + * plugins/meson.build: + * plugins/nle/meson.build: + doc: Build documentation with hotdoc + +2018-10-22 11:39:03 +0200 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-pitivi-formatter.h: + * ges/ges-project.c: + * ges/ges-track-element-asset.c: + * ges/ges-track-element.c: + * ges/ges-uri-asset.c: + * ges/ges.c: + * ges/meson.build: + docs: Minor fixes + +2019-05-07 13:33:09 -0400 Nicolas Dufresne + + * docs/libs/ges-sections.txt: + doc: ges-track: Add ges_track_set_create_element_for_gap_func + +2019-05-05 11:38:28 -0400 Thibault Saunier + + * tools/ges-launcher.c: + launch: Fix caps restriction short names + +2019-05-04 10:47:07 -0400 Thibault Saunier + + * bindings/python/gi/overrides/GES.py: + * tests/check/python/test_timeline.py: + python: Avoid warning about using deprecated methods + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/69 + +2019-05-02 11:41:10 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-group.c: + * ges/ges-source-clip.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + element: Make return value of setters mean something + Setters return values should return %FALSE **only** when the value + could not be set, not when unchanged or when the subclass handled + it itself! + This patches makes it so the return value is meaningul by allowing + subclasses return anything different than `TRUE` or `FALSE` (convention + is -1) to let the subclass now that it took care of everything and + no signal should be emited. + +2019-05-01 12:09:45 -0400 Thibault Saunier + + * bindings/python/gi/overrides/GES.py: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + ges: Move `ges_container_edit` to GESTimelineElement + Now that the notion of layer has been moved down to #GESTimelineElement + (through the new #ges_timeline_element_get_layer_priority method), this + method make much more sense directly in the base class. + +2019-04-20 01:36:10 +0530 Nirbheek Chauhan + + * plugins/ges/meson.build: + meson: Generate a pkgconfig file for the GES plugin + This was missing due to a typo. + +2019-04-19 10:41:39 +0100 Tim-Philipp Müller + + * RELEASE: + * configure.ac: + * meson.build: + Back to development + +=== release 1.16.0 === + +2019-04-19 00:35:57 +0100 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.16.0 + +2019-04-18 16:44:31 -0400 Thibault Saunier + + * ges/ges-asset.c: + asset: Avoid unrefing a task we do not own + +2019-04-17 23:53:14 +0200 Alexandru Băluț + + * ges/ges-clip.c: + clip: Optimize set_top_effect_index by checking parent sooner + +2019-04-17 23:51:13 +0200 Alexandru Băluț + + * ges/ges-clip.c: + clip: Return TRUE when the the effect index does not change + +2019-04-13 20:03:52 +0200 Alexandru Băluț + + * ges/ges-clip.c: + clip: Remove obsolete FIXME + +2019-04-11 23:58:48 +0200 Alexandru Băluț + + * ges/ges-container.c: + container: Call _remove_child when cannot set parent + ges_container_add removes the child being added if the call to + ges_timeline_element_set_parent fails. In this case, subclasses should + be given the chance to revert the effects of the add_child vmethod which + has just been called. + +2019-04-11 23:45:13 +0200 Alexandru Băluț + + * ges/ges-container.c: + ges: Remove unused nb_effects field + +2019-04-12 17:30:14 +0300 Mart Raudsepp + + * ges/ges-track.c: + track: Avoid various sorting operations before timeline commit + These are showing up in performance profile of 1000+ clips looped addition. + All this is done at commit time as well, so let that do only one update and + sorting. + +2019-04-15 17:03:49 -0400 Thibault Saunier + + * ges/ges-asset.c: + asset: Do not take an extra ref on asset when already initialized + The task already has a ref so this one doesn't make sense and leads to leaks + +2019-04-12 18:31:07 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-project.c: + * tests/check/ges/project.c: + xml-formatter: Fix some asset leaks + +2019-04-09 08:58:24 -0400 Thibault Saunier + + * tests/check/ges/clip.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + * tests/check/ges/mixers.c: + * tests/check/ges/project.c: + * tests/check/ges/timelineedition.c: + tests: Plug misc leaks + +2019-04-09 08:56:49 -0400 Thibault Saunier + + * ges/gstframepositioner.c: + framepositioner: Plug caps leak + +2019-04-09 08:56:08 -0400 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Plug some leaks + +2019-04-08 16:25:59 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Plug leak of the auto transition asset + +2019-04-08 16:25:44 -0400 Thibault Saunier + + * ges/ges-timeline-tree.c: + tree: Plug a GList leak + +2019-04-08 16:25:29 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Plug pad leak + +2019-04-08 16:23:18 -0400 Thibault Saunier + + * ges/ges-title-source.c: + * tests/check/ges/titles.c: + title: Deprecate method that return newly allocated `const gchar*` + This is just plain broken 190643508f14a64e36f085a69de819505e79dadb + but we can't do anything about it. + +2019-04-05 11:24:39 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-project.c: + Plug some GError leaks when loading assets + +2019-04-01 11:52:43 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + xml-formatter: Free pending clips on disposal + +2019-03-28 13:51:36 -0300 Thibault Saunier + + * ges/ges-asset.c: + asset: Plug a GError leak + +2019-03-28 13:08:55 -0300 Thibault Saunier + + * tests/check/ges/mixers.c: + tests: Avoid random timeout and let the launcher set it up for us + +2019-03-28 13:08:01 -0300 Thibault Saunier + + * ges/ges-asset.c: + asset: s/unsure/ensure + +2019-03-28 13:06:37 -0300 Thibault Saunier + + * ges/ges-project.c: + asset: Plug a leak of EncodingProfiles + +2019-03-28 13:06:16 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * tests/check/ges/group.c: + xml-formatter: Plug leaks of pending groups + +2019-03-28 13:05:45 -0300 Thibault Saunier + + * ges/ges-asset.c: + asset: plug a GTask leak + +2019-03-28 11:29:05 -0300 Thibault Saunier + + * ges/ges-track-element.c: + * tests/check/ges/clip.c: + Fix splitting control bindings leaks + +2019-03-28 11:09:13 -0300 Thibault Saunier + + * tests/check/ges/asset.c: + tests: Fix a leak in the 'asset' test + +2019-03-28 11:08:58 -0300 Thibault Saunier + + * ges/ges-timeline-tree.c: + tree: Fixup some GList leaks + +2019-04-15 18:37:58 +0900 Yeongjin Jeong + + * ges/ges-uri-asset.c: + uri-asset: Ensure that the discoverer stops on deinit. + Discoverer maintain a referernce on the discoverer object while + the async timeout callback is alive to prevent a potential crash + if the object is freed while the callback is pending. + But if g_main_context is released before calling the timeout callback, + the discoverer pointer which was weak referenced from GESUriClipAssetClass + will not be disposed because the discoverer object is not finalized. + +=== release 1.15.90 === + +2019-04-11 00:37:00 +0100 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.15.90 + +2019-03-23 19:21:31 +0000 Tim-Philipp Müller + + * meson.build: + g-i: pass --quiet to g-ir-scanner + This suppresses the annoying 'g-ir-scanner: link: cc ..' output + that we get even if everything works just fine. + We still get g-ir-scanner warnings and compiler warnings if + we pass this option. + +2019-03-19 16:39:20 +0100 Jakub Adam + + * ges/ges-video-source.c: + videosource: Expose video-direction child property + +2019-03-15 16:24:16 +0100 Jakub Adam + + * ges/ges-video-source.c: + videosource: auto-flip the image according to image-orientation tag + If there's image-orientation tag, make sure the image is correctly + oriented before we scale it. + +2019-03-16 15:04:29 +0000 Tim-Philipp Müller + + * ges/Makefile.am: + Fix autotools build + +2019-03-08 17:45:27 -0300 Thibault Saunier + + * ges/ges-clip.c: + clip: Make sure to set the pasted clip start before adding to layer + And handle the fact that adding to a layer can fail. + Also plug some leaks in the dispose method (and use the dispose + vmethod instead of finalize as appropriate). + +2019-03-08 12:28:31 -0300 Thibault Saunier + + * ges/ges-clip.c: + clip: Emit signals while splitting in a way the operation is undoable + Basically if we do not emit a "duration" change of the clip being + splitted first when executing the 'reverse' operations would lead + to fully overallaping clips. + +2019-03-01 19:32:19 -0300 Thibault Saunier + + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-container.c: + * ges/ges-group.c: + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-source-clip.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-tree.c: + * ges/ges-timeline-tree.h: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-uri-clip.c: + * ges/meson.build: + * tests/check/ges/asset.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/timelineedition.c: + * tests/check/ges/uriclip.c: + * tests/check/python/common.py: + * tests/check/python/test_group.py: + * tests/check/python/test_timeline.py: + Reimplement the timeline editing API + This is implemented on top of a Tree that represents the whole timeline. + SourceClips can not fully overlap anymore and the tests have been + updated to take that into account. Some new tests were added to verify + that behaviour in greater details + +2019-03-03 21:18:53 -0300 Thibault Saunier + + * examples/c/gessrc.c: + * plugins/ges/gesdemux.c: + Some copyright fixing + +2019-03-03 20:59:12 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Rename group_id to stream_start_group_id + +2019-03-01 19:30:41 -0300 Thibault Saunier + + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + * tests/check/python/common.py: + tests: Add utilities to print the timeline + Making debugging tests simpler + +2019-03-01 19:08:39 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-group.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + * tests/check/ges/group.c: + * tests/check/ges/timelineedition.c: + timeline-element: Add a method to retrieve layer priority + Each timeline element is in a layer (potentially spanning + over several), it is very often useful to retrieve an element + layer priority (from an app perspective more than the element + priority itself as that is a bit of an implementation detail + in the end). + Port tests to it + +2019-02-11 20:30:31 -0300 Thibault Saunier + + * bindings/python/gi/overrides/GES.py: + python: Implement TimelineElement.__repr__ + +2019-02-28 13:56:50 -0300 Thibault Saunier + + * ges/ges-enums.c: + * ges/ges-enums.h: + Add API to get the GESEdge names + +2019-02-09 18:59:08 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + ges: Move GESClipFlags to GESTimelineElementFlags + Keeping it internal + And add an internal method to get layer priority for GESTimelineElements + (dirty implementation to make it simple for now) + +2019-02-08 17:50:04 -0300 Thibault Saunier + + * tests/check/python/test_timeline.py: + tests:python: assertEquals is deprecated, use assertEqual + +2019-02-08 17:48:26 -0300 Thibault Saunier + + * ges/ges-layer.c: + layer: factor out a method to remove an object without signaling it + +2019-02-08 17:47:48 -0300 Thibault Saunier + + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + tests: python: Move assertTimelineTopology to the baseclass + +2019-02-08 17:46:31 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: No error when moving an object as part of the context + It will just happen from the context + +2019-02-08 17:44:40 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Not being able to trim and object is an error + So error out when that happens. + +2019-02-08 17:43:34 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Setting duration to the same value is valid + And should not be advertised as if the operation failed. + +2019-02-08 17:37:39 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Do not ripple if resulting duration would be 0 + +2019-02-08 16:44:39 -0300 Thibault Saunier + + * ges/ges-auto-transition.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * tests/check/ges/group.c: + clip: Add a method to get the priority of the layer it is in + Just an helper method to get the 'priority of a the clip' + +2019-02-08 16:05:18 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-source-clip.c: + * tests/check/ges/timelineedition.c: + clip: Rollback moving clips when moving a contained TrackElement fails + And fix unit tests to match the correct behaviour + +2019-02-09 00:07:08 -0300 Thibault Saunier + + * ges/ges-internal.h: + * tests/check/ges/test-utils.h: + Shorten GES_FORMAT output + +2019-02-21 17:24:51 -0300 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/python/test_clip.py: + clip: Make sure to remove and re add effects when adding clips to layer + And make re add them in the same order. + And enhance tests to check that + +2019-03-01 22:57:48 -0300 Thibault Saunier + + * ges/ges-source.c: + source: No checks when linking default elements + +2019-03-15 18:31:30 -0300 Thibault Saunier + + * plugins/nle/nlesource.c: + nlesource: Use gst_element_call_async as appropriate + +2019-03-15 17:07:06 -0300 Thibault Saunier + + * plugins/nle/nlesource.c: + nlesource: Protect seeks from tear down + Otherwise there is a race where we trigger the seek at the exact + same time the composition is being teared down potentially leading + to basesrc restarting its srcpad task which ends up being leaked. + Fixes ges.playback.scrub_backward_seeking.test_title.audio_video.vorbis_theora_ogg + and probably all its friends timeouting with the following stack trace: + (gdb) t a a bt + Thread 4 (Thread 0x7f5962acd700 (LWP 19997)): + #0 0x00007f5976713efd in syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 + #1 0x00007f5976a9d3f3 in g_cond_wait (cond=cond@entry=0x7f5938125410, mutex=mutex@entry=0x7f59381253c8) at gthread-posix.c:1402 + #2 0x00007f5976c9e26b in gst_task_func (task=0x7f59381253b0 [GstTask]) at ../subprojects/gstreamer/gst/gsttask.c:313 + #3 0x00007f5976a7ecb3 in g_thread_pool_thread_proxy (data=) at gthreadpool.c:307 + #4 0x00007f5976a7e2aa in g_thread_proxy (data=0x7f5954071d40) at gthread.c:784 + #5 0x00007f59767ea58e in start_thread (arg=) at pthread_create.c:486 + #6 0x00007f59767196a3 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 + Thread 3 (Thread 0x7f5963fff700 (LWP 19995)): + #0 0x00007f597670e421 in __GI___poll (fds=0xe32da0, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 + #1 0x00007f5976a553a6 in g_main_context_poll (priority=, n_fds=2, fds=0xe32da0, timeout=, context=0xe31ff0) at gmain.c:4221 + #2 0x00007f5976a553a6 in g_main_context_iterate (context=0xe31ff0, block=block@entry=1, dispatch=dispatch@entry=1, self=) at gmain.c:3915 + #3 0x00007f5976a55762 in g_main_loop_run (loop=0xe32130) at gmain.c:4116 + #4 0x00007f59768db10a in gdbus_shared_thread_func (user_data=0xe31fc0) at gdbusprivate.c:275 + #5 0x00007f5976a7e2aa in g_thread_proxy (data=0xe1b8a0) at gthread.c:784 + #6 0x00007f59767ea58e in start_thread (arg=) at pthread_create.c:486 + #7 0x00007f59767196a3 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 + Thread 2 (Thread 0x7f5968dcc700 (LWP 19994)): + #0 0x00007f597670e421 in __GI___poll (fds=0xe1bcc0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 + #1 0x00007f5976a553a6 in g_main_context_poll (priority=, n_fds=1, fds=0xe1bcc0, timeout=, context=0xe1b350) at gmain.c:4221 + #2 0x00007f5976a553a6 in g_main_context_iterate (context=context@entry=0xe1b350, block=block@entry=1, dispatch=dispatch@entry=1, self=) at gmain.c:3915 + #3 0x00007f5976a554d0 in g_main_context_iteration (context=0xe1b350, may_block=may_block@entry=1) at gmain.c:3981 + #4 0x00007f5976a55521 in glib_worker_main (data=) at gmain.c:5861 + #5 0x00007f5976a7e2aa in g_thread_proxy (data=0xe1b800) at gthread.c:784 + #6 0x00007f59767ea58e in start_thread (arg=) at pthread_create.c:486 + #7 0x00007f59767196a3 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 + Thread 1 (Thread 0x7f5975df4fc0 (LWP 19993)): + #0 0x00007f5976713efd in syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 + #1 0x00007f5976a9d3f3 in g_cond_wait (cond=cond@entry=0xe34020, mutex=0xe39b80) at gthread-posix.c:1402 + #2 0x00007f5976a7f41c in g_thread_pool_free (pool=0xe34000, immediate=0, wait_=) at gthreadpool.c:776 + #3 0x00007f5976c9f1ca in default_cleanup (pool=0xe256b0 [GstTaskPool]) at ../subprojects/gstreamer/gst/gsttaskpool.c:89 + #4 0x00007f5976c9e32d in init_klass_pool (klass=) at ../subprojects/gstreamer/gst/gsttask.c:161 + #5 0x00007f5976c9e502 in gst_task_cleanup_all () at ../subprojects/gstreamer/gst/gsttask.c:381 + #6 0x00007f5976c214f4 in gst_deinit () at ../subprojects/gstreamer/gst/gst.c:1095 + #7 0x000000000040394f in main (argc=6, argv=) at ../subprojects/gst-editing-services/tools/ges-launch.c:94 + +2019-02-08 18:26:19 -0300 Thibault Saunier + + * tests/benchmarks/meson.build: + * tests/meson.build: + meson: Build benchmarks + +2019-03-11 19:56:09 -0300 Thibault Saunier + + * ges/ges-uri-asset.c: + asset-uri: Create a specific discoverer when discovering sync + To allow 'reintrancy'. + This was a 'regression' introduced in bad64296d9b497a13f5f7fe91d568d85ed236265 + Fixes https://gitlab.gnome.org/GNOME/pitivi/issues/2278 + +2019-02-22 17:31:06 -0800 Pat DeSantis + + * ges/ges-formatter.h: + Mark ges_timeline_load_from_uri as deprecated + +2019-02-20 20:17:55 -0800 Pat DeSantis + + * ges/ges-formatter.h: + Update deprecation warning to match GTK style + +2019-02-20 17:17:14 -0800 Pat DeSantis + + * ges/ges-formatter.h: + Mark ges_formatter_save_to_uri as deprecated + +2019-01-29 13:45:49 +0900 Seungha Yang + + * tests/check/Makefile.am: + * tests/check/ges/negative.c: + * tests/check/meson.build: + tests: Add inconsistent init/deinit test case + +2019-01-28 20:45:11 +0900 Seungha Yang + + * ges/ges-asset.c: + * ges/ges.c: + ges: Enhance ges_{init/deinit} documentation + Add some init/deinit related comment and make assertion when + ges_deinit() is called from unexpected thread. + +2019-02-06 19:49:14 -0300 Thibault Saunier + + * tests/check/python/common.py: + tests:python: Use proper GES.Project constructor + Avoiding a g_critical + +2019-02-08 13:54:06 +0900 Seungha Yang + + * plugins/nle/nlecomposition.c: + nlecomposition: Suppress error from child during sync state with parent + This commit is to ensure cleanup internal elements on state change failure. + nlecomposition posts its own error message after cleanup child. + If we don't suppress child error, meanwhile, an application + triggered downward state change (resulting from child error message) + might be able to reach nlecomposition before internal cleaning child up. + That eventually results to downward state change failure. + +2019-02-05 17:29:00 +0900 Seungha Yang + + * plugins/nle/nlesource.c: + nlesource: Don't leak pending seek event on dispose + +2019-02-01 15:37:42 +0900 Seungha Yang + + * plugins/nle/nlecomposition.c: + nlecomposition: Don't keep sync state of child on activation failure + This will result in downward state change failure eventually + when user is finalizing top level (i.g., gespipeline) bin. + +2019-03-04 11:09:33 +0000 Tim-Philipp Müller + + * examples/.gitignore: + examples: add gessrc example binary to .gitignore + +2019-03-04 11:07:51 +0000 Tim-Philipp Müller + + * plugins/ges/gesdemux.c: + gesdemux: don't use deprecated gst_uri_construct() + Fixes #64 + +2019-03-04 09:14:25 +0000 Tim-Philipp Müller + + * NEWS: + * RELEASE: + * configure.ac: + * meson.build: + Back to development + +2019-02-28 13:09:38 +0200 Sebastian Dröge + + * plugins/ges/Makefile.am: + ges: Link ges plugin to libgstpbutils + /usr/bin/ld: .libs/libgstges_la-gesdemux.o: in function `ges_timeline_new_from_uri_from_main_thread': + ./plugins/ges/gesdemux.c:279: undefined reference to `gst_discoverer_new' + /usr/bin/ld: ./plugins/ges/gesdemux.c:288: undefined reference to `gst_discoverer_start' + +=== release 1.15.2 === + +2019-02-26 11:59:49 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.15.2 + +2019-02-26 14:12:13 +0000 Tim-Philipp Müller + + * examples/c/Makefile.am: + examples: add new gessrc example, so sourcefile gets disted + +2019-02-26 13:57:17 +0000 Tim-Philipp Müller + + * configure.ac: + * plugins/Makefile.am: + * plugins/ges/Makefile.am: + plugins: add autotools build for new ges plugin + +2019-02-20 22:11:54 -0300 Thibault Saunier + + * examples/python/keyframes.py: + examples: Add an example about using keyframes in python + +2019-02-11 18:26:04 +0900 Seungha Yang + + * ges/ges-meta-container.c: + ges-meta-container: Fix g-i annotation + ges-meta-container.c:516: Warning: GES: invalid "allow-none" annotation: + only valid for pointer types and out parameters + +2019-02-06 00:30:35 +0530 Nirbheek Chauhan + + * plugins/ges/gesdemux.c: + misc: Fix warnings on Cerbero's ancient MinGW + gesdemux.c:297:3: error: value computed is not used [-Werror=unused-value] + +2019-01-23 09:07:58 -0300 Thibault Saunier + + * ges/ges-group.c: + Fix segfault when adding clips to group outside a timeline + Making sure that objects are inside a timeline before adding/removing them from it + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/35 + +2019-01-30 15:58:33 -0300 Thibault Saunier + + * tests/check/python/test_timeline.py: + tests: Fix usage of undefined class + +2019-01-28 19:09:03 -0300 Thibault Saunier + + * tools/ges-launcher.c: + launcher: Add options to set tracks restriction caps + +2019-01-28 00:55:27 +0900 Yeongjin Jeong + + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + tests: ges: Fix various leak + +2019-01-26 19:50:48 +0900 Yeongjin Jeong + + * ges/ges-layer.c: + layer: Fix asset leak + +2019-01-26 16:44:09 +0900 Yeongjin Jeong + + * ges/ges-effect.c: + effect: Fix string leak + +2019-01-29 11:52:43 +0900 Yeongjin Jeong + + * ges/ges-uri-asset.c: + uri-asset: Implement dispose vmethod for GESUriSourceAsset + ... and fix DiscovererStreamInfo leak + +2019-01-26 16:27:27 +0900 Yeongjin Jeong + + * ges/ges-uri-asset.c: + uri-asset: Don't forget to unref DiscovererInfo on dispose + Dispose() must unref DiscovererInfo ownership + taken by ges_uri_clip_asset_set_info(). + +2019-01-25 18:21:43 +0900 Yeongjin Jeong + + * ges/ges-video-transition.c: + video-transition: Fix GstPad leak + Returned Gstpad by link_element_to_mixer_with_smpte() + has increased refcount in ges_smart_mixer_get_mixer_pad(). + +2018-11-27 04:55:17 +0100 Alexandru Băluț + + * ges/ges-timeline.c: + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + timeline: Better handle loading inconsistent timelines + Auto transition when having 3 overlapping clips in a same point in the + timeline is not supported as we can't handle it in a nice way. Before we + to avoid creating 2 overlapping transitions (which is plain broken in + NLE) were completely disabling `auto-transition` and removing all + auto-transitions in the timeline but this is pretty weird for the end + user. This commit changes and now makes sure 2 transitions are not + created in the same place. + Also cleanup previous test case. + +2019-01-18 17:25:11 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-project.c: + * ges/ges-transition-clip.c: + * ges/ges-xml-formatter.c: + s/accured/occurred/g + +2019-01-18 17:12:42 -0300 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Minor debug enhancement + +2019-01-18 09:52:47 -0300 Thibault Saunier + + * plugins/ges/gesdemux.c: + * plugins/ges/gesdemux.h: + * plugins/ges/gesplugin.c: + plugins: Add an a gesdemux element to 'demux' serialized timelines + +2015-03-14 20:52:47 +0000 Thibault Saunier + + * examples/c/gessrc.c: + * examples/c/meson.build: + * examples/python/gst-player.py: + * plugins/ges/gesplugin.c: + * plugins/ges/gessrc.c: + * plugins/ges/gessrc.h: + * plugins/ges/meson.build: + * plugins/meson.build: + plugins: implement a gessrc element useable from playbin + This is a new simple GstBin that can handle the ges:// uris + and will directly expose the srcppads of the tracks present in the + timeline. + +2019-01-18 15:45:39 -0300 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges.c: + * tests/check/python/test_assets.py: + uri-asset: Use the same code path for sync discovery as the async one + And start handling relocated assets. + Also expose the discoverer callback as a vmethod so that we can + overridde the discoverer when necessary (to handle discovering of + timeline through gesdemux for example) + +2019-01-17 15:12:42 -0300 Thibault Saunier + + * ges/ges-pipeline.c: + * plugins/nle/nlecomposition.c: + * tests/check/nle/nlecomposition.c: + nlecomposition: Get overall pipeline position by recursing up + And handle NLEComposition inside NLEComposition + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/39 + +2018-09-30 17:22:13 -0300 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + videomixer: Drop allocation query after the compositor + Working around https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/310 + +2019-01-28 18:59:40 -0300 Thibault Saunier + + * ges/ges-layer.c: + * tests/check/python/test_timeline.py: + layer: Resort clips before syncing priorities + We set the priorities making the assumption that `start_clips` is properly + ordered by start! + Fixes https://gitlab.gnome.org/GNOME/pitivi/issues/2254 + +2019-01-28 12:58:06 +0900 Seungha Yang + + * tests/check/ges/asset.c: + tests: asset: Add test async asset request with custom GMainContext + ... and test call ges_{init/deinit} multiple times in a unit test. + +2019-01-28 17:22:10 +0900 Seungha Yang + + * ges/ges.c: + Revert "ges: Add missing type unref on deinit" + This reverts commit e939cfebaf4deeabf21ba799ddc3eeaa87e7cf9a. + Class might not be initialized if they were already registered + when ges_init() was called, but were not created until ges_deinit() called. + +2019-01-28 17:12:54 +0900 Seungha Yang + + * ges/ges-internal.h: + * ges/ges-uri-asset.c: + * ges/ges.c: + ges: Add check sync/async discoverer + To support ges_{init/deinit} multiple times in a process, + there should be a method for setting up internal object/table of + GESUriClipAssetClass. because *_class_init() will be called + only once in process lifecycle. + +2019-01-28 17:15:19 +0900 Seungha Yang + + * ges/ges-uri-asset.c: + uri-asset: Add missing GHashTable cleanup + ... and use g_object_unref() for GFile object, it's not a GstObject. + +2019-01-28 16:34:15 +0900 Seungha Yang + + * ges/ges.c: + ges: Print initialize error reasons + +2019-01-28 12:19:30 +0900 Seungha Yang + + * tests/check/ges/asset.c: + tests: asset: Remove out-of-date comment + +2019-01-28 12:17:00 +0900 Seungha Yang + + * tests/check/ges/asset.c: + tests: asset: Remove pointless gst_init() + It's done by GST_CHECK_MAIN() already + +2019-01-28 11:24:29 +0900 Seungha Yang + + * tests/check/ges/asset.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + * tests/check/ges/mixers.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/tempochange.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/track.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/check/nle/complex.c: + * tests/check/nle/nlecomposition.c: + * tests/check/nle/nleoperation.c: + * tests/check/nle/simple.c: + tests: init/deinit per test case + ... in order to verify init/deinit pair. + +2019-01-28 11:07:36 +0900 Seungha Yang + + * ges/ges.c: + ges: Simplify init/deinit flag + In theory, GES can be init/deinit multiple times in a process. + To simplify that use-case, let's trace only "ges_initialized" flag. + +2019-01-21 11:53:44 +0100 Corentin Noël + + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + uri-asset: Add ges_uri_clip_asset_finish to get better introspection + Vala requires a matching _finish function to correctly bind the method with the right finish method. + +2019-01-21 14:14:06 +0100 Corentin Noël + + * ges/ges-timeline.c: + timeline: fix two issues in the documentation + +2019-01-15 09:59:59 -0300 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Do not forget to serialize clips metadata + +2019-01-15 09:38:14 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + xml-formatter: Serialize groups metadatas + +2019-01-15 00:15:28 +0900 Seungha Yang + + * ges/ges-uri-asset.c: + uri-asset: Don't leak GstDiscovererInfo + +2019-01-15 00:13:24 +0900 Seungha Yang + + * ges/ges-uri-asset.c: + uri-asset: Impl. dispose vfunc + ... and fix GList/GESAsset leak + +2019-01-14 23:38:19 +0900 Seungha Yang + + * ges/ges-transition-clip.c: + transition-clip: Don't leak GESAsset + Returned GESAsset from ges_asset_request should be freed since + ges_extractable_set_asset doesn't take ownership + +2019-01-14 22:14:18 +0900 Seungha Yang + + * ges/gstframepositioner.c: + framepositioner: Fix invalid memory access + The GstFramePositioner might be finalized before the notify callback + Without this commit, + gst-editing-services / ges_basic / test_ges_timeline_remove_track + can reproduce the case. + +2019-01-14 15:06:26 +0900 Seungha Yang + + * plugins/nle/nleoperation.c: + nleoperation: Fix GstPad leak + Returned GstPad by nle_object_remove_ghost_pad() has increased + refcount. + +2019-01-14 14:10:32 +0900 Seungha Yang + + * plugins/nle/nlecomposition.c: + * plugins/nle/nleghostpad.c: + nleghostpad: Fix GstEvent leak + +2019-01-14 12:52:47 +0900 Seungha Yang + + * plugins/nle/nlecomposition.c: + nlecomposition: Don't leak GNode + Clear the last node before update + +2019-01-14 13:22:13 +0900 Seungha Yang + + * tests/check/nle/complex.c: + * tests/check/nle/nlecomposition.c: + * tests/check/nle/tempochange.c: + tests: nle: Fix various leak + Don't leak GError and GstPad object + +2019-01-14 11:34:20 +0900 Seungha Yang + + * tests/check/nle/common.c: + * tests/check/nle/common.h: + * tests/check/nle/complex.c: + * tests/check/nle/nleoperation.c: + * tests/check/nle/simple.c: + * tests/check/nle/tempochange.c: + tests: nle: Fix GList leak + +2019-01-13 00:12:42 +0900 Seungha Yang + + * tests/check/ges/asset.c: + * tests/check/ges/basic.c: + * tests/check/ges/layer.c: + tests: ges: Fix various leak + +2019-01-12 22:24:55 +0900 Seungha Yang + + * ges/ges-asset.c: + asset: Fix various leak + +2019-01-12 21:59:20 +0900 Seungha Yang + + * ges/ges-enums.c: + enums: Add missing unref + +2019-01-12 21:52:16 +0900 Seungha Yang + + * plugins/nle/nlecomposition.c: + nlecomposition: Clear all members before chaining up to parent on finalize + +2019-01-12 21:51:36 +0900 Seungha Yang + + * ges/ges-structure-parser.c: + structure-parser: Add missig chain up code + +2019-01-12 20:53:38 +0900 Seungha Yang + + * ges/ges.c: + ges: Add missing type unref on deinit + +2019-01-12 20:23:50 +0900 Seungha Yang + + * ges/ges-asset.c: + * ges/ges-internal.h: + * ges/ges.c: + ges: Cleanup internal hash table on deinit + System-wide once allocated but it makes tracing leak hard + +2019-01-12 19:57:37 +0900 Seungha Yang + + * ges/ges.c: + ges: Make init/deinit thread safe + Although it might be uncommon use case, init/deinit could be called + in non-main thread. + +2019-01-12 19:23:25 +0900 Seungha Yang + + * ges/ges-asset.c: + asset: Use static lock + The mutex life cycle follows processs. + +2019-01-14 10:16:18 +0900 Seungha Yang + + * tests/check/meson.build: + tests: Increase timeout value to 360 sec + Use consistent timeout value with core and other plugins. + Otherwise, valgrind sometimes timed out with default timeout 30sec. + +2019-01-14 12:45:29 +0900 Seungha Yang + + * plugins/nle/nlecomposition.c: + nlecomposition: Don't try dump null stack + Fixes following assertion + Unexpected critical/warning: g_node_traverse: assertion 'root != NULL' failed + +=== release 1.15.1 === + +2019-01-17 02:30:06 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.15.1 + +2019-01-14 18:32:23 -0300 Thibault Saunier + + * ges/ges-formatter.c: + ges: Register formatters during meta registration + So that formatters implemented outside GES itself are registered + +2019-01-14 18:30:38 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges.c: + * ges/ges.h: + ges: Add a ges_is_initialized function + +2019-01-14 18:28:52 -0300 Thibault Saunier + + * ges/ges-formatter.c: + formatter: sink ref of the temporary GESFormatter + To accomodate formatters implemented with bindings/in python + +2019-01-09 17:11:37 +0900 Seungha Yang + + * ges/ges-pipeline.c: + pipeline: Ensure timeline state to be NULL on dispose + The GESTimeline's state might not be synced with parent + +2019-01-09 16:23:54 +0900 Seungha Yang + + * plugins/nle/nlecomposition.c: + nlecomposition: Handle state change failure + Whatever the reason for failure, try cleanup child elements + and internal thread. + +2019-01-05 00:23:20 +0100 Alexandru Băluț + + * ges/ges-meta-container.c: + ges-meta-container: Fix warning message + +2019-01-04 05:31:39 +0100 Alexandru Băluț + + * ges/ges-meta-container.c: + ges-meta-container: Minor documentation fixes + +2019-01-04 12:36:20 +0100 Thibault Saunier + + * ges/ges-track-element.c: + track-element: Ignore writability for whitlisted children props + If the property was explicitely whitelisted, we should expose it + in any case. + This was a regression from 835d69374978208bc73a8f823b899f624dda9479 + +2018-12-30 19:49:44 +0000 Tim-Philipp Müller + + * ges/ges-smart-video-mixer.c: + ges: avoid use of G_DECLARE_FINAL_TYPE which requires GLib 2.44 + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/48 + +2018-12-27 10:54:28 +0900 Seungha Yang + + * ges/ges-container.c: + container: Fix GHashTable leak + +2018-12-27 00:15:30 +0900 Seungha Yang + + * ges/ges-container.c: + container: Fix wrong finalize() usage + finalize must chain up to parent's finalize(), not dispose() + +2018-12-27 00:14:03 +0900 Seungha Yang + + * ges/ges-timeline-element.c: + timeline-element: Chain up to parent impl. on dispose() + ... as documented in glib + +2018-09-24 15:41:24 +0100 Tim-Philipp Müller + + * configure.ac: + * ges/Makefile.am: + * ges/ges-asset.c: + * ges/ges-audio-source.c: + * ges/ges-audio-test-source.c: + * ges/ges-audio-track.c: + * ges/ges-audio-transition.c: + * ges/ges-audio-uri-source.c: + * ges/ges-auto-transition.c: + * ges/ges-base-effect-clip.c: + * ges/ges-base-effect.c: + * ges/ges-base-transition-clip.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip-asset.c: + * ges/ges-clip.c: + * ges/ges-command-line-formatter.c: + * ges/ges-container.c: + * ges/ges-effect-asset.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-enums.c: + * ges/ges-extractable.c: + * ges/ges-formatter.c: + * ges/ges-group.c: + * ges/ges-image-source.c: + * ges/ges-layer.c: + * ges/ges-meta-container.c: + * ges/ges-multi-file-source.c: + * ges/ges-operation-clip.c: + * ges/ges-operation.c: + * ges/ges-overlay-clip.c: + * ges/ges-pipeline.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-prelude.h: + * ges/ges-project.c: + * ges/ges-screenshot.c: + * ges/ges-smart-adder.c: + * ges/ges-smart-video-mixer.c: + * ges/ges-source-clip.c: + * ges/ges-source.c: + * ges/ges-structure-parser.c: + * ges/ges-structured-interface.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-track-element-asset.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-transition-clip.c: + * ges/ges-transition.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-clip.c: + * ges/ges-utils.c: + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + * ges/ges-video-track.c: + * ges/ges-video-transition.c: + * ges/ges-video-uri-source.c: + * ges/ges-xml-formatter.c: + * ges/meson.build: + * meson.build: + WIP: ges: fix API export/import and 'inconsistent linkage' on MSVC + Export GES library API in headers when we're building the + library itself, otherwise import the API from the headers. + This fixes linker warnings on Windows when building with MSVC. + Fix up some missing config.h includes when building the lib which + is needed to get the export api define from config.h + Fixes https://gitlab.freedesktop.org/gstreamer/gst-editing-services/issues/42 + +2018-12-10 13:28:16 +1100 Matthew Waters + + * ges/meson.build: + build: also allow building static libraries for e.g. Android/iOS + +2018-12-05 17:25:04 -0300 Thibault Saunier + + * common: + Automatic update of common submodule + From ed78bee to 59cb678 + +2018-11-30 12:41:04 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + * ges/ges.c: + * ges/ges.h: + * ges/meson.build: + * meson.build: + * meson_options.txt: + Add a way to disable xptv support + This formatter is in very bad shape and is generally not useful. + It has been deprecated since 1.0... and I bet noone uses it. + +2018-11-28 05:48:37 +0200 Jordan Petridis + + * examples/c/play_timeline_with_one_clip.c: + Run gst-indent through the files + This is required before we enabled an indent test in the CI. + https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33 + +2018-11-27 12:09:20 -0300 Thibault Saunier + + * ges/ges-track-element.c: + track: Fix documentation about "binding_type" + +2018-11-26 17:18:25 -0300 Thibault Saunier + + * meson.build: + Revert "meson: Fix the reference to libxml2 path" + It seemed to be what the wrap file expected but in the end it is + just a bug in meson which is now fixed. + This reverts commit cc5d74d0be30dab92d1540ed749eaf4dcedd9171. + +2018-11-26 15:57:30 -0300 Thibault Saunier + + * meson.build: + meson: Fix the reference to libxml2 path + +2018-11-26 14:50:29 -0300 Thibault Saunier + + * meson.build: + meson: Add a fallback for libxml2 + +2018-11-26 14:50:03 -0300 Thibault Saunier + + * ges/ges-validate.c: + validate: cleanup the playback-time from validate structures + Otherwise we might fail on them in the ges-structure-interface + +2018-11-23 11:22:03 -0300 Thibault Saunier + + * ges/ges-effect.c: + effect: Create ghost pads ourself + As we can have effects with several pads and the default ghosting + doesn't allow that. + This way we also filter the pads to ghost to match our track type. + +2018-11-23 11:20:00 -0300 Thibault Saunier + + * ges/ges-effect-asset.c: + effect: Consider the "Filter" classification to determine effect media type + +2018-11-12 12:47:02 +0200 Jordan Petridis + + * .gitlab-ci.yml: + Add Gitlab CI configuration + This commit adds a .gitlab-ci.yml file, which uses a feature + to fetch the config from a centralized repository. The intent is + to have all the gstreamer modules use the same configuration. + The configuration is currently hosted at the gst-ci repository + under the gitlab/ci_template.yml path. + Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29 + +2018-10-09 00:45:29 +0200 Alexandru Băluț + + * ges/ges-clip.c: + * ges/ges-container.c: + * tests/check/python/common.py: + * tests/check/python/test_clip.py: + * tests/check/python/test_group.py: + clip: Emit additional signals after child-removed + When removing an effect from a clip, first the notify::priority signals + were being emitted for the remaining effects which changed priority, and only + at the end the child-removed signal. Now the child-removed signal is emitted + first. + +2018-11-05 13:57:25 +0100 Víctor Manuel Jáquez Leal + + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + timeline-element: Fix compilation errors + There were some code errors introduced in commit 6b738b7a + +2018-11-04 20:47:01 +1100 Matthew Waters + + * meson.build: + * plugins/nle/meson.build: + nle: install pkg-config file for plugin + +2018-11-05 11:00:58 +0100 Corentin Noël + + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + timeline-element: Align virtual methods and invokers prototypes + +2018-11-05 05:51:47 +0000 Matthew Waters + + * .gitmodules: + * gst-editing-services.doap: + Update git location to gitlab + +2018-11-02 14:32:04 -0300 Thibault Saunier + + * ges/ges-pipeline.c: + * ges/ges-timeline.c: + * ges/ges-track.c: + ges: Check the thread from which our API is used + And add some missing API guards + +2018-11-02 09:30:28 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + ges: Mark GValue in child property setters as const + We can't change the vmethod at this point so just cast. This makes + the API more explicit so it is better in all cases. + +2018-10-31 10:38:59 -0300 Thibault Saunier + + * ges/Makefile.am: + * ges/ges.h: + * ges/meson.build: + Keep GESSmartVideoMixer out of the Gir and add geseffectasset.h to ges.h + Fixing gstreamer-sys rust bindings. + +2018-10-31 10:06:08 -0300 Thibault Saunier + + * ges/Makefile.am: + * ges/meson.build: + Fix the `package` name in the gir to match the `.pc` filename + +2018-10-28 15:55:23 +0000 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + * ges/ges-video-transition.c: + * ges/gstframepositioner.c: + video-transition: Port to the new 'operator' API in compositor + Now subclassing a ghostpad with an alpha property so that + we can multiply the alpha of the frame positioning meta + and the alpha of that pad, setting it on the compositor pad. + https://bugzilla.gnome.org/show_bug.cgi?id=797169 + +2018-10-28 15:33:31 +0000 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + * ges/ges-video-transition.c: + Revert "video-transition: Make use of the new `compositor::crossfade-ratio` property" + This reverts commit 57be9b67998bf5fef81a61c645b167c3857ed35b. + +2018-10-28 13:29:43 +0000 Thibault Saunier + + * bindings/python/gi/__init__.py: + python: Remove __init__.py + It is not needed with latest python + +2018-09-30 17:44:08 -0300 Thibault Saunier + + * ges/ges-source.c: + * plugins/nle/nlecomposition.c: + nlecomposition: Add a function that prints stacks as debug info + +2018-10-28 11:05:38 +0000 Philippe Normand + + * bindings/python/gi/overrides/__init__.py: + python: Remove debug print + +2018-10-22 08:13:07 +0100 Sebastian Dröge + + * ges/ges-base-xml-formatter.c: + * ges/ges-xml-formatter.c: + ges: Fix compilation with latest GLib + g_clear_pointer() is now preserving the type of its arguments for the + free function. + ges-xml-formatter.c: In function ‘_dispose’: + ges-xml-formatter.c:1635:7: error: function called through a non-compatible type [-Werror] + (GDestroyNotify) g_hash_table_unref); + /usr/include/glib-2.0/glib/gmem.h:121:8: note: in definition of macro ‘g_clear_pointer’ + (destroy) (_ptr); \ + ^~~~~~~ + https://bugzilla.gnome.org/show_bug.cgi?id=797310 + +2018-10-08 23:25:21 +0100 Tim-Philipp Müller + + * meson.build: + meson: use 'python' module to find python instead of deprecated 'python3' one + https://github.com/mesonbuild/meson/pull/4169 + +2018-09-05 22:55:02 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-audio-source.c: + * ges/ges-audio-test-source.c: + * ges/ges-audio-track.c: + * ges/ges-audio-transition.c: + * ges/ges-audio-uri-source.c: + * ges/ges-base-effect-clip.c: + * ges/ges-base-effect.c: + * ges/ges-base-transition-clip.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip-asset.c: + * ges/ges-clip.c: + * ges/ges-command-line-formatter.c: + * ges/ges-container.c: + * ges/ges-effect-asset.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-formatter.c: + * ges/ges-group.c: + * ges/ges-image-source.c: + * ges/ges-layer.c: + * ges/ges-multi-file-source.c: + * ges/ges-operation-clip.c: + * ges/ges-operation.c: + * ges/ges-overlay-clip.c: + * ges/ges-pipeline.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-project.c: + * ges/ges-source-clip.c: + * ges/ges-source.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-track-element-asset.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-transition-clip.c: + * ges/ges-transition.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-clip.c: + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + * ges/ges-video-track.c: + * ges/ges-video-transition.c: + * ges/ges-video-uri-source.c: + * ges/ges-xml-formatter.c: + * plugins/nle/nlecomposition.c: + * plugins/nle/nlesource.c: + * tools/ges-launcher.c: + Update for g_type_class_add_private() deprecation in recent GLib + +2018-09-05 21:49:09 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * tests/check/python/test_clip.py: + clip: Resync priorities when removing an effect + When removing a top effect in the list of top effects, other + effects priorities need to take that into account to avoid + holes in the indices. + +2018-08-03 14:02:58 -0400 Thibault Saunier + + * ges/ges.c: + ges: Check that nle is avalaible when initializing + +2018-09-01 12:17:08 +0530 Nirbheek Chauhan + + * meson.build: + * meson_options.txt: + * tests/meson.build: + meson: Add a feature option for tests + This autodetection is needed on iOS inside Cerbero where + gstreamer-check-1.0 is not available. + +2018-08-31 14:44:58 +0530 Nirbheek Chauhan + + * ges/meson.build: + * meson.build: + meson: Maintain macOS ABI through dylib versioning + Requires Meson 0.48, but the feature will be ignored on older versions + so it's safe to add it without bumping the requirement. + Documentation: + https://github.com/mesonbuild/meson/blob/master/docs/markdown/Reference-manual.md#shared_library + +2018-08-15 19:14:30 +0530 Nirbheek Chauhan + + * tests/check/meson.build: + meson: There is no gstreamer-plugins-good-1.0.pc + There is no installed version of that, only an uninstalled version. + +2018-07-29 16:20:50 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-xml-formatter.c: + formatter: Fix mixup in variable check + +2018-07-28 14:29:11 -0400 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Bump format version + Previous commit makes the format not forward compat. + +2018-07-28 12:16:36 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-container.c: + * ges/ges-internal.h: + * ges/ges-transition-clip.c: + * ges/ges-xml-formatter.c: + * tests/check/python/test_clip.py: + formatter: Serialize Transition border and invert properties + Marking them as children properties and properly allow serializing + clips children properties. + This doesn't handle several TrackElement of a same type with + different property values but this require more worked already + marked as fixme to allow specifying full path of elements in the + children properties API. + See https://gitlab.gnome.org/GNOME/pitivi/issues/1687 + +2018-07-27 22:11:33 -0400 Thibault Saunier + + * ges/ges-project.c: + project: Compute relocation URIs in missing-uri signal + Until know we were doing it outside of the signal and subclasses didn't + have a chance to know that some assets was relocated. + This is required so that Pitivi can handle proxy delation and relocated + assets. + Required for https://gitlab.gnome.org/GNOME/pitivi/issues/2203 + +2018-07-25 17:20:02 +0530 Nirbheek Chauhan + + * docs/libs/meson.build: + * meson.build: + * meson_options.txt: + meson: Convert common options to feature options + The remaining automagic options are in tests and examples. + https://bugzilla.gnome.org/show_bug.cgi?id=795107 + +2018-07-23 00:07:07 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Let testsuites define scenarios path + The code was not taking into account the fact that testsuite could be + located in a different folder that the default one. + Now the testsuite is responsible for providing a path if it wants + to set extra scenarios or the user can set one by hand. + +2018-07-14 09:00:51 -0400 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitivi-formatter: Do not g_file_test on a NULL pointer + +2018-07-18 12:38:04 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Rename outside_segment to seek_segment + This segment is representing the last seek received + inside the composition. Or a simply initialized segment + if need seek occurred. + +2018-07-18 12:52:59 -0400 Thibault Saunier + + * tests/check/nle/tempochange.c: + tests: Minor assertion enahncements + +2018-07-19 10:55:31 -0400 Thibault Saunier + + * ges/ges-project.c: + project: Do not emit 'error-loading-asset' when we are trying to update the ID + +2018-07-19 22:06:54 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Handle scenario only based tests + Meaning tests that do not need project at all + +2018-07-12 13:53:44 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Set restriction caps when update_restriction before caps being set + And stop leaking intermediary restriction caps. + https://bugzilla.gnome.org/show_bug.cgi?id=796802 + +2018-07-08 16:09:46 -0400 Thibault Saunier + + * bindings/python/gi/overrides/GES.py: + python:overrides: Remove spurious print + +2018-07-08 10:36:36 -0400 Thibault Saunier + + * bindings/python/gi/overrides/GES.py: + * bindings/python/meson.build: + * meson.build: + * meson_options.txt: + * tests/check/python/overrides_hack.py: + * tests/check/python/test_clip.py: + * tests/check/python/test_group.py: + * tests/check/python/test_timeline.py: + python: Fix GES.Timelineset_child_property + Implementing it in the overrides as PyGObject won't be able to properly + convert python values to GValues in some cases. Using + g_object_set_property works as some logic is implemented inside + PyGObject for that particular case. This is a "regression" due + to https://bugzilla.gnome.org/review?bug=769789&attachment=348766 were + we end up with an OverflowError while setting G_TYPE_UINT children + properties. + +2018-04-01 16:22:16 +0200 Bastian Köcher + + * ges/meson.build: + meson: fix install dir for configure files + Nixos configures a custom includedir. + https://bugzilla.gnome.org/show_bug.cgi?id=794856 + +2018-07-01 16:22:24 -0400 Thibault Saunier + + * ges/Makefile.am: + * meson.build: + Set GLib log domain to GES + +2018-07-01 12:21:54 -0400 Thibault Saunier + + * ges/ges-group.c: + group: Handle clips that get readded to a layer and inside a group + +2018-06-26 16:21:22 +0200 Mathieu Duponchelle + + * ges/ges-asset.c: + asset: documentation fix + +2018-06-15 16:49:55 -0400 Thibault Saunier + + * configure.ac: + * tests/check/Makefile.am: + * tests/check/meson.build: + tests: Use gst-validate-launcher to run python tests + +2018-06-14 17:07:10 -0400 Thibault Saunier + + * meson.build: + * meson_options.txt: + meson: Rename the gtkdoc option to gtk_doc + This is what other modules use + +2018-05-20 23:48:39 +0100 Tim-Philipp Müller + + * examples/c/Makefile.am: + examples: override -Werror + Don't want to error out on deprecated API warnings and such. + Just drop -Werror for the examples until someone updates them + to recent gtk3 API. Maybe showing the warnings will motivate + someone. + https://bugzilla.gnome.org/show_bug.cgi?id=796243 + +2018-05-20 23:47:14 +0100 Tim-Philipp Müller + + * configure.ac: + examples: always build against gtk3 + Drop gtk2 option. + https://bugzilla.gnome.org/show_bug.cgi?id=796243 + +2018-05-20 23:46:42 +0100 Tim-Philipp Müller + + * examples/c/ges-ui.c: + examples: ges-ui: fix some gtk2-ism + Still lots of deprecated API to update. + https://bugzilla.gnome.org/show_bug.cgi?id=796243 + +2018-05-13 21:12:35 -0400 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/python/test_timeline.py: + clip: Make sure to never snap when splitting clips + It makes no sense to snap in that context. + https://gitlab.gnome.org/GNOME/pitivi/issues/2193 + +2018-05-13 16:37:08 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Run IQA tests when possible + Meaning that a reference file has to be present on disk with a + `.expected_result` extension. + +2018-04-20 17:56:15 -0300 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Stop forcing I420 in profiles restriction caps + This was a workaround for encoders bad behavior in the reconfigure case. + https://bugzilla.gnome.org/show_bug.cgi?id=795420 + +2018-05-05 19:34:14 +0530 Nirbheek Chauhan + + * meson.build: + * meson_options.txt: + meson: Update option names to omit disable_ and with- prefixes + Also yield common options to the outer project (gst-build in our case) + so that they don't have to be set manually. + +2018-04-25 11:01:01 +0100 Tim-Philipp Müller + + * meson.build: + meson: use -Wl,-Bsymbolic-functions where supported + Just like the autotools build. + +2018-04-20 18:45:19 -0300 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Properly error out when linking fails + In the rendering case we were getting random issues and often the + pipeline was not be able to preroll as some pad were not linked inside + encodebin. + https://bugzilla.gnome.org/show_bug.cgi?id=795422 + +2018-04-20 17:54:12 -0300 Thibault Saunier + + * ges/ges-track-element.c: + track-element: Fix the way we look for properties on simple elements + Refactor so that the same code is used to add children properties from + bin children and when inspecting a single element. + +2018-04-20 17:36:55 -0300 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Update caps only when rendering as comment suggests + We used to update caps for any more because of missing brackets. + +2018-04-20 17:35:06 -0300 Thibault Saunier + + * ges/ges-effect.c: + effect: Allow setting properties on any element specified by the user + Those are the elements he cares about and we should expose their APIs + as is, event if they are not classified as effects. For example if + the user want to use a capsfilter as effect, he should be able to set + its caps. + +2018-04-20 17:34:17 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + xml-formatter: Print error if an effect can't be set when deserializing + +2018-04-16 10:53:57 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 3fa2c9e to ed78bee + +2018-03-31 13:39:54 -0300 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-timeline.c: + * tests/check/ges/layer.c: + Deprecate ges_layer_set_priority + Keep old behaviour but deprecate the method and property as + ges_timeline_move_layer should be used instead. + +2015-12-12 11:29:50 +0000 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: Add a method to move layers around + summary_: + This way the timeline can handle all priorities for the user + making the API simpler to use. + API: + + ges_timeline_move_layer + reviewers_: Mathieu_Du + Differential Revision: https://phabricator.freedesktop.org/D232 + +2018-03-31 11:24:23 -0300 Thibault Saunier + + * ges/ges-timeline-element.h: + timeline-element: Fix ABI breakage + New fields in structure should be added in place of the padding + +2018-03-31 10:38:19 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + docs: Move timeline related doc to the timeline section + It wrongly was in the layers + +2018-03-30 18:17:13 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-structure-parser.c: + * ges/ges-structured-interface.c: + * ges/parse.l: + ges-launcher: Add support for titles + +2018-03-30 17:41:49 -0300 Thibault Saunier + + * ges/ges-command-line-formatter.c: + command-line-formatter: Refactor to generate the documentation automatically + https://bugzilla.gnome.org/show_bug.cgi?id=794837 + +2018-03-26 12:13:25 -0300 Thibault Saunier + + * ges/ges-effect.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + ges: Update the media-duration-factor each time a child property is set + Otherwise the changes won't be reflected in the NLE backend. + This makes speed changes working inside ges-launch-1.0 + ges-launch-1.0 +clip /path/to/file i=10 d=5 +effect videorate set-rate 5.0 + https://bugzilla.gnome.org/show_bug.cgi?id=794699 + +2018-03-26 18:56:03 +0530 Suhas Nayak + + * ges/ges-effect.c: + ges: Register videorate::rate as a rate changing property + https://bugzilla.gnome.org/show_bug.cgi?id=794699 + +2018-03-20 10:24:35 +0000 Tim-Philipp Müller + + * NEWS: + * RELEASE: + * configure.ac: + * meson.build: + Back to development + +=== release 1.14.0 === + +2018-03-19 20:28:10 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.14.0 + +2018-03-19 08:57:47 -0300 Thibault Saunier + + * ges/ges-video-source.c: + doc: Remove documentation about GESVideoSource::zorder as it doesn't exist + The zorder is controled through the GESLayer priority API, not directly + on the sources. + +2018-03-18 11:03:00 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * tests/check/python/common.py: + * tests/check/python/test_timeline.py: + clip: Make sure to create transition after a clip is splitted + In the (now tested) scenario where we have a transition on the right + side of a clip we are splitting, auto transitions can't be created + because we resize the clip after adding the new one, meaning that + there are 3 elements in the "transition zone", we need to force + auto transition creation after the splitting. + Fixes https://gitlab.gnome.org/GNOME/pitivi/issues/2142 + +2018-03-14 20:59:04 -0300 Thibault Saunier + + * ges/ges-group.c: + group: Handle clips being removed from their layers + +=== release 1.13.91 === + +2018-03-13 19:29:44 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.13.91 + +2018-03-13 14:14:57 +0000 Tim-Philipp Müller + + * ges/ges-asset.h: + * ges/ges-audio-source.h: + * ges/ges-audio-test-source.h: + * ges/ges-audio-track.h: + * ges/ges-audio-transition.h: + * ges/ges-audio-uri-source.h: + * ges/ges-base-effect-clip.h: + * ges/ges-base-effect.h: + * ges/ges-base-transition-clip.h: + * ges/ges-base-xml-formatter.h: + * ges/ges-clip-asset.h: + * ges/ges-clip.h: + * ges/ges-command-line-formatter.h: + * ges/ges-container.h: + * ges/ges-effect-asset.h: + * ges/ges-effect-clip.h: + * ges/ges-effect.h: + * ges/ges-enums.h: + * ges/ges-extractable.h: + * ges/ges-formatter.h: + * ges/ges-group.h: + * ges/ges-image-source.h: + * ges/ges-internal.h: + * ges/ges-layer.h: + * ges/ges-meta-container.h: + * ges/ges-multi-file-source.h: + * ges/ges-operation-clip.h: + * ges/ges-operation.h: + * ges/ges-overlay-clip.h: + * ges/ges-pipeline.h: + * ges/ges-pitivi-formatter.h: + * ges/ges-prelude.h: + * ges/ges-project.h: + * ges/ges-screenshot.h: + * ges/ges-smart-adder.h: + * ges/ges-source-clip.h: + * ges/ges-source.h: + * ges/ges-test-clip.h: + * ges/ges-text-overlay-clip.h: + * ges/ges-text-overlay.h: + * ges/ges-timeline-element.h: + * ges/ges-timeline.h: + * ges/ges-title-clip.h: + * ges/ges-title-source.h: + * ges/ges-track-element-asset.h: + * ges/ges-track-element.h: + * ges/ges-track.h: + * ges/ges-transition-clip.h: + * ges/ges-transition.h: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.h: + * ges/ges-utils.h: + * ges/ges-video-source.h: + * ges/ges-video-test-source.h: + * ges/ges-video-track.h: + * ges/ges-video-transition.h: + * ges/ges-video-uri-source.h: + * ges/ges-xml-formatter.h: + * ges/ges.h: + GST_GES_API -> GES_API + +2018-03-13 13:45:24 +0000 Tim-Philipp Müller + + * docs/libs/meson.build: + * ges/Makefile.am: + * ges/ges-asset.h: + * ges/ges-audio-source.h: + * ges/ges-audio-test-source.h: + * ges/ges-audio-track.h: + * ges/ges-audio-transition.h: + * ges/ges-audio-uri-source.h: + * ges/ges-base-effect-clip.h: + * ges/ges-base-effect.h: + * ges/ges-base-transition-clip.h: + * ges/ges-base-xml-formatter.h: + * ges/ges-clip-asset.h: + * ges/ges-clip.h: + * ges/ges-command-line-formatter.h: + * ges/ges-container.h: + * ges/ges-effect-asset.h: + * ges/ges-effect-clip.h: + * ges/ges-effect.h: + * ges/ges-enums.h: + * ges/ges-extractable.h: + * ges/ges-formatter.h: + * ges/ges-group.h: + * ges/ges-image-source.h: + * ges/ges-internal.h: + * ges/ges-layer.h: + * ges/ges-meta-container.h: + * ges/ges-multi-file-source.h: + * ges/ges-operation-clip.h: + * ges/ges-operation.h: + * ges/ges-overlay-clip.h: + * ges/ges-pipeline.h: + * ges/ges-pitivi-formatter.h: + * ges/ges-prelude.h: + * ges/ges-project.h: + * ges/ges-screenshot.h: + * ges/ges-smart-adder.h: + * ges/ges-source-clip.h: + * ges/ges-source.h: + * ges/ges-test-clip.h: + * ges/ges-text-overlay-clip.h: + * ges/ges-text-overlay.h: + * ges/ges-timeline-element.h: + * ges/ges-timeline.h: + * ges/ges-title-clip.h: + * ges/ges-title-source.h: + * ges/ges-track-element-asset.h: + * ges/ges-track-element.h: + * ges/ges-track.h: + * ges/ges-transition-clip.h: + * ges/ges-transition.h: + * ges/ges-types.h: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.h: + * ges/ges-utils.h: + * ges/ges-video-source.h: + * ges/ges-video-test-source.h: + * ges/ges-video-track.h: + * ges/ges-video-transition.h: + * ges/ges-video-uri-source.h: + * ges/ges-xml-formatter.h: + * ges/ges.h: + * ges/meson.build: + ges: GST_EXPORT -> GST_GES_API + We need different export decorators for the different libs. + For now no actual change though, just rename before the release, + and add prelude headers to define the new decorator to GST_EXPORT. + +2018-03-11 11:13:05 -0300 Thibault Saunier + + * ges/ges-clip.c: + clip: Snapping should happen with one and only one TrackElement + This was leading to clip with TrackElements that were not at the + same position in their container, and weird bugs, see: + https://gitlab.gnome.org/GNOME/pitivi/issues/2133 + +=== release 1.13.90 === + +2018-03-03 23:09:36 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.13.90 + +2018-02-26 04:01:33 +0530 Harish Fulara + + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + Added paste functionality to GESTimeline class + https://bugzilla.gnome.org/show_bug.cgi?id=793820 + +2018-03-01 18:56:05 +0100 Mathieu Duponchelle + + * meson.build: + meson: enable more warnings + +2018-02-27 10:00:32 -0300 Thibault Saunier + + * tests/check/ges/layer.c: + test: Plug minor leaks + +2018-02-27 15:26:29 +0530 Harish Fulara + + * ges/ges-layer.c: + ges: Fix ges_layer_get_clips_in_interval(start, end) refcount handling + The documentation states that it returns a (transfer full) list + of GESClip but it was returning a (transfer container) list. Make + sure to actually make it (transfer full). + https://bugzilla.gnome.org/show_bug.cgi?id=793874 + +2018-01-29 17:46:06 -0300 Thibault Saunier + + * ges/meson.build: + meson: Explicitely include GObject-2.0 in the gir + +2018-02-21 19:42:19 +0000 Tim-Philipp Müller + + * meson.build: + meson: simplify GST_DISABLE_GST_DEBUG check some more + +2018-02-21 19:20:56 +0000 Tim-Philipp Müller + + * meson.build: + meson: don't use add_global_arguments() + .. and tighten check for disabled gst debugging sytem. + add_global_arguments() can't be used in subprojects. It's + entirely possible that ges is a subproject but gstreamer + is picked up from an installed location, so we should + really use add_project_arguments() in both cases. + +2018-02-15 19:44:30 +0000 Tim-Philipp Müller + + * configure.ac: + * meson.build: + Back to development + +=== release 1.13.1 === + +2018-02-15 17:20:22 +0000 Tim-Philipp Müller + + * NEWS: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.13.1 + +2018-02-08 19:16:26 +0000 Tim-Philipp Müller + + * meson.build: + meson: make version numbers ints and fix int/string comparison + WARNING: Trying to compare values of different types (str, int). + The result of this is undefined and will become a hard error + in a future Meson release. + +2018-02-04 12:26:48 +0100 Tim-Philipp Müller + + * configure.ac: + autotools: use -fno-strict-aliasing where supported + https://bugzilla.gnome.org/show_bug.cgi?id=769183 + +2018-01-30 20:35:33 +0000 Tim-Philipp Müller + + * meson.build: + meson: use -fno-strict-aliasing where supported + https://bugzilla.gnome.org/show_bug.cgi?id=769183 + +2018-01-11 10:57:30 +0100 Edward Hervey + + * ges/ges-asset.c: + * ges/ges-timeline-element.c: + ges: Fix sizeof() usage + The entries of the array are "gchar *" and not "gchar **" + CID #1427091 + CID #1427120 + +2017-12-20 14:28:33 +0100 Edward Hervey + + * tests/check/ges/asset.c: + check: Fix minor leak in test + +2017-12-19 23:28:53 +0100 Mathieu Duponchelle + + * ges/ges-smart-adder.c: + * ges/ges-smart-adder.h: + ges-smart-adder: use capsfilter instead of GstAudioMixer:caps + The property has been removed, and using a capsfilter instead + is the appropriate solution. + +2017-12-14 14:53:41 +1100 Matthew Waters + + * common: + Automatic update of common submodule + From e8c7a71 to 3fa2c9e + +2017-11-27 11:49:04 +0100 Edward Hervey + + * ges/ges-asset.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-effect-asset.c: + * ges/ges-effect.c: + * ges/ges-timeline-element.c: + * ges/ges-uri-asset.c: + * ges/ges-xml-formatter.c: + ges: Fix a bunch of leaks + There are definitely more left, but don't have time for more debugging + +2017-11-27 20:18:55 +1100 Matthew Waters + + * common: + Automatic update of common submodule + From 3f4aa96 to e8c7a71 + +2017-11-26 13:31:02 +0000 Tim-Philipp Müller + + * configure.ac: + configure: remove c++ compiler bits that are unused + +2017-11-26 13:29:33 +0000 Tim-Philipp Müller + + * Makefile.am: + * ges/meson.build: + * meson.build: + * win32/MANIFEST: + * win32/common/libges.def: + win32: remove .def file with exports + They're no longer needed, symbol exporting is now explicit + via GST_EXPORT in all cases (autotools, meson, incl. MSVC). + +2017-11-26 13:25:06 +0000 Tim-Philipp Müller + + * configure.ac: + autotools: stop controlling symbol visibility with -export-symbols-regex + Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT. + This should result in consistent behaviour for the autotools and + Meson builds. + +2017-11-26 13:26:13 +0000 Tim-Philipp Müller + + * .gitignore: + .gitignore: ignore test registry + +2017-11-25 15:56:36 -0300 Thibault Saunier + + * ges/ges-uri-clip.c: + uri-clip: Copy previous track elements bindings when setting a new asset + Fixes https://phabricator.freedesktop.org/T7862 + +2017-11-23 15:49:48 +0100 Edward Hervey + + * tests/check/Makefile.am: + check: Actually define a registry to use for tests + Otherwise every single run of every single test would recreate + a registry + +2017-11-07 12:04:03 +0530 Ashish Kumar + + * ges/ges-asset.c: + * ges/ges-layer.c: + GESAsset, GESLayer: add some function guards + https://bugzilla.gnome.org/show_bug.cgi?id=789521 + +2017-11-07 11:26:58 -0300 Thibault Saunier + + * ges/ges-auto-transition.c: + auto-transition: Fix debug printf format + +2017-11-07 10:15:58 -0300 Thibault Saunier + + * ges/ges-auto-transition.c: + * ges/ges-timeline.c: + timeline: Do not snap object within the moving context + Reviewed-by: Alex Băluț <> + Differential Revision: https://phabricator.freedesktop.org/D1873 + +2017-10-31 12:05:08 -0300 Thibault Saunier + + * ges/gstframepositioner.c: + * ges/gstframepositioner.h: + ges: Sync 'par' to track restriction caps in the frame positionner + Allowing GES users to have control over how compositing is done + +2017-09-20 12:59:40 +0300 Sebastian Dröge + + * ges/ges-source.c: + ges-source: Fix caps memory leak and compiler warnings when compiling without debug logging + +2017-09-07 12:08:40 -0400 Nicolas Dufresne + + * plugins/nle/nlecomposition.c: + nlecomposition: Always execute seeks + We have an optiominisation to avoid double seeks when a seek is passed + the end of the current stack. The problem, is that we no longer flush + the pipeline when this code is reached. This patch comments out this + optimization adding a FIXME. As mention, flushing the stack instead of + seeking would work, but does not seem trivial considering all the + mechanic inplace to forward or not the events. + https://bugzilla.gnome.org/show_bug.cgi?id=787405 + +2017-09-07 12:08:40 -0400 Nicolas Dufresne + + * plugins/nle/nlecomposition.c: + nlecomposition: Also start task on allocation query + The allocation query may block on the sink when in pause. As a side effect, we + may never get a buffer now that tee does forward the allocation query. + This would often lead in a pipeline stall. + https://bugzilla.gnome.org/show_bug.cgi?id=787405 + +2017-09-07 12:08:40 -0400 Nicolas Dufresne + + * tests/validate/scenarios/Makefile.am: + make: Fix validate scenario install directory + +2017-09-07 12:07:03 -0400 Nicolas Dufresne + + * tests/meson.build: + * tests/validate/meson.build: + * tests/validate/scenarios/meson.build: + meson: Install validate helpers and scenarios + This fixes the usage of gst-validate-launcher ges with an installed + version of GES. + +2017-08-17 07:28:46 +0000 Stefan Popa + + * ges/ges-track-element.c: + track_element: Always emit "control-binding-removed" signal. + When setting a new control binding on a track element, the old control + binding (if any) is going to be removed. Make sure the + "control-binding-removed" signal is emitted in this case. + Fixes https://phabricator.freedesktop.org/T7340#95666 + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1842 + +2017-08-29 22:23:57 -0300 Thibault Saunier + + * ges/ges-timeline.c: + * tests/check/ges/backgroundsource.c: + Revert "timeline: Return FALSE when commiting an empty timeline" + This commit means that we do not get ASYNC_DONE anymore when commiting + an empty timeline, which means that we need to special case that. + This actually broke some code and does not bring in much. + Fixes https://phabricator.freedesktop.org/T7802 + Fixes https://phabricator.freedesktop.org/T7797 + This reverts commit e570d1e08009992a0dd6a24bb4cda4427b2b460f. + Thanks @stefanzzz for investigating! + +2017-08-22 14:23:45 +0000 Stefan Popa + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + xml-formatter: Save encoder and muxer advanced settings + Added support for saving/loading encoder and muxer advanced settings. + Differential Revision: https://phabricator.freedesktop.org/D1837 + +2017-08-19 11:42:57 -0300 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Allow up to 2 seconds queueing in the playsink video queue + In playsink the default video queue max size is 3 buffers, which is + sometimes not enough for our use case. + Allow up to 2 seconds of buffered data, giving us more time to do + the transition between clips, and thus avoiding dropping frames in + the sink when bringing up new clip takes too much time. + Differential Revision: https://phabricator.freedesktop.org/D1854 + +2017-08-18 23:39:38 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Add from first element with wanted start to the move context + We need to iterate over the previous element from trackelement_iter + to find the first element that is at the moving point. Several + elements can have the same start as the one initiating the move, + and we need to take all of them into account. + Fixes https://phabricator.freedesktop.org/T7819 + +2017-08-18 23:18:10 -0300 Thibault Saunier + + * ges/ges-validate.c: + validate: Add an action type to ungroup containers + +2017-08-17 12:26:24 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 48a5d85 to 3f4aa96 + +2017-08-12 10:04:03 +0100 Tim-Philipp Müller + + * ges/ges-smart-video-mixer.h: + * win32/common/libges.def: + Hide ges_smart_mixer_* API + The header file isn't installed anyway. + +2017-08-12 10:01:51 +0100 Tim-Philipp Müller + + * configure.ac: + configure: bump gst-validate requirement to 1.12.1 + For gst_validate_scenario_get_pipeline(). + +2017-08-11 22:27:48 +0100 Tim-Philipp Müller + + * meson.build: + meson: hide symbols by default unless explicitly exported + +2017-08-11 21:41:52 +0100 Tim-Philipp Müller + + * ges/ges-internal.h: + * tests/check/ges/asset.c: + tests: don't use private debug category in asset test + That will lead to undefined symbol errors once it no + longer gets exported. + +2017-08-11 21:40:14 +0100 Tim-Philipp Müller + + * ges/ges-smart-adder.h: + * ges/ges-smart-video-mixer.h: + * ges/ges-timeline-element.h: + * ges/ges-video-track.h: + ges: sprinkle more GST_EXPORT + +2017-08-10 15:05:09 -0400 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + * plugins/nle/nlecomposition.c: + smartmixer: Give a unique name to each compositor instances + +2017-08-10 21:38:04 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Check subprocess return code in rendering tests + +2017-08-10 15:18:22 +0100 Tim-Philipp Müller + + * tests/validate/geslaunch.py: + validate: fix error message + +2017-08-10 13:46:03 +0100 Tim-Philipp Müller + + * docs/libs/meson.build: + * docs/meson.build: + meson: fix a few warnings + +2017-08-07 15:35:58 -0400 Thibault Saunier + + * ges/ges-asset.h: + * ges/ges-audio-source.h: + * ges/ges-audio-test-source.h: + * ges/ges-audio-track.h: + * ges/ges-audio-transition.h: + * ges/ges-audio-uri-source.h: + * ges/ges-base-effect-clip.h: + * ges/ges-base-effect.h: + * ges/ges-base-transition-clip.h: + * ges/ges-base-xml-formatter.h: + * ges/ges-clip-asset.h: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-command-line-formatter.h: + * ges/ges-container.h: + * ges/ges-effect-asset.h: + * ges/ges-effect-clip.h: + * ges/ges-effect.h: + * ges/ges-enums.h: + * ges/ges-extractable.h: + * ges/ges-formatter.h: + * ges/ges-group.h: + * ges/ges-image-source.h: + * ges/ges-internal.h: + * ges/ges-layer.h: + * ges/ges-meta-container.h: + * ges/ges-multi-file-source.h: + * ges/ges-operation-clip.h: + * ges/ges-operation.h: + * ges/ges-overlay-clip.h: + * ges/ges-pipeline.h: + * ges/ges-pitivi-formatter.h: + * ges/ges-project.h: + * ges/ges-screenshot.h: + * ges/ges-smart-video-mixer.h: + * ges/ges-source-clip.h: + * ges/ges-source.h: + * ges/ges-test-clip.h: + * ges/ges-text-overlay-clip.h: + * ges/ges-text-overlay.h: + * ges/ges-timeline-element.h: + * ges/ges-timeline.h: + * ges/ges-title-clip.h: + * ges/ges-title-source.h: + * ges/ges-track-element-asset.h: + * ges/ges-track-element.h: + * ges/ges-track.h: + * ges/ges-transition-clip.h: + * ges/ges-transition.h: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.c: + * ges/ges-uri-clip.h: + * ges/ges-utils.h: + * ges/ges-video-source.h: + * ges/ges-video-test-source.h: + * ges/ges-video-track.h: + * ges/ges-video-transition.h: + * ges/ges-video-uri-source.h: + * ges/ges-xml-formatter.h: + * ges/ges.h: + * win32/common/libges.def: + Mark symbols explicitly for export with GST_EXPORT + With two exceptions: + * ges_clip_create_track_elements_func + * ges_uri_clip_set_uri + which were never declared in headers and should always have been static. + +2017-08-03 17:03:31 -0400 Thibault Saunier + + * ges/ges-video-transition.c: + transition: Fix usage of transition types != crossfade + We need to make sure the crossfade ratio is disabled in that case. + +2017-07-10 11:43:11 -0400 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + * ges/ges-video-transition.c: + video-transition: Make use of the new `compositor::crossfade-ratio` property + To achieve a real transition about to handle several level of layers. + https://bugzilla.gnome.org/show_bug.cgi?id=784827 + +2017-07-31 14:52:20 -0400 Thibault Saunier + + * win32/common/libges.def: + win32: Update .def file + +2017-07-31 12:54:25 -0400 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-asset.h: + asset: Add a function to stop proxying an asset + And remove any reference as it beeing a proxy. + +2017-07-31 12:55:53 -0400 Thibault Saunier + + * ges/ges-asset.c: + asset: Clear loading error when reload is requested + +2017-07-27 21:15:34 -0400 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Rename segment_start to current_stack_start + It is still not exactly precise, but gives a much better understanding + of what it is. + +2016-01-12 17:05:48 +0000 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Properly update segment->start/stop on commit + Otherwise they will just be the ones from the previous seek event/ + stack setup and be meaningless. + Also document the priv->segment meaning. + Fixes https://phabricator.freedesktop.org/T7796 + +2017-07-27 15:57:31 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Remove trackelements initating move from the moving context + They are handled specially when moving the context and having them + part of the context can lead to weird behaviours. + Fixes https://phabricator.freedesktop.org/T7693 + +2017-07-21 16:41:26 -0400 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Serialize encoding profiles in reverse order + So they are reloaded in the right order. + +2017-07-24 10:32:47 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Make sure tracks are unlinked on NULL->NULL state changes + +2017-07-24 10:34:48 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + * ges/ges-source.c: + Enhance some pad linking issue debug logging. + +2017-07-13 16:38:04 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Fix test names now that the launcher handles adding manager name + +2017-07-11 11:40:55 -0400 Thibault Saunier + + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/tempochange.c: + * tests/check/ges/titles.c: + * tests/check/ges/track.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + tests: Initialize GES only once in the main process + Fixing calling deinit in a process where init was not called + when libcheck is forking. + +2017-07-10 21:42:21 -0400 Nicolas Dufresne + + * ges/ges.c: + ges: Ref the GES class to avoid later deadlock + This ensure that that all class are initialized from the main thread, + avoid class initialization in random thread, which may cause deadlocks. + https://bugzilla.gnome.org/show_bug.cgi?id=784769 + +2017-07-07 12:27:16 +0100 Tim-Philipp Müller + + * meson.build: + meson: find python3 via python3 module + https://bugzilla.gnome.org/show_bug.cgi?id=783198 + +2017-07-03 18:33:39 +0300 Stefan Popa + + * ges/ges-timeline-element.c: + "deep-notify" signal gets emitted only from the main thread + https://bugzilla.gnome.org/show_bug.cgi?id=784414 + +2017-06-30 16:18:17 -0400 Thibault Saunier + + * ges/ges-video-transition.c: + video-transition: Make sure crossfade output never contains alpha + Otherwise it would get mixed with lower layers, which is totally + unexpected. + Fixes T7773 + Differential Revision: https://phabricator.freedesktop.org/D1764 + +2017-06-23 16:18:36 -0400 Thibault Saunier + + * meson.build: + meson: Allow using glib as a subproject + +2017-06-23 16:04:01 -0400 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-timeline-element.c: + ges: Handle g_object_newv deprecation in latest GLib + +2017-06-09 20:15:26 -0400 Nicolas Dufresne + + * Makefile.am: + Don't dist config.meson.h as it no longer exist + +2017-06-09 21:37:48 +0100 Tim-Philipp Müller + + * config.h.meson: + * meson.build: + meson: remove config.h.meson + +2017-06-07 12:08:00 -0400 Thibault Saunier + + * tests/check/meson.build: + meson: Do not use path separator in test names + Avoiding warnings like: + WARNING: Target "elements/audioamplify" has a path separator in its name. + +2017-04-28 16:41:42 -0300 Thibault Saunier + + * ges/ges-validate.c: + validate: Port to new GstValidate API for pipeline retrieval + +2017-05-15 09:13:38 +0200 Sebastian Dröge + + * ges/ges-layer.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-track.c: + ges: Correctly handling floating references + If we ref_sink() a parameter, it must be marked as (transfer floating) + and it also has to be handled consistently between error and normal cases. + See https://bugzilla.gnome.org/show_bug.cgi?id=782499 + https://bugzilla.gnome.org/show_bug.cgi?id=782652 + +2017-05-16 14:37:03 -0400 Nicolas Dufresne + + * configure.ac: + * plugins/nle/Makefile.am: + Remove plugin specific static build option + Static and dynamic plugins now have the same interface. The standard + --enable-static/--enable-shared toggle are sufficient. + +2017-05-04 18:59:14 +0300 Sebastian Dröge + + * configure.ac: + * meson.build: + Back to development + +=== release 1.12.0 === + +2017-05-04 15:43:12 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.12.0 + +=== release 1.11.91 === + +2017-04-27 17:47:16 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.11.91 + +2017-04-24 20:30:46 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 60aeef6 to 48a5d85 + +2017-04-10 23:51:18 +0100 Tim-Philipp Müller + + * autogen.sh: + * common: + Automatic update of common submodule + From 39ac2f5 to 60aeef6 + +=== release 1.11.90 === + +2017-04-07 16:35:23 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + * meson.build: + Release 1.11.90 + +2017-04-04 16:27:33 -0400 Nicolas Dufresne + + * data/completions/ges-launch-1.0: + completion: Fix previous commit + +2017-04-04 16:20:17 -0400 Nicolas Dufresne + + * data/completions/ges-launch-1.0: + completion: Fix listing commands + Executing a single string does not work in this context. Fixed using + a bash function instead. + +2017-04-04 15:48:05 -0400 Nicolas Dufresne + + * data/completions/ges-launch-1.0: + completion: Remove incorrect fixmes + In fact the fixmes are incorrect since these are options that are + available when built against gst-validate, which I didn't. There is + reference to these options in the HELP_SUMMARY that refers to these + options stating "if ges-launch is built with gst-validate ..." and these + get picked by the regex that list the options. + +2017-04-04 14:55:18 -0400 Nicolas Dufresne + + * data/completions/ges-launch-1.0: + completion: Update to new gstreamer core helpers + Also fix regressions, and mark lost features and problems with fixmes. + +2017-04-02 23:03:18 +0200 Corentin Noël + + * ges/ges-layer.c: + * ges/ges-pipeline.c: + * ges/ges-timeline.c: + Tiny fixes in the documentation + https://bugzilla.gnome.org/show_bug.cgi?id=780854 + +2017-03-30 19:57:06 -0400 Nicolas Dufresne + + * win32/common/libges.def: + Add missing win32 definition + This should fix dist check. ges_layer_get_clips_in_interval() was + added recently but missing from the list. + +2017-03-28 14:25:06 -0300 Thibault Saunier + + * tests/check/meson.build: + meson: Use get_pkgconfig_variable instead of calling pkg-config ourself + It is avalaible in meson 0.36 which is now are requirement + Nothing happens on not found dependencies. + +2017-03-25 10:47:16 -0300 Thibault Saunier + + * tests/check/meson.build: + meson: test: Fix environment object usage + And make sure to bring -good plugins in. + +2017-03-17 19:02:56 +0000 suhas2go + + * ges/ges-layer.c: + * ges/ges-layer.h: + * tests/check/ges/layer.c: + layer: Add ability to get clips in a given interval + Reviewed-by: Alex Băluț <> + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1689 + +2017-03-13 09:30:39 -0300 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-title-source.c: + * ges/ges-transition.c: + * ges/ges-video-source.c: + docs: Fix generation using markdown for titles around tables + +2017-03-10 19:46:33 -0300 Thibault Saunier + + * docs/hotdoc/images/layer_track_overview.png: + * docs/hotdoc/index.md: + * docs/hotdoc/meson.build: + * docs/hotdoc/sitemap.txt: + * docs/meson.build: + Revert "doc: Build documentation with hotdoc" + This reverts commit 8857e004f78ea009e1c87a93da5cf3e25dbde07f. + This was not meant to be pushed yet. + +2017-03-10 19:46:24 -0300 Thibault Saunier + + * docs/hotdoc/index.md: + * docs/hotdoc/meson.build: + * ges/meson.build: + * meson.build: + Revert "Fhotdoc" + This reverts commit 220618ecc7c061a2146e00e0063123b8dbaeb734. + This was not meant to be pushed. + +2017-03-10 19:46:09 -0300 Thibault Saunier + + * docs/hotdoc/base-classes.md: + * docs/hotdoc/low_level.md: + * docs/hotdoc/meson.build: + * docs/hotdoc/sitemap.txt: + Revert "HOTDOC" + This reverts commit 5e251483ee6777b6a74a7988b5969bf95f6ecab6. + This was not meant to be pushed. + +2017-03-10 19:34:21 -0300 Thibault Saunier + + * ges/ges-timeline.c: + ges: Minor GESTimeline documentation fix + +2017-03-09 17:49:44 -0300 Thibault Saunier + + * docs/hotdoc/base-classes.md: + * docs/hotdoc/low_level.md: + * docs/hotdoc/meson.build: + * docs/hotdoc/sitemap.txt: + HOTDOC gi + +2017-03-09 13:11:37 -0300 Thibault Saunier + + * ges/ges-asset.h: + * ges/ges-extractable.h: + extractable: Typedef only in its own .h + +2017-03-08 18:26:42 -0300 Thibault Saunier + + * docs/hotdoc/index.md: + * docs/hotdoc/meson.build: + * ges/meson.build: + * meson.build: + Fhotdoc + +2017-03-08 18:13:48 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-audio-source.c: + * ges/ges-audio-test-source.c: + * ges/ges-audio-track.c: + * ges/ges-audio-transition.c: + * ges/ges-audio-uri-source.c: + * ges/ges-base-effect-clip.c: + * ges/ges-base-effect.c: + * ges/ges-base-transition-clip.c: + * ges/ges-clip-asset.c: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-enums.c: + * ges/ges-extractable.c: + * ges/ges-formatter.c: + * ges/ges-gerror.h: + * ges/ges-group.c: + * ges/ges-image-source.c: + * ges/ges-layer.c: + * ges/ges-layer.h: + * ges/ges-multi-file-source.c: + * ges/ges-operation-clip.c: + * ges/ges-operation.c: + * ges/ges-overlay-clip.c: + * ges/ges-pipeline.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-project.c: + * ges/ges-source-clip.c: + * ges/ges-source.c: + * ges/ges-test-clip.c: + * ges/ges-test-clip.h: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay-clip.h: + * ges/ges-text-overlay.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + * ges/ges-track-element-asset.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-transition-clip.c: + * ges/ges-transition.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-clip.c: + * ges/ges-utils.c: + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + * ges/ges-video-track.c: + * ges/ges-video-transition.c: + * ges/ges-video-uri-source.c: + docs: Port all docstring to gtk-doc markdown + +2017-03-08 18:02:47 -0300 Thibault Saunier + + * docs/hotdoc/images/layer_track_overview.png: + * docs/hotdoc/index.md: + * docs/hotdoc/meson.build: + * docs/hotdoc/sitemap.txt: + * docs/meson.build: + doc: Build documentation with hotdoc + +2017-03-06 08:53:00 -0300 Thibault Saunier + + * ges/ges-timeline.c: + * tests/check/ges/backgroundsource.c: + timeline: Return FALSE when commiting an empty timeline + Meaning that ASYNC_DONE/COMMITED is always emited when TRUE is returned + +2017-02-28 15:39:27 +0200 Sebastian Dröge + + * ges/gstframepositioner.c: + framepositioner: Prevent division by zero + CID 1369046 + CID 1369047 + +2017-02-28 15:36:46 +0200 Sebastian Dröge + + * ges/ges-timeline.c: + ges-timeline: Document intentional case-fall-through + CID 1364754 + +2017-02-28 13:02:44 +0200 Sebastian Dröge + + * examples/c/ges-ui.c: + ges-ui: Ensure that string is \0-terminated + CID 1320699 + +2017-02-28 12:59:35 +0200 Sebastian Dröge + + * ges/ges-project.c: + ges-project: Check for set/unset error correctly by dereferencing + ... or simply calling g_clear_error() on it which does that for us. + CID 1257630 + +2017-02-28 12:50:31 +0200 Sebastian Dröge + + * examples/c/ges-ui.c: + examples/ges-ui: Remove useless NULL check + g_new0() will abort if allocation fails. + CID 1139842 + +2017-02-24 15:44:36 -0300 Thibault Saunier + + * ges/ges-container.h: + * ges/ges-internal.h: + * ges/ges-uri-asset.h: + * win32/common/libges.def: + ges: Keep internal symbols internal + The following implementation details where exposed as public symbols: + - _ges_container_get_priority_offset + - _ges_container_set_height + - _ges_container_set_priority_offset + - _ges_uri_asset_cleanup + but it was not correct and that should never have been used outside + GES. + Moving those declarations to the internal header and marking as + internal. + +2017-02-24 16:00:09 +0200 Sebastian Dröge + + * meson.build: + meson: Update version + +2017-02-24 15:37:55 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.11.2 === + +2017-02-24 15:10:01 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.11.2 + +2017-02-15 12:52:24 -0300 Thibault Saunier + + * meson.build: + * meson_options.txt: + meson: Add an option to disable doc generation + +2017-02-15 12:51:51 -0300 Thibault Saunier + + * ges/ges-meta-container.c: + Minor documentation fix + +2017-02-15 00:58:52 +0000 Tim-Philipp Müller + + * Makefile.am: + meson: dist meson build files + Ship meson build files in tarballs, so people who use tarballs + in their builds can start playing with meson already. + +2017-02-07 11:18:58 +0100 Edward Hervey + + * win32/common/libges.def: + win32: Update def file + +2017-02-06 13:18:32 +0100 Guillaume Desmottes + + * tests/check/ges/mixers.c: + mixers: fix leaks in tests + - GstMessage and GstBus references were lost + - Need to call gst_bus_remove_signal_watch() for each + gst_bus_add_signal_watch_full() call + https://bugzilla.gnome.org/show_bug.cgi?id=778248 + +2017-02-06 10:05:11 -0300 Thibault Saunier + + * ges/ges-meta-container.c: + ges-meta: Minor documenation fix + +2017-02-06 12:07:26 +0100 Guillaume Desmottes + + * docs/libs/ges-sections.txt: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/ges/asset.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + * tests/check/ges/mixers.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/tempochange.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/track.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/check/nle/complex.c: + * tests/check/nle/nlecomposition.c: + * tests/check/nle/nleoperation.c: + * tests/check/nle/simple.c: + * tests/check/nle/tempochange.c: + introduce ges_deinit() + GstDiscoverer objects were leaked by tests making the leaks detector + unusable. + Introduce ges_deinit(), similiar to gst_deinit(), doing some cleanup + before exiting the process. + https://bugzilla.gnome.org/show_bug.cgi?id=776805 + +2017-02-04 20:15:55 +0000 namanyadav12 + + * ges/ges-uri-asset.c: + uri-clip-asset: Add file-size metadata + Add file-size metadata to GESUriClipAsset. + Reviewed-by: Thibault Saunier + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1645 + +2017-02-03 12:50:11 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Cleanup the moved_clip list before rolling back + Otherwise we might end up using an already freed pointer + Differential Revision: https://phabricator.freedesktop.org/D1640 + +2017-01-13 12:41:51 +0000 Tim-Philipp Müller + + * meson.build: + Revert "meson: don't use subproject fallback for gst-validate if it won't work" + This reverts commit 6760e5e0b1b2f28fb04e9c430506af56c15432b9. + This was not supposed to be pushed and should not be needed any more. + +2017-01-13 12:39:42 +0000 Tim-Philipp Müller + + * meson.build: + meson: bump version + +2016-10-29 16:24:53 +0100 Tim-Philipp Müller + + * meson.build: + meson: don't use subproject fallback for gst-validate if it won't work + gst-validate has a hard-dep on json-glib-1.0 so maintain optionality of + it all by only dragging it in as a fallback if we know we can satisfy + the dependencies. + +2017-01-12 16:33:06 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.11.1 === + +2017-01-12 16:20:08 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.11.1 + +2017-01-09 12:12:34 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-timeline-element.c: + * tests/check/ges/timelineedition.c: + clip: Make sure that clip start change is notified before children changes + Fixes https://phabricator.freedesktop.org/T7577 + Differential Revision: https://phabricator.freedesktop.org/D1600 + +2016-10-19 15:36:49 +0000 Alexandru Băluț + + * tests/check/python/test_timeline.py: + tests_: Check the order of signals when a transition is created + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1391 + +2016-12-21 12:22:31 +0100 Alexandru Băluț + + * ges/ges-asset.c: + asset: Fix set_proxy to abort when an error happens + Differential Revision: https://phabricator.freedesktop.org/D1574 + +2016-12-21 11:39:12 +0100 Alexandru Băluț + + * ges/ges-asset.c: + asset: Reuse local variable + Differential Revision: https://phabricator.freedesktop.org/D1573 + +2017-01-04 15:55:36 +0100 Guillaume Desmottes + + * pkgconfig/Makefile.am: + * pkgconfig/gst-editing-services-uninstalled.pc.in: + * pkgconfig/meson.build: + meson: generate pkg-config -uninstalled pc files + Generating those files is useful for users building the GStreamer stack + using meson and having to link it to another project which is still + using the autotools. + https://bugzilla.gnome.org/show_bug.cgi?id=776810 + +2016-12-23 15:08:06 -0300 Thibault Saunier + + * tools/utils.c: + ges-launch: Use standard GstEncodingProfile deserialization function + +2016-12-22 10:00:06 -0300 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Remove space breaking muting ges-launch + +2016-12-22 09:48:58 -0300 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + * ges/ges-video-transition.c: + video-mixer: Fix the way we release mixer pads + We were using the actual mixer pad to release the smart mixer + pad, which seemed to be on purpose, but was not properly handle, + moreover, it is now forbiden to pass a pad not inside a GstElement + when releasing it. + Also properly remove ghost pads from Smart mixer, we were planly + failling at it. + +2016-12-22 08:44:07 -0300 Thibault Saunier + + * tools/meson.build: + meson: Install ges-launch + +2016-12-16 17:29:59 +0000 Tim-Philipp Müller + + * .gitignore: + * Makefile.am: + * configure.ac: + * gst-editing-services.spec.in: + Remove generated .spec file + Likely extremely bitrotten, and we should not ship this anyway. + +2016-12-16 14:04:06 -0300 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/text_properties.c: + * tests/check/meson.build: + tests: Remove now meaningless empty testsuite + +2016-12-13 16:05:17 +0100 Antonio Ospite + + * tools/Makefile.am: + * tools/ges-launch-1.0.1: + * tools/meson.build: + ges: add a basic unix man page for ges-launch-1.0 + Do not list all the possible options in the man page but only the help + options. + This is in order to avoid duplication and prevent the man page from + becoming obsolete in case the options change in the code but do not get + updated in the man page. + https://bugzilla.gnome.org/show_bug.cgi?id=776063 + +2016-12-13 15:10:26 +0100 Antonio Ospite + + * ges/ges.c: + ges: fix the description of the --help-GES command line option + Use "Show GES Options" which is more appropriate and avoids duplication + with --help-gst which already says "Show GStreamer Options". + https://bugzilla.gnome.org/show_bug.cgi?id=776063 + +2016-12-12 16:59:08 -0300 Thibault Saunier + + * tests/check/ges/uriclip.c: + tests: Make sure tests can be listed + Initializing GstCheck before creating the testsuite + +2016-12-13 23:26:23 -0300 Thibault Saunier + + * tools/ges-launcher.c: + ges-launch: Make sure GStreamer is always initialized + https://bugzilla.gnome.org/show_bug.cgi?id=776064 + +2016-12-09 17:50:28 -0300 Thibault Saunier + + * meson.build: + meson: Support building without Gst debug + +2016-12-03 08:21:07 +0100 Edward Hervey + + * common: + Automatic update of common submodule + From 1416c16 to 39ac2f5 + +2016-12-01 17:08:43 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + element: Rework set_child_property_by_pspec + It was making no sense to loose the information about the pspec itself + to retrieve the child associated to it and was failling when we were + forcing the AssociateType::prop synthax + +2016-12-01 15:46:51 -0300 Thibault Saunier + + * tests/check/nle/nleoperation.c: + test:nle: Soften check on refcount + The composition might already have taken a new ref processing the + source. + +2016-11-30 09:53:38 -0300 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nlecomposition: Deactivate current stack in PAUSED_READY state + To avoid a race when tearing down the composition (PAUSED_TO_READY), + we should make sure to tear down the current stack and let the GstBin + class handle the remaining thing to do during the change state. + We should still ignore any error happening when tearing down the + bin state just in case. + https://bugzilla.gnome.org/show_bug.cgi?id=775051 + +2016-11-30 09:53:21 -0300 Thibault Saunier + + * tools/ges-launch.c: + tools: Deinit Gst before exiting + +2016-11-29 10:37:11 -0300 Thibault Saunier + + * meson.build: + meson: Do not print error logs when building the gir + +2016-11-28 17:07:39 -0800 Scott D Phillips + + * examples/c/assets.c: + examples: remove #include from assets.c + It is not needed and pulling it in is causing a link problem with msvc. + Including ges-internal.h sets the default debug category in assets.c to + _ges_debug. Because _ges_debug is marked as DATA in the libges.def, it + will only be linked from libges.dll if it is marked in the source with + dllimport. Instead of messing with that we can just remove this include. + https://bugzilla.gnome.org/show_bug.cgi?id=775295 + +2016-11-26 11:25:41 +0000 Tim-Philipp Müller + + * .gitmodules: + common: use https protocol for common submodule + https://bugzilla.gnome.org/show_bug.cgi?id=775110 + +2016-11-23 18:42:27 +0200 Sebastian Dröge + + * ges/ges-timeline.c: + ges-timeline: Properly calculate absolute diff of two unsigned integers + CID 1394491. + +2016-11-23 18:28:35 +0200 Sebastian Dröge + + * ges/ges.c: + ges: Add NULL check before dereferencing + CID 1394494. + +2016-11-20 15:34:46 +0100 Philippe Renon + + * ges/ges-uri-asset.c: + ges-uri-asset: fix compile error 'timeout' may be used uninitialized + https://bugzilla.gnome.org/show_bug.cgi?id=774751 + +2016-11-18 10:21:45 -0800 Scott D Phillips + + * Makefile.am: + * win32/MANIFEST: + * win32/common/libges.def: + make: include common/win32.mak + With the addition of the .def file for libges we need to make + sure the check-export script from common gets executed so that the + .def stays up to date. + https://bugzilla.gnome.org/show_bug.cgi?id=774641 + +2016-11-18 16:55:17 -0300 Thibault Saunier + + * common: + Update common submodule + +2016-11-17 10:31:50 -0800 Scott D Phillips + + * ges/meson.build: + * meson.build: + * win32/common/libges.def: + Enable building with MSVC + https://bugzilla.gnome.org/show_bug.cgi?id=774641 + +2016-11-17 10:40:05 -0800 Scott D Phillips + + * ges/gstframepositioner.c: + Cast away const from GstMetaInfo in *_get_meta_info() functions + MSVC warns about the const in the implicit argument conversion in the + calls to g_once_init_{enter,leave}. It's OK so explicitly cast it. + https://bugzilla.gnome.org/show_bug.cgi?id=774641 + +2016-11-17 10:39:01 -0800 Scott D Phillips + + * ges/ges-formatter.c: + * ges/ges-validate.c: + Pass gint/guint pointers instead of enum pointers + The underlying integer type for enums are implementation defined and may + not be the same size as gint/guint. So implicitly casting from pointers- + to-enum-types to pointers-to-int-types is unsafe. MSVC warns on these. + https://bugzilla.gnome.org/show_bug.cgi?id=774641 + +2016-11-17 10:35:50 -0800 Scott D Phillips + + * ges/ges-command-line-formatter.c: + * ges/parse.l: + parse: Don't #include + It isn't needed and isn't present in non-posix environments like windows + with MSVC or mingw. + https://bugzilla.gnome.org/show_bug.cgi?id=774641 + +2016-11-17 09:40:38 +0200 Sebastian Dröge + + * plugins/nle/nlecomposition.c: + Revert "nlecomposition: Start task and initialize the stack after chaining up to parent's change state function" + This reverts commit 57d40bec1a3c5048baaad08403d7b7e641a9c55c. + Apparently it causes timeouts in the unit tests on Jenkins and + Thibault's machine, and in the gst-validate tests. + Caused by elements staying in PAUSED and waiting to be set to PLAYING. + Needs further investigation. + +2016-11-17 09:40:33 +0200 Sebastian Dröge + + * plugins/nle/nleobject.c: + Revert "nleobject: Start up in NULL->READY->PAUSED after the parent class did" + This reverts commit 5f7943c59d9def8c2dc9983936463462c1cdf63f. + +2016-11-16 18:11:00 +0200 Sebastian Dröge + + * plugins/nle/nleobject.c: + nleobject: Start up in NULL->READY->PAUSED after the parent class did + This keeps everything in a more consistent order and makes sure that the + base class is already set up completely before we start doing anything. + It also prevents from doing any setup if the base class fails, and + possibly not shutting things down again then. + https://bugzilla.gnome.org/show_bug.cgi?id=774480 + +2016-11-15 17:56:00 +0200 Sebastian Dröge + + * plugins/nle/nlecomposition.c: + nlecomposition: Start task and initialize the stack after chaining up to parent's change state function + Otherwise we could set the state of the children to PAUSED already (i.e. + start dataflow) from the composition's task, while the composition + itself is currently chaining up to the parent class' change state + function and did not activate the pads yet. This causes buffers and + events to be discarded, and everything to stop with a not-negotiated + error. + https://bugzilla.gnome.org/show_bug.cgi?id=774480 + +2016-11-15 18:34:44 -0300 Thibault Saunier + + * tests/check/meson.build: + * tests/check/nose2-junit-xml.cfg.in: + tests: Fix running python unit tests + Adding missing nose2-junit-xml.cfg.in file and minor fixes in + the way we call nose2 also making sure the .xunit files end + up in the right place. + +2016-11-15 15:09:10 -0300 Thibault Saunier + + * ges/ges-uri-asset.c: + * ges/ges.c: + ges: Check if GstDiscoverer could be created at init time + And fail initialization if it is not the case, we make the assumption + it worked all around the codebase so we should really concider it fatal. + +2016-11-10 15:17:50 +0200 Sebastian Dröge + + * plugins/nle/nlecomposition.c: + nlecomposition: Fix small remaining race in previous commit + The seek action might currently be handled (in which case it is not in + the actions list and the action lock is not locked), but not actually + handled completely yet (the seqnum is not stored yet). + To prevent this, we remember what the current action is that is being + handled, and also compare to that. + https://bugzilla.gnome.org/show_bug.cgi?id=774149 + +2016-10-19 16:34:56 +0200 Alexandru Băluț + + * configure.ac: + * tests/check/Makefile.am: + * tests/check/meson.build: + tests_: Use nose2 instead of nosetests + Differential Revision: https://phabricator.freedesktop.org/D1394 + +2016-10-19 12:36:45 +0200 Alexandru Băluț + + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + ges: Fix documentation and debug comments + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1393 + +2016-01-12 14:51:55 +0000 Mathieu Duponchelle + + * ges/ges-timeline.c: + * tests/check/ges/timelineedition.c: + * tests/check/python/test_clip.py: + * tests/check/python/test_timeline.py: + timeline: reimplement snap_to_position a bit more appropriately. + It could yet be made be simpler, but it would require + touching the rest of the timeline editing code. + Fixes https://phabricator.freedesktop.org/T7587 + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D657 + +2016-11-09 17:14:19 +0200 Sebastian Dröge + + * plugins/nle/nlecomposition.c: + nlecomposition: De-duplicate seek events based on their sequence number + If there are e.g. multiple video sinks, we would get the same seek event + multiple times. But we only want to handle it once. + https://bugzilla.gnome.org/show_bug.cgi?id=774149 + +2016-11-07 18:01:51 -0300 Thibault Saunier + + * tests/validate/geslaunch.py: + test:validate: Port to python3 + +2016-11-09 11:48:09 +0200 Sebastian Dröge + + * ges/ges-timeline.c: + ges-timeline: Fix typo in debug messages + +2016-10-08 10:43:07 +0200 Thibault Saunier + + * ges/ges-timeline.c: + * tests/check/python/test_timeline.py: + timeline: Avoid creating extra transition when rippling clips + In some cases when rippling clip we could get the algo lost because + a transition existed between two clips (for example at the end of c1 + and at the begining of c2) but while rippling it would have required + a transition at the end of c2 and beginning of c1, and we were properly + not destroying the old one (as the two clips were in the moving context) + but we were still creating the other transition in the end... + Reviewed-by: Alex Băluț + Differential Revision: https://phabricator.freedesktop.org/D1362 + +2016-10-07 15:31:40 +0200 Thibault Saunier + + * ges/ges-timeline.c: + * tests/check/python/test_timeline.py: + timeline: Make sure transitions between rippled clips are never deleted + Reviewed-by: Alex Băluț + Differential Revision: https://phabricator.freedesktop.org/D1361 + +2016-10-06 19:14:57 +0200 Thibault Saunier + + * ges/ges-layer.c: + * ges/ges-timeline.c: + * tests/check/python/test_timeline.py: + timeline: Destroy transition if a neighbor is not being moved to a layer + And make sure that we move the transition to the right layer, not trying + to figure it out. + Differential Revision: https://phabricator.freedesktop.org/D1360 + +2016-10-06 14:00:23 +0200 Alexandru Băluț + + * tests/check/python/test_clip.py: + * tests/check/python/test_timeline.py: + tests_: Check transition is gone when editing clip to another layer + Differential Revision: https://phabricator.freedesktop.org/D1359 + +2016-11-04 14:41:13 -0300 Thibault Saunier + + * meson.build: + meson: Unset the plugin paths to generate the .gir files + Avoiding problems when using subproject: + 'Failed to load plugin something.so file too short' + +2016-11-01 18:10:47 +0000 Tim-Philipp Müller + + * meson.build: + meson: update version + +=== release 1.11.0 === + +2016-11-01 18:53:15 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.10.0 === + +2016-11-01 18:12:35 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.10.0 + +2016-10-25 08:54:11 -0700 Scott D Phillips + + * meson.build: + meson: Don't depend on gstreamer-check-1.0 on windows + https://bugzilla.gnome.org/show_bug.cgi?id=773114 + +2016-10-25 11:48:35 +0530 Nirbheek Chauhan + + * meson.build: + * tests/check/meson.build: + Revert "meson: move gstreamer-check-1.0 dependency to tests/check" + This reverts commit 5665c2bfc9cae531c6dd9a75766d06a4af25ab9a. + Does not actually work. See: + https://bugzilla.gnome.org/show_bug.cgi?id=773114#c31 + +2016-10-21 05:49:18 -0300 Thibault Saunier + + * meson.build: + * tests/check/meson.build: + meson: move gstreamer-check-1.0 dependency to tests/check + +2016-10-17 09:34:27 -0700 Scott D Phillips + + * meson.build: + meson: mark gstreamer-check-1.0 as required: false + +2016-10-15 22:21:24 +0530 Nirbheek Chauhan + + * meson.build: + meson: Don't set c_std to gnu99 + Use the default for each compiler on every platform instead. This + improves our compatibility with compilers that don't have gnu99 as + a c_std. + +2016-10-03 17:44:04 -0300 Thibault Saunier + + * meson.build: + * tests/check/getpluginsdir: + * tests/check/meson.build: + meson: Use environment object to setup test environment variables + Bump meson requirement to 0.35 + +2016-10-11 00:59:47 +0200 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-track-element.c: + track-element: Avoid dereferencing NULL pointer + We set TrackElement track type very early when creating effects + so it now uses that information to find TrackElement in clips + by track type. + Reviewed-by: Alex Băluț + Differential Revision: https://phabricator.freedesktop.org/D1370 + +2016-09-13 12:31:54 -0300 Thibault Saunier + + * tests/check/meson.build: + meson: Add python tests + +2016-09-30 11:35:42 -0300 Thibault Saunier + + * hooks/pre-commit.hook: + * meson.build: + * tests/check/getpluginsdir: + meson: Setup pre commit hook and fix getpluginsdir for standalone case + +2016-09-30 14:56:48 +0100 Tim-Philipp Müller + + * meson.build: + meson: update version + +=== release 1.9.90 === + +2016-09-30 13:04:39 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.9.90 + +2016-09-23 20:41:04 -0300 Thibault Saunier + + * docs/libs/meson.build: + * docs/meson.build: + * ges/meson.build: + meson: Fix gtkdoc using new meson features + +2016-09-21 16:41:31 -0300 Thibault Saunier + + * ges/meson.build: + meson: Fix installing configured files + +2016-08-13 19:54:22 -0400 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/ges-uri-clip.c: + uriclip: Remove some filesource leftovers + Differential Revision: https://phabricator.freedesktop.org/D1329 + +2016-08-13 21:09:53 -0400 Thibault Saunier + + * tests/check/python/__init__.py: + * tests/check/python/common.py: + * tests/check/python/test_clip.py: + * tests/check/python/test_group.py: + * tests/check/python/test_timeline.py: + tests_:python: Factor out common code + Differential Revision: https://phabricator.freedesktop.org/D1328 + +2016-09-17 09:46:59 -0300 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nle: Drop tags getting out of the composition + Those tag are meaningless in for the new stream created by the composition + First step toward fixing T3070 + Differential Revision: https://phabricator.freedesktop.org/D1327 + +2016-08-11 15:12:07 -0400 Thibault Saunier + + * ges/ges-timeline.c: + * tests/check/python/test_group.py: + timeline: Properly compute the end of groups when checking snapping + Computation was not taking into account the fact that the start of + the element being moved could be at the middle of a group and not + necessarily at the start! + Fixes T7544 + Reviewed-by: Alex Băluț + Differential Revision: https://phabricator.freedesktop.org/D1282 + +2016-08-11 13:19:44 -0400 Thibault Saunier + + * ges/ges-auto-transition.c: + * tests/check/python/test_group.py: + ges: Handle moving groups with effects inside + We were only concidering that we should let the group handle moving + transitions when changing transitions but in fact as soon as a + transition is happenning between two clips that are in a same group + the group properly handles moving the transition, so let the + group do its job. + Fixes T7543 + Differential Revision: https://phabricator.freedesktop.org/D1281 + +2016-08-11 10:54:08 -0400 Thibault Saunier + + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + ges: Deprecate GESTimelineElement::priority writability + GESLayer is now responsible for setting clips priorites. Also + GESClip top effects priorities are now set by the + ges_clip_set_top_effect_index method, the user should never call + ges_timeline_element_set_priority as it will anyway be overriden + by GES itself. + Differential Revision: https://phabricator.freedesktop.org/D1280 + +2016-08-11 10:36:44 -0400 Thibault Saunier + + * ges/ges-layer.c: + layer: Handle operation priorities + All operations should have higher priorites and sources should be + on top of those. We now first set the operations priorities in + a first pass and then stack sources on top of those. + Differential Revision: https://phabricator.freedesktop.org/D1279 + +2016-08-11 09:53:58 -0400 Thibault Saunier + + * ges/ges-video-transition.c: + ges: transition: Make crossfade fade out at the same time as it fade in + Until now fade out was just fading in the new clip, but this is not + correct and crossfade should at the same time fade out while fading + in. + Fixes https://phabricator.freedesktop.org/T3451 + Differential Revision: https://phabricator.freedesktop.org/D1278 + +2016-08-11 09:42:32 -0400 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-timeline.c: + layer: Make sure to resync priorities on commit + In case effects have been added priorites might become wrong, + but until the timeline is not commited, it does not matter. + Make sure all priorities are correct before commiting compositions + Differential Revision: https://phabricator.freedesktop.org/D1277 + +2016-08-11 09:14:42 -0400 Thibault Saunier + + * ges/ges-auto-transition.c: + * ges/ges-layer.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/titles.c: + * tests/check/ges/uriclip.c: + * tests/check/python/test_clip.py: + Finally move clip priority handling to GESLayer. + Fix all tests as we now have 1 priority inside the layer + dedicated to transitions (basically no source clip will + ever have a priority of 0 inside a layer). + Differential Revision: https://phabricator.freedesktop.org/D1276 + +2016-08-11 08:54:23 -0400 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/ges/effects.c: + clip: Make top effect priority inside the clip priority range + And simplify the way we start computing children priority + making min_priority already relative to the clip itself. + Differential Revision: https://phabricator.freedesktop.org/D1275 + +2016-08-11 07:54:42 -0400 Thibault Saunier + + * tests/check/ges/timelineedition.c: + tests_: timelineedition: Fix test now that we ripple from start and not from end + Differential Revision: https://phabricator.freedesktop.org/D1274 + +2016-09-22 11:28:21 -0400 Sebastian Dröge + + * plugins/nle/nlecomposition.c: + nlecomposition: Don't try to seek on an empty stack + We would seek on a NULL pad then, which gives ugly assertions. + https://bugzilla.gnome.org/show_bug.cgi?id=771843 + +2016-09-22 11:25:18 -0400 Sebastian Dröge + + * plugins/nle/nleurisource.c: + * plugins/nle/nleurisource.h: + nleurisource: Always provide a srcpad + By putting uridecodebin into a bin with a ghostpad. Without this, + nlesource tries to get a srcpad too early (before uridecodebin added + one) and everything fails miserably. + This has to be fixed properly in nlesource at some point, by properly + handling dynamically added pads. Currently they can only work if they + are added in states <= READY, which is not the usual case. + https://bugzilla.gnome.org/show_bug.cgi?id=771843 + +2016-09-21 18:23:56 -0400 Sebastian Dröge + + * plugins/nle/nlesource.c: + nlesource: Fail prepare() if no valid source pad is found + https://bugzilla.gnome.org/show_bug.cgi?id=771792 + +2016-09-14 14:32:19 -0300 Thibault Saunier + + * tools/utils.c: + ges-launch: Be a bit more agressive sanitizing arguments + Otherwise GstStructure might fail parsing some fields + containing brackets + https://bugzilla.gnome.org/show_bug.cgi?id=771434 + +2016-09-14 11:31:23 +0200 Sebastian Dröge + + * configure.ac: + configure: Depend on gstreamer 1.9.2.1 + +2016-09-06 14:27:38 +0200 Alexandru Băluț + + * ges/ges-base-xml-formatter.c: + * ges/ges-group.c: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-xml-formatter.c: + * tests/check/python/common.py: + * tests/check/python/test_group.py: + * tests/check/python/test_timeline.py: + timeline: Make get_groups public + Had to separate timeline_emit_group_added from timeline_add_group + to avoid emitting group-added when the project is being loaded. + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1302 + +2016-09-06 15:49:49 +0200 Alexandru Băluț + + * tests/check/python/test_group.py: + tests_: Make sure child-removed is emitted when ungrouping + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1301 + +2016-09-06 13:03:11 +0200 Alexandru Băluț + + * ges/ges-timeline.c: + timeline: Fix documentation + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1300 + +2016-09-05 12:23:30 +0200 Alexandru Băluț + + * README: + Remove obsolete dependency + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D1299 + +2016-09-10 20:52:38 +1000 Jan Schmidt + + * autogen.sh: + * common: + Automatic update of common submodule + From b18d820 to f980fd9 + +2016-09-10 09:58:37 +1000 Jan Schmidt + + * autogen.sh: + * common: + Automatic update of common submodule + From f49c55e to b18d820 + +2016-09-09 17:14:43 -0300 Thibault Saunier + + * tests/check/Makefile.am: + tests: Move -DGES_TEST_FILES_PATH to common_cflags + As it is needed to build the utils lib + +2016-09-09 16:42:13 -0300 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/test-utils.c: + * tests/check/meson.build: + tests: Fix the way we get tests assets + Using __FILE__ won't work properly with meson. + +2016-09-09 08:52:32 -0300 Thibault Saunier + + * ges/meson.build: + * tests/validate/geslaunch.py: + test:validate: Handle new expected_failures Test argument + +2016-09-07 16:53:06 -0300 Thibault Saunier + + * meson.build: + * tests/check/meson.build: + meson: Do not build libges against libcheck + +2016-09-05 17:55:42 -0300 Thibault Saunier + + * tests/check/getpluginsdir: + * tests/check/meson.build: + meson: Properly find where other GStreamer plugins are when using subprojects + +2016-09-05 14:54:53 -0300 Thibault Saunier + + * tests/validate/geslaunch.py: + Revert "validate: Blacklist racy tests" + This reverts commit ce35412ff260fbd6e07b374bc3ca677053c277e0. + https://bugzilla.gnome.org/show_bug.cgi?id=769894 has been fixed + +2016-08-26 19:55:33 -0300 Thibault Saunier + + * ges/meson.build: + * meson.build: + * meson_options.txt: + meson: Handle building the gir file when used as subproject + Add support for building GIR when used as subproject + Add an option to disable GIR generation + And bump version to 1.9.2 + +2016-09-01 12:33:22 +0300 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.9.2 === + +2016-09-01 12:33:13 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.9.2 + +2016-08-25 15:04:54 -0300 Thibault Saunier + + * docs/libs/meson.build: + * meson.build: + meson: doc: Fix building documentation when using subprojects + And check the presence of gtk-doc before building the documentation + +2016-08-25 10:06:51 +0300 Sebastian Dröge + + * .gitignore: + * ges/Makefile.am: + ges: Rename parse_lex.h to ges-parse-lex.h + Fixes the build and makes it consistent with the meson build system. + +2016-08-04 17:33:55 -0400 Thibault Saunier + + * .gitignore: + * config.h.meson: + * docs/libs/meson.build: + * docs/meson.build: + * examples/c/meson.build: + * examples/meson.build: + * ges/ges-command-line-formatter.c: + * ges/meson.build: + * meson.build: + * pkgconfig/meson.build: + * plugins/meson.build: + * plugins/nle/meson.build: + * tests/check/meson.build: + * tests/meson.build: + * tools/meson.build: + Add support for Meson as alternative/parallel build system + https://github.com/mesonbuild/meson + +2016-08-18 18:43:08 +0200 Philippe Renon + + * ges/ges-track-element.c: + ges-track-element: fix typos in control_binding_removed signal declaration + https://bugzilla.gnome.org/show_bug.cgi?id=770101 + +2016-08-14 17:45:16 +0200 Edward Hervey + + * tests/validate/geslaunch.py: + validate: Blacklist racy tests + See https://bugzilla.gnome.org/show_bug.cgi?id=769894 + +2016-08-14 17:44:36 +0200 Edward Hervey + + * ges/ges-timeline.c: + ges-timeline: Demote some debugging statements + locking should be in a lower level to avoid too many messages + +2016-08-13 11:08:34 +0200 Edward Hervey + + * ges/ges-timeline-element.c: + timeline-element: Reset pointer after freeing + dispose can be called multiple times, make sure we don't call functions + on free'd pointers. + +2016-08-03 11:40:30 -0400 Thibault Saunier + + * ges/gstframepositioner.c: + * tests/check/ges/timelineedition.c: + ges: Do not rescale videos if the track aspect ratio changes + Differential Revision: https://phabricator.freedesktop.org/D1242 + +2016-08-02 16:42:20 -0400 Thibault Saunier + + * ges/ges-title-source.c: + * ges/ges-video-source.c: + * ges/ges-video-source.h: + * ges/gstframepositioner.c: + * ges/gstframepositioner.h: + ges: Let the compositor do the scaling if mixing is enabled + Differential Revision: https://phabricator.freedesktop.org/D1241 + +2016-08-01 12:55:07 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + tests:validate: Also test opus and theora in OGG + +2016-07-29 15:48:28 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + * tests/validate/geslaunch.py: + validate: Start also testing jpeg encoding + +2016-07-28 21:50:58 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Keep transitions when moving the moving context between layers + Differential Revision: https://phabricator.freedesktop.org/D1225 + +2015-10-15 22:13:30 +0000 Justin Kim + + * tools/ges-launcher.c: + ges-launcher: don't leak project uri string + ges_project_get_uri returns a cloned string so it should + be free'd after usage. + Reviewed-by: Thibault Saunier + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D381 + +2016-07-28 19:30:28 -0400 Thibault Saunier + + * ges/ges-timeline.c: + * tests/check/ges/layer.c: + timeline: Ripple from start of clips and not the end. + Fixes https://phabricator.freedesktop.org/T7503 + +2016-07-28 17:23:31 -0400 Thibault Saunier + + * ges/ges-enums.c: + * ges/ges-enums.h: + enums: Fix absolute text overlay alignment value + It needs to be in sync with GstBaseTextOverlayHAlign order. + +2016-07-28 16:04:42 -0400 Thibault Saunier + + * ges/ges-title-source.c: + title-source: Properly implement GESTimelineElement->lookup_child + GESTrackElement->lookup_child is deprecated and should be avoided + as much as possible. + +2016-07-28 16:02:05 -0400 Thibault Saunier + + * ges/ges-clip.c: + clip: Reimplement look_child and iterate over children if needed + Otherwise in the case where children reimplement lookup_child to + handle some property renaming lookup fails. + +2016-07-28 14:24:07 -0400 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-command-line-formatter.h: + * ges/ges-internal.h: + * tools/ges-launch.c: + tools: Fix printing commands help + +2016-07-26 14:05:06 -0400 Thibault Saunier + + * tools/ges-validate.c: + ges:validate: Check that no extra decoding happens + +2016-07-26 11:59:39 -0400 Thibault Saunier + + * ges/ges-audio-uri-source.c: + * ges/ges-video-uri-source.c: + uri-sources: Make sure to set decodebin 'caps' property + Fixes a regression where we decode streams twice, + this was introduced when we started creating NLE + object at GESTrackElement construct time. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=769193 + +2016-07-24 08:32:06 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Emit snap-ended on commit if needed + Commiting the timeline means that the current operations on the clips are over, + so we should concider snapping as done at that point + Fixes T7499 + +2016-06-26 12:23:40 +0530 Mohan R + + * ges/Makefile.am: + fixed ges-version.h not found issue during out of tree build + +2016-07-22 07:32:51 -0400 Thibault Saunier + + * ges/ges-image-source.c: + image-source: Do not concider inpoints + We have no restriction on inpoint for Images + Differential Revision: https://phabricator.freedesktop.org/D1202 + +2016-07-15 08:57:28 -0400 Thibault Saunier + + * tests/validate/geslaunch.py: + tests:validate: Better choose tested rendering formats + +2016-07-11 21:16:11 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From f363b32 to f49c55e + +2016-07-06 13:51:18 +0300 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.9.1 === + +2016-07-06 13:45:17 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.9.1 + +2016-06-29 00:39:02 +0000 Justin Kim + + * tools/ges-launch.c: + ges-launch: unref GApplication properly + Differential Revision: https://phabricator.freedesktop.org/D380 + +2016-06-29 00:38:36 +0000 Justin Kim + + * ges/ges-project.c: + project_: improve get_uri doc + The return value of ges_project_get_uri should be freed + after usage. + Differential Revision: https://phabricator.freedesktop.org/D1142 + +2016-06-21 11:49:14 -0400 Nicolas Dufresne + + * common: + Automatic update of common submodule + From ac2f647 to f363b32 + +2016-06-20 21:29:44 -0400 Thibault Saunier + + * tests/check/Makefile.am: + tests: Make sure to run python tests against the build in tree + +2016-06-18 16:16:00 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-timeline.c: + * ges/ges-uri-clip.c: + * tests/check/ges/basic.c: + * tests/check/python/test_clip.py: + ges: Don't remove track elements from clips when removing from layer + And reuse the same previously created element when adding the clip + back to a layer, avoiding losing all setting done on clip children + in that situation + This is a behaviour change but previous behaviour was actually totally + unexpected and people working around that weird behaviour will moste + probably not care about that change + Differential Revision: https://phabricator.freedesktop.org/D1094 + +2016-06-20 14:00:07 -0400 Thibault Saunier + + * ges/ges-title-clip.c: + * tests/check/python/test_clip.py: + title_: Do not forget to link up child_added/removed vmethod + Otherwise effect handling is broken + Differential Revision: https://phabricator.freedesktop.org/D1099 + +2016-06-19 20:02:06 -0400 Thibault Saunier + + * ges/ges-auto-transition.c: + * tests/check/python/test_group.py: + auto-transitions: Do not remove auto transitions when moving neighboor from the same group + Differential Revision: https://phabricator.freedesktop.org/D1097 + +2016-05-14 19:33:05 +0200 Aurélien Zanelli + + * ges/ges-container.c: + * ges/ges-timeline-element.c: + ges: fix various leaks with usage of ges_timeline_element_lookup_child + Some callers forgot to unref out child, pspec or both leading to leaks. + https://bugzilla.gnome.org/show_bug.cgi?id=766449 + +2016-05-14 19:02:57 +0200 Aurélien Zanelli + + * ges/ges-video-track.c: + video-track: don't leak restriction caps in _sync_capsfilter_with_track() + https://bugzilla.gnome.org/show_bug.cgi?id=766450 + +2016-06-06 17:44:15 +0300 Sebastian Dröge + + * ges/ges-uri-asset.c: + ges-uri-asset: GstDiscoverer can return a valid info but a non-OK result, consider this an error + The asynchronous case in ges_uri_clip_asset_request_async() already considered + it an error, do the same in ges_uri_clip_asset_request_sync(). + https://bugzilla.gnome.org/show_bug.cgi?id=767293 + +2016-05-31 12:09:44 +0300 Sebastian Dröge + + * plugins/nle/nlecomposition.c: + nlecomposition: Fix race condition in seek handling causing deadlocks + We might receive another seek from the application while the action task is + handling a previous seek (and thus setting seeking_itself to TRUE). To prevent + this seek to go through directly instead of being added as an action, also + check if the seek event was received from our action task thread or some other + thread. + https://bugzilla.gnome.org/show_bug.cgi?id=767053 + +2016-05-31 09:29:44 -0400 Thibault Saunier + + * ges/ges-meta-container.c: + ges: Emit GESMetontainer::notify-meta even if value is unset + +2016-05-30 10:51:51 -0400 Thibault Saunier + + * ges/ges-meta-container.c: + ges: Allow passing `NULL` as a value to ges_meta_container_set_meta + Fixes T7430 + +2016-05-25 10:32:46 +0100 Tim-Philipp Müller + + * ges/Makefile.am: + g-i: pass compiler env to g-ir-scanner + It's what introspection.mak does as well. Should + fix spurious build failures on gnome-continuous + (caused by g-ir-scanner getting compiler details + via python which is broken in some environments + so passing the compiler details bypasses that). + +2016-05-16 12:06:37 +0200 Aurélien Zanelli + + * ges/ges-uri-clip.c: + * ges/ges-uri-clip.h: + uri-clip: make uri parameter of ges_uri_clip_new () const + To avoid compiler warning when using const string to create a new + GESUriClip as string is not modified and only passed to functions which + take a const string. + https://bugzilla.gnome.org/show_bug.cgi?id=766523 + +2016-05-16 12:53:32 +0200 Aurélien Zanelli + + * ges/gstframepositioner.c: + framepositionner: add a weak ref on track element to know when it is finalized + Otherwise if frame positionner is disposed after track element has been + finalized, it will raise a critical message because we will try to + disconnect a signal handler on a freed track element object. + https://bugzilla.gnome.org/show_bug.cgi?id=766525 + +2016-05-16 17:36:36 +0200 Aurélien Zanelli + + * ges/ges-audio-source.c: + audio-source: unref private capsfilter reference on dispose + Otherwise a capsfilter reference will be leaked since it has been got + using gst_bin_get_by_name. + https://bugzilla.gnome.org/show_bug.cgi?id=766524 + +2016-05-16 17:35:29 +0200 Aurélien Zanelli + + * ges/ges-audio-source.c: + audio-source: fix indentation + https://bugzilla.gnome.org/show_bug.cgi?id=766524 + +2016-05-07 20:29:22 +0200 Aurélien Zanelli + + * plugins/nle/nlecomposition.c: + nlecomposition: ensure elements pending to be added are not leaked + When nlecomposition is finalized with pending add action or io, + associated elements are not unreffed as they should since caller gives + us the reference when calling gst_bin_add causing them to be leaked. + So to make sure we don't leak a reference on element when adding one to + the bin, each stage (action and pending_io) hold a reference on element + and release it when stage is done. + https://bugzilla.gnome.org/show_bug.cgi?id=766455 + +2016-05-14 18:06:56 +0200 Aurélien Zanelli + + * plugins/nle/nlecomposition.c: + nlecomposition: fix nle_composition_remove_object info message + We don't add internal bin, we remove it. + https://bugzilla.gnome.org/show_bug.cgi?id=766455 + +2016-05-15 01:04:17 +0200 Aurélien Zanelli + + * ges/ges-asset.c: + * ges/ges-audio-test-source.c: + * ges/ges-audio-track.c: + * ges/ges-audio-transition.c: + * ges/ges-audio-uri-source.c: + * ges/ges-clip.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-extractable.c: + * ges/ges-group.c: + * ges/ges-image-source.c: + * ges/ges-layer.c: + * ges/ges-meta-container.c: + * ges/ges-multi-file-source.c: + * ges/ges-pipeline.c: + * ges/ges-project.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-transition-clip.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-clip.c: + * ges/ges-utils.c: + * ges/ges-video-test-source.c: + * ges/ges-video-track.c: + * ges/ges-video-transition.c: + * ges/ges-video-uri-source.c: + ges: add some g-i annotations according to documentation + Mainly (transfer xxx) and (nullable). Also fix some typo. + https://bugzilla.gnome.org/show_bug.cgi?id=766459 + +2016-05-15 01:03:49 +0200 Aurélien Zanelli + + * ges/ges-asset.c: + asset: fix ges_asset_set_proxy() return value documentation + https://bugzilla.gnome.org/show_bug.cgi?id=766459 + +2016-05-06 22:28:26 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + element: Also accept GParamSpec.owner_type name as a child property prefix + Makes it simpler for python users to be able to retrieve children + properties iterating over them. + +2016-05-06 18:21:17 -0300 Thibault Saunier + + * ges/ges-track-element.c: + track-element: gi: skip now deprecated children property getter/setter + Those are implemented with the exact same API at the GESTimelineElement + level now, and user of those APIs with high level languages will get the + exact same API. + +2016-05-06 15:44:28 -0300 Thibault Saunier + + * ges/ges-xml-formatter.c: + formatter: Prefix all children properties in the XML formatter + Otherwise it will fail on properties that are mandatorily prefixed + like the newly added deinterlacing properties + +2016-05-06 15:18:50 -0300 Thibault Saunier + + * ges/ges-group.c: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + ges: Remove timeline_emit_group_removed which slipped in the API by mistake + This is formally an API break but I am sure no one ever used that and + we should make sure the method is removed as soon as possible because + it has no reason to be exposed. + +2016-04-29 11:36:00 -0300 Thibault Saunier + + * ges/ges-container.c: + container: Handle setting children properties that need prefixing + +2016-04-29 10:29:00 -0300 Thibault Saunier + + * ges/ges-video-source.c: + video-source: Expose deinterlace-[fields, mode, tff] child properties + Letting some control over the deinterlacing to the users + +2016-04-30 18:38:33 +0100 Tim-Philipp Müller + + * ges/ges-effect.h: + * ges/ges-meta-container.c: + * ges/ges-timeline.c: + ges: fix misc g-i annotations + +2016-04-30 18:20:00 +0200 Aurélien Zanelli + + * ges/Makefile.am: + g-i: use only "ges/ges.h" as c-include for introspection + This is the only header which shall be included by user. Otherwise some + language using gir to generate binding, e.g Vala, will includes all + headers files in alphabetical order which causes compilation errors due + to incomplete type. + https://bugzilla.gnome.org/show_bug.cgi?id=765856 + +2016-04-30 16:43:26 +0200 Aurélien Zanelli + + * ges/ges-timeline.c: + timeline: rename "track-element" to "track_element" in select-tracks-for-object documentation + because "track-element" is not a valid identifier for a parameter and + will cause generated binding using GIR to be invalid. For instance in + Vala. + https://bugzilla.gnome.org/show_bug.cgi?id=765853 + +2016-04-29 10:05:10 -0300 Thibault Saunier + + * ges/ges-video-source.c: + video-source: Do not ever plugin avdeinterlace + It is not feature compatible with deinterlace and is not safe to use + +2016-04-28 13:39:41 +0300 Sebastian Dröge + + * ges/ges-types.h: + ges: #include glib.h for G_BEGIN_DECLS + +2016-04-28 13:39:27 +0300 Sebastian Dröge + + * ges/ges-multi-file-source.h: + ges-multi-file-source: Fix case of standard gobject macros + +2016-04-28 13:37:49 +0300 Sebastian Dröge + + * docs/libs/Makefile.am: + * docs/libs/ges-sections.txt: + ges: Add some more functions to the docs and don't scan internal headers + Someone still should look through the unused.txt for more things to add or + hide. + +2016-04-25 15:11:00 +0300 Sebastian Dröge + + * ges/ges-formatter.h: + * ges/ges-internal.h: + * ges/ges-pitivi-formatter.h: + * ges/ges-structured-interface.h: + * ges/ges-types.h: + ges: Add G_BEGIN_DECLS around all relevant declarations in headers + +2016-04-22 16:06:50 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * tests/check/ges/titles.c: + title: Do not concider inpoints + It does not make sense for titles + Handle element with no inpoint handling in the timeline + Fixes https://phabricator.freedesktop.org/T7319 + +2016-04-14 10:05:16 +0100 Julien Isorce + + * common: + Automatic update of common submodule + From 6f2d209 to ac2f647 + +2016-04-13 12:32:53 +0300 Sebastian Dröge + + * tests/check/ges/timelineedition.c: + tests: Rename positionner to positioner in the tests too + +2016-04-13 12:31:05 +0300 Sebastian Dröge + + * ges/Makefile.am: + * ges/ges-smart-video-mixer.c: + * ges/ges-source.c: + * ges/ges-video-source.c: + * ges/ges-video-transition.c: + * ges/ges.c: + * ges/gstframepositioner.c: + * ges/gstframepositioner.h: + ges: Fix typo by renaming positionner to positioner + It's fortunately private API + +2016-04-13 12:26:13 +0300 Sebastian Dröge + + * ges/gstframepositionner.c: + framepositionner: Initialize all fields of the meta during initialization + GstMetas are not allocated with all fields initialized to zeroes. + +2016-04-09 21:12:00 -0300 Thibault Saunier + + * ges/ges-track-element.c: + ges: Do not try to set read only properties + When copying and splitting clips + Fixes T7375 + +2016-04-09 18:13:33 -0300 Thibault Saunier + + * ges/ges-video-transition.c: + transition: Lower done some debug loggin level + +2016-03-27 23:40:16 +0200 Thibault Saunier + + * plugins/nle/nlecomposition.c: + Minor fix + +2016-04-01 10:09:39 +0200 Thibault Saunier + + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-title-source.c: + titlesource: Add support for absolute positionning + +2016-04-04 10:53:13 +0300 Sebastian Dröge + + * tests/.gitignore: + * tests/check/ges/.gitignore: + tests: Add some things to .gitignore + +2016-04-03 18:06:00 +0200 Aurélien Zanelli + + * examples/.gitignore: + examples/gitignore: ignore assets and play_timeline_with_one_clip binaries + https://bugzilla.gnome.org/show_bug.cgi?id=764550 + +2016-03-30 09:26:18 +0200 Edward Hervey + + * ges/ges.c: + GES: Properly split the GOptionGroup initialization + Debugging must be configuring first (before any parsing), and then + the types are initialized at the end. + Fixes issues with debugging categories not being available at the + start + +2016-03-07 08:49:14 +0900 Vineeth TM + + * ges/ges-smart-adder.c: + * ges/ges-smart-video-mixer.c: + * ges/ges-track.c: + * ges/gstframepositionner.c: + * plugins/nle/nlecomposition.c: + * plugins/nle/nleoperation.c: + * plugins/nle/nlesource.c: + * plugins/nle/nleurisource.c: + editing-services: use new gst_element_class_add_static_pad_template() + https://bugzilla.gnome.org/show_bug.cgi?id=763195 + +2016-03-24 13:33:52 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.8.0 === + +2016-03-24 13:05:16 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.8.0 + +=== release 1.7.91 === + +2016-03-15 12:33:13 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.7.91 + +2016-03-11 17:31:15 +0100 Thibault Saunier + + * examples/c/overlays.c: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + Revert "titlesource: use x/yabsolute instead of x/ypos." + This reverts commit c4356db40c6e50f7314a75ea65d46f9f21ef0a5d. + This commit was not ready and was not support to be pushed + +2016-03-11 17:29:08 +0100 Thibault Saunier + + * ges/ges-group.c: + ges: Don't emit timeline::group-removed when ungrouping outside a timeline + +2016-03-11 12:45:37 +0100 Lubosz Sarnecki + + * examples/c/overlays.c: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + titlesource: use x/yabsolute instead of x/ypos. + +2016-02-12 19:18:24 +0100 Justin Kim + + * tools/ges-launcher.c: + ges-launcher: don't leak sanitized_timeline string + Summary: + sanitized_timeline is created when parsing command line, + but it isn't free'd. + Reviewers: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D382 + +=== release 1.7.90 === + +2016-03-01 19:09:52 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.7.90 + +2016-02-26 21:13:37 +0100 Sjors Gielen + + * plugins/nle/nleoperation.c: + nle: Set the NleOperation flags to NLE_OBJECT_OPERATION + Reviewed By: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D770 + +2016-02-26 20:42:41 +0100 Thibault Saunier + + * ges/ges-effect.c: + ges: Register scaletempo::rate as a rate changing property + +2015-12-20 14:03:57 +0100 Sjors Gielen + + Handle changing playback rate + Before this patch, NLE and GES did not support NleOperations (respectively + GESEffects) that changed the speed/tempo/rate at which the source plays. For + example, the 'pitch' element can make audio play faster or slower. In GES 1.5.90 + and before, an NleOperation containing the pitch element to change the rate (or + tempo) would cause a pipeline state change to PAUSED after that stack; that has + been fixed in 1.5.91 (see #755012 [0]). But even then, in 1.5.91 and later, + NleComposition would send segment events to its NleSources assuming that one + source second is equal to one pipeline second. The resulting early EOS event + (in the case of a source rate higher than 1.0) would cause it to switch stacks + too early, causing confusion in the timeline and spectacularly messed up + output. + This patch fixes that by searching for rate-changing elements in + GESTrackElements such as GESEffects. If such rate-changing elements are found, + their final effect on the playing rate is stored in the corresponding NleObject + as the 'media duration factor', named like this because the 'media duration', + or source duration, of an NleObject can be computed by multiplying the duration + with the media duration factor of that object and its parents (this is called + the 'recursive media duration factor'). For example, a 4-second NleSource with + an NleOperation with a media duration factor of 2.0 will have an 8-second media + duration, which means that for playing 4 seconds in the pipeline, the seek + event sent to it must span 8 seconds of media. (So, the 'duration' of an + NleObject or GES object always refers to its duration in the timeline, not the + media duration.) + To summarize: + * Rate-changing elements are registered in the GESEffectClass (pitch::tempo and + pitch::rate are registered by default); + * GESTimelineElement is responsible for detecting rate-changing elements and + computing the media_duration_factor; + * GESTrackElement is responsible for storing the media_duration_factor in + NleObject; + * NleComposition is responsible for the recursive_media_duration_factor; + * The latter property finally fixes media time computations in NleObject. + NLE and GES tests are included. + [0] https://bugzilla.gnome.org/show_bug.cgi?id=755012 + Differential Revision: https://phabricator.freedesktop.org/D276 + +2016-02-26 12:42:55 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From b64f03f to 6f2d209 + +2016-02-16 12:49:57 +0000 Fabian Orccon + + * ges/ges-group.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + group-added and group-removed signals added + Differential Revision: https://phabricator.freedesktop.org/D619 + +2016-02-19 12:38:45 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.7.2 === + +2016-02-19 12:26:27 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.7.2 + +2016-02-18 15:26:11 +0000 Julien Isorce + + * pkgconfig/gst-editing-services-uninstalled.pc.in: + uninstalled.pc: add support for non libtool build systems + Currently the .la path is provided which requires to use libtool as + mentioned in the GStreamer manual section-helloworld-compilerun.html. + It is fine as long as the application is built using libtool. + So currently it is not possible to compile a GStreamer application + within gst-uninstalled with CMake or other build system different + than autotools. + This patch allows to do the following in gst-uninstalled env: + gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0 \ + gst-editing-services-1.0) + Previously it required to prepend libtool --mode=link + https://bugzilla.gnome.org/show_bug.cgi?id=720778 + +2016-02-09 12:31:10 +0100 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/ges/effects.c: + Fix and test priority of TrackElement after splitting + And make sure we properly handle transitions in that case + +2016-02-09 12:14:15 +0100 Thibault Saunier + + * ges/ges-track-element.c: + ges: Give better names to nleobjects + +2016-02-05 20:02:40 -0300 Thiago Santos + + * tests/check/Makefile.am: + tests: extend the AM_TESTS_ENVIRONMENT from check.mak + To get the CK_DEFAULT_TIMEOUT defined for all tests + https://bugzilla.gnome.org/show_bug.cgi?id=761472 + +2016-02-05 18:11:59 -0300 Thiago Santos + + * autogen.sh: + * common: + Automatic update of common submodule + From 86e4663 to b64f03f + +2016-01-28 13:37:13 +0100 Lubosz Sarnecki + + * ges/ges-title-source.c: + titlesource: Add properties for text dimensions. + +2016-02-02 20:31:13 +0100 Lubosz Sarnecki + + * ges/ges-track-element.c: + trackelement: Make use of read-only children properties. + Read only properties will throw a GLib warning like this + when accessed with "set_child_property": + Warning: g_object_set_property: property 'text-x' of object class 'GstTextOverlay' is not writable + +2016-01-26 12:52:36 +0100 Thibault Saunier + + * plugins/nle/nlecomposition.c: + nle: Turn composition structural issue into ERROR on the bus + Those error are really critical and we are then enable to keep + working. Just post an ERROR message on the bus and let the + application deal with it. + Reviewed-by: Mathieu Duponchelle + Differential Revision: https://phabricator.freedesktop.org/D740 + +2016-01-25 16:11:14 +0100 Thibault Saunier + + * ges/ges-track-element.c: + track-element: Rely on nleobject to be created at construct time + Avoiding all the pending_xx dance and making the code simpler. + This is now possible thanks to the various recent refactoring. + Thanks to that the user is able to set_child_property on objects + that are not in GESTrack yet, as expected. + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D739 + +2016-01-25 15:57:22 +0100 Thibault Saunier + + * ges/ges-effect-asset.c: + * ges/ges-effect.c: + * ges/ges-internal.h: + * tests/check/ges/asset.c: + * tests/check/ges/project.c: + effect: Determine the effect type as soon as possible + Making it possible to create the nleobject right at the creation + of the element. + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D738 + +2016-01-25 15:51:26 +0100 Thibault Saunier + + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * tests/check/python/test_clip.py: + title-clip: Return default GESTitleSource value if no child set yet + In get_property we should return the default values if + we have not created any GESTitleSource yet + (instead of segfaulting). + And fix GESTitleSource default values! + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D737 + +2016-01-25 11:56:57 +0100 Thibault Saunier + + * ges/ges-track-element.c: + * ges/gstframepositionner.c: + ges: track-element: Try to create NleObject as soon as possible + This way we have informations about the content of the + children as soon as possible. + Most code paths where already ready to handle that as we use it for + copying clips. + Fix framepositionner to properly handle that (it would have broke + with copied clips before). + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D736 + +2016-01-19 11:22:57 +0100 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Avoid possible crash disposing the timeline + +2016-01-19 11:15:58 +0100 Thibault Saunier + + * ges/Makefile.am: + g-i: fix init section to avoid compiler warnings + +2016-01-06 17:20:20 +0100 Thibault Saunier + + * ges/ges-container.c: + container: Update start if adding a child that as a start < current start + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D629 + +2016-01-06 18:14:07 +0100 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Fix infinite loop on dispose + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D628 + +2016-01-01 11:56:27 +0100 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-audio-uri-source.c: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-group.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-video-source.c: + * ges/ges-video-uri-source.c: + * ges/gstframepositionner.c: + * tests/check/python/test_clip.py: + * tests/check/python/test_group.py: + group: Make deep copying actually copy deep + Allowing pasting groups paste exactly what had been copied + And not the new version of the contained objects + This technically breaks the C API but this is a new API and I believe + and hope nobody is using it right now. + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D616 + +2015-12-22 23:21:44 +0100 Thibault Saunier + + * configure.ac: + * tests/check/Makefile.am: + * tests/check/python/test_group.py: + tests_: Add a simple python copy/paste test for groups + Integrating python tests in the build system + And cleanup configure.ac + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D601 + +2016-01-02 16:15:02 +0100 Thibault Saunier + + * ges/Makefile.am: + Do not install ges-smart-video-mixer.h + it should always have been private + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D617 + +2016-01-06 09:50:39 +0100 Thibault Saunier + + * ges/ges-timeline-element.c: + Revert "timeline-element: Do not consider not serializable elements when getting top element" + This commit was causing issue where we were reporting the toplevel + element as an element but that element was actually in another + not serialized group. That is very tricky to handle for end users + as they are not guaranteed the toplevel clips were actually not + contained in another element. + This reverts commit ceb82ba3028332987d8d5251f98b4896120aa59b. + Reviewed-by: Thibault Saunier + Differential Revision: https://phabricator.freedesktop.org/D627 + +2016-01-09 05:15:47 +0100 Mathieu Duponchelle + + * plugins/nle/nlecomposition.c: + nlecomposition: use correct type for flush_seqnum. + +2016-01-09 05:14:36 +0100 Mathieu Duponchelle + + * plugins/nle/nleghostpad.c: + nleghostpad: use GST_SEGMENT_FORMAT + This isn't 2005 anymore. + +2015-12-29 18:08:03 +0200 Sebastian Dröge + + * ges/ges-asset.c: + ges-asset: Don't dereference NULL proxy assets when resolving fails + CID 1346531 + +2015-12-26 09:43:11 +0100 Sebastian Dröge + + * ges/ges-asset.c: + * ges/ges-extractable.c: + * ges/ges-project.c: + * ges/ges-project.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + ges: Fix various g-i warnings + +2015-12-26 09:43:19 +0100 Sebastian Dröge + + * ges/ges-track-element.c: + ges-track-element: Rename control-binding-reomved signal to control-binding-removed + Strictly speaking an API change but nobody on the Internet seemed to have used + the signal with the typo in the name. + +2015-12-24 15:30:23 +0100 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.7.1 === + +2015-12-24 15:07:57 +0100 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.7.1 + +2015-12-22 09:58:06 +0100 Sebastian Dröge + + * ges/ges-validate.c: + ges-validate: Fix compiler warning caused by usage of wrong enum type + ges-validate.c:237:22: error: implicit conversion from enumeration type + 'GESEdge' to different enumeration type 'GESEditMode' + [-Werror,-Wenum-conversion] + GESEditMode edge = GES_EDGE_NONE; + ~~~~ ^~~~~~~~~~~~~ + ges-validate.c:277:41: error: implicit conversion from enumeration type + 'GESEditMode' to different enumeration type 'GESEdge' + [-Werror,-Wenum-conversion] + new_layer_priority, mode, edge, position))) { + ^~~~ + https://bugzilla.gnome.org/show_bug.cgi?id=759758 + +2015-12-18 13:32:22 +0100 Thibault Saunier + + * ges/ges-timeline-element.c: + timeline-element: Do not consider not serializable elements when getting top element + Those are temporary elements that should not be considered when dealing + with the hierarchy of objects. + Fixes T3455 + +2015-12-17 13:36:42 +0100 Thibault Saunier + + * ges/ges-uri-clip.c: + uri-clip: Copy sources child properties when resetting asset + +2015-03-12 13:57:28 +0100 Thibault Saunier + + * Makefile.am: + * bindings/python/Makefile.am: + * bindings/python/examples/Makefile.am: + * configure.ac: + * examples/.gitignore: + * examples/Makefile.am: + * examples/c/Makefile.am: + * examples/c/assets.c: + * examples/c/concatenate.c: + * examples/c/ges-ui.c: + * examples/c/ges-ui.glade: + * examples/c/multifilesrc.c: + * examples/c/overlays.c: + * examples/c/play_timeline_with_one_clip.c: + * examples/c/simple1.c: + * examples/c/test1.c: + * examples/c/test2.c: + * examples/c/test3.c: + * examples/c/test4.c: + * examples/c/text_properties.c: + * examples/c/thumbnails.c: + * examples/c/transition.c: + * examples/python/simple.py: + * tests/Makefile.am: + examples: Move all examples to the root dir and create foldersdir per language + + Add some markdown files to link between languages + + Add a simple 'play timeline with one clip" example in C and python + +2015-12-21 12:34:56 +0100 Sebastian Dröge + + * configure.ac: + configure: Use -Bsymbolic-functions if available + While this is more useful for libraries, some of our plugins with multiple + files and some internal API can also benefit from this. + +2015-12-11 15:20:53 +0100 Thibault Saunier + + * ges/ges-project.c: + Revert "project: Call asset_added in the first signal emition stage" + This reverts commit 08f927ca68f71530a32846b6da19eac9dc439a2c. + That commit was breaking the API and could break other people's code. + +2015-12-08 12:37:29 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-asset.c: + * ges/ges-asset.h: + asset: Add a way to set asset as "needing reload" + Allowing application to force the asset system to recheck if an + asset has been "fixed" and can be used again + API: + + ges_asset_needs_reload + Differential Revision: https://phabricator.freedesktop.org/D584 + +2015-12-02 11:04:10 +0100 Thibault Saunier + + * ges/ges-project.c: + project: Call asset_added in the first signal emition stage + Differential Revision: https://phabricator.freedesktop.org/D520 + +2015-11-20 23:33:12 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-asset.c: + * ges/ges-asset.h: + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-uri-clip.c: + * ges/ges-xml-formatter.c: + * tests/check/Makefile.am: + * tests/check/ges/asset.c: + Implement asset proxying support + API: + ges_asset_set_proxy + ges_asset_get_proxy + ges_asset_list_proxies + ges_asset_get_proxy_target + Differential Revision: https://phabricator.freedesktop.org/D504 + +2015-12-07 09:11:38 -0500 Nicolas Dufresne + + * autogen.sh: + * common: + Automatic update of common submodule + From b319909 to 86e4663 + +2015-11-26 23:11:36 +0530 Sebastian Dröge + + * Makefile.am: + bash-completion: Disable during "make distcheck" as this requires installing files outside the prefix + automake requires all files to be installed inside the prefix. bash-completion + requires the files to be in a specific directory given by a pkg-config file. + As such those two are having incompatible requirements and we just disable + bash-completion installation for the time being when running "make distcheck". + Nonetheless things like "make install" with e.g. a DESTDIR or a private + installation into a user's directory will fail as in both cases the + bash-completion data would be tried to be installed system-wide. + +2015-11-26 22:42:45 +0530 Sebastian Dröge + + * configure.ac: + Revert "build: fix make distcheck." + This reverts commit 462727d6d825b6e67119e6b8ea47d9e18cc22bdf. + This "fix" broke the build on Windows, where both prefix and datadir are + absolute paths and as such we would concatenate two absolute paths and fail. + +2015-11-21 00:23:02 +0100 Thibault Saunier + + * configure.ac: + * tests/check/Makefile.am: + tests: Properly setup GST_PLUGIN_PATH in test environement + +2015-11-15 00:31:21 +0100 Thibault Saunier + + * Makefile.am: + Dist gst-editing-services.doap + +2015-11-08 22:49:43 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-asset.c: + * ges/ges-asset.h: + asset: Add a method to retrieve the GError of an asset loaded with error + API: + ges_asset_get_error + +2015-11-07 18:21:53 +0100 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-project.h: + project: Add a 'asset-loading' signal + +2015-11-05 11:16:31 +0100 Thibault Saunier + + * .arcconfig: + * ges/ges-audio-source.c: + * ges/ges-smart-adder.c: + ges: Set restriction caps in the audio source caps filter + Otherwise we could have not negotiated errors in audiomixer when + the channel/channel-mask do not match + Differential Revision: https://phabricator.freedesktop.org/D493 + Reviewed-by: Mathieu Duponchelle + +2015-11-04 20:20:10 +0100 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-xml-formatter.c: + formatter: Do not serialize top effect priorities + We just need to make sure they are always serialized in the right + order (which is the case) and de serializing them will lead to the + right behaviour. + We should not serialize the priority as the priority of the source + itself depends on the action having been done on the parent clip, + and we do not serialize the source priorities (and should not, GES + should just do the right thing). + Differential Revision: https://phabricator.freedesktop.org/D491 + +2015-11-04 18:37:34 +0100 Thibault Saunier + + * tools/ges-launcher.c: + launcher: Make sure to not activate validate twice when simply loading a scenario + +2015-10-30 10:52:12 +0100 Thibault Saunier + + * ges/ges-uri-clip.c: + uri-clip: Make sure to instantiate an asset to back GESUriClip-s + +2015-10-21 14:37:26 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From b99800a to b319909 + +2015-10-20 17:29:42 +0300 Sebastian Dröge + + * configure.ac: + Use new GST_ENABLE_EXTRA_CHECKS #define + https://bugzilla.gnome.org/show_bug.cgi?id=756870 + +2015-10-21 14:28:54 +0300 Sebastian Dröge + + * common: + Automatic update of common submodule + From 9aed1d7 to b99800a + +2015-10-02 22:27:37 +0300 Sebastian Dröge + + * configure.ac: + Update GLib dependency to 2.40.0 + +2015-10-02 16:51:56 +0200 Justin Kim + + * plugins/nle/nlecomposition.c: + nlecomposition: free closure actions when disposing + Summary: + After invoking GClosure, the item of action list becomes + orphan so it lost a chance to be freed. In addition, even + when disposing, the list of actions has few items so we + have to check the list. + Reviewers: thiblahute + Projects: #gstreamer_editing_services + Reviewed By: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D324 + +2015-10-02 16:49:31 +0200 Justin Kim + + * plugins/nle/nlecomposition.c: + nlecomposition: fix wrong argument order of GClosureNotify + Summary: + _free_action should follow GClosureNotify type. + ``` + void + (*GClosureNotify) (gpointer data, + GClosure *closure); + ``` + Reviewers: thiblahute + Projects: #gstreamer_editing_services + Reviewed By: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D323 + +2015-10-02 16:39:31 +0200 Justin Kim + + * ges/ges-track.c: + track: mixing_operation is handled by its parent + Summary: + Normally, mixing_operation is created and added to nlecomposition + as a child element so it will be freed when nlecomposition is removed + from a track. + Reviewers: thiblahute + Projects: #gstreamer_editing_services + Differential Revision: https://phabricator.freedesktop.org/D319 + +2015-10-02 16:11:33 +0200 Justin Kim + + * plugins/nle/nleoperation.c: + nleoperation: don't leak iterator + Summary: Once an iterator is created, it should be freed after usage. + Reviewers: thiblahute + Projects: #gstreamer_editing_services + Reviewed By: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D318 + +2015-10-02 16:10:59 +0200 Justin Kim + + * ges/ges-asset.c: + asset: simplify if-statement in cache_set_loaded + Summary: + Manual iteration can be replaced with foreach function. + In addition, this patch fixes mismatched GFunc type for + g_list_foreach and adds debug cateory for gst-asset for + convenient debugging. + Reviewers: thiblahute + Reviewed By: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D312 + +2015-10-02 16:08:03 +0200 Justin Kim + + * .arcconfig: + * ges/ges-uri-asset.c: + uri-asset: do not reuse a passed GError pointer + Summary: A passed GError is re-allocated when discoverer has no information. + Reviewers: thiblahute + Projects: #gstreamer_editing_services + Reviewed By: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D302 + +2015-10-01 16:26:05 +0200 Justin Kim + + * ges/ges-xml-formatter.c: + xml-formatter: handle dispose properly + Summary: + To dispose properly, a child object should call same function + of parent class. + Reviewers: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D311 + +2015-10-01 16:06:33 +0200 Justin Kim + + * ges/ges-base-xml-formatter.c: + base-xml-formatter: properly handle GFile from wrong uri + Summary: + g_file_new_for_uri never fails so GFile always has valid pointer. + And fix a bug of double unref from D303. + Reviewers: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D310 + +2015-10-01 11:28:38 +0200 Justin Kim + + * ges/ges-audio-track.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-extractable.c: + * ges/ges-multi-file-source.c: + * ges/ges-video-track.c: + * ges/ges-xml-formatter.c: + don't leaks caps and converted strings + Summary: + Valgrind reports trivial leakages related to handling + objects and their converted strings. + Reviewers: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D303 + +2015-09-30 14:50:46 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + track: add gaps when going from READY to PAUSED. + Summary: + The backend commits itself automatically in these cases, so track + needs to do so too. + Reviewers: thiblahute + Reviewed By: thiblahute + Differential Revision: https://phabricator.freedesktop.org/D94 + +2015-08-20 17:16:50 +0900 Vineeth TM + + * tests/examples/multifilesrc.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launcher.c: + editing-services: Fix memory leaks when context parse fails + When g_option_context_parse fails, context and error variables are not getting free'd + which results in memory leaks. Free'ing the same. + And replacing g_error_free with g_clear_error, which checks if the error being passed + is not NULL and sets the variable to NULL on free'ing. + https://bugzilla.gnome.org/show_bug.cgi?id=753864 + +2015-09-30 17:11:20 +0900 Justin Kim + + * plugins/nle/nleoperation.c: + nleoperation: don't leak srcpad + https://bugzilla.gnome.org/show_bug.cgi?id=755860 + +2015-09-30 17:27:26 +0900 Justin Kim + + * ges/ges-project.c: + project: fix a pointer for error message + https://bugzilla.gnome.org/show_bug.cgi?id=755862 + +2015-09-30 17:26:31 +0900 Justin Kim + + * ges/ges-project.c: + project: don't leak GFileInfo + https://bugzilla.gnome.org/show_bug.cgi?id=755862 + +2015-09-22 01:06:00 +0900 Justin Kim + + * ges/ges-timeline-element.c: + * ges/ges-track.c: + * ges/gstframepositionner.c: + timeline-element,track,framepositionner: don't leak internal object + https://bugzilla.gnome.org/show_bug.cgi?id=755247 + +2015-09-24 01:30:09 +0900 Justin Kim + + * ges/ges-structured-interface.c: + structured-interface: introduce TRY_GET_STRING + TRY_GET uses gst_structure_get. However, if boxed or + string pointer is retrieved by gst_structure_get, + it should be freed properly. + https://bugzilla.gnome.org/show_bug.cgi?id=755480 + +2015-09-24 13:41:30 +0900 Justin Kim + + * ges/ges-uri-asset.c: + uri-asset: don't leak uri string + https://bugzilla.gnome.org/show_bug.cgi?id=755505 + +2015-09-28 15:59:58 +0200 Thibault Saunier + + * ges/ges-title-source.c: + Revert "title-source: Force format with alpha channels out of videotestsrc" + This reverts commit 7d1e1010728a5348674bb9053de6b095cb824984. + This commit was never meant to be committed (at least *not* on master). + +2015-09-28 13:21:11 +0900 Justin Kim + + * ges/ges-structure-parser.c: + * ges/ges-structure-parser.h: + structure-parser: define GES_STRUCTURE_PARSER macro + And fix trivial leakages of internal list structure. + https://bugzilla.gnome.org/show_bug.cgi?id=755716 + +2015-09-27 15:15:10 +0200 Thibault Saunier + + * ges/ges-title-source.c: + title-source: Force format with alpha channels out of videotestsrc + Making sure the user can set a background of the title with an alpha + channel. + Working around https://bugzilla.gnome.org/show_bug.cgi?id=755482 for + the 1.6 branch. + +2015-09-25 12:30:29 +0200 Thibault Saunier + + * configure.ac: + Back to development + +=== release 1.6.0 === + +2015-09-25 12:29:40 +0200 Thibault Saunier + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.6.0 + +2015-09-24 13:21:15 +0200 Thibault Saunier + + * ges/ges-container.c: + * ges/ges-timeline.c: + ges: Avoid emitting 'child-added/removed' when signal emission stops addition + In the GESTimeline, TrackElement addition to a clip might get cancelled + (and thus the element gets removed), we need to make sure users do not + get wrong signals. + Also document the fact that user should connect to container::child-added + with g_signal_connect_after. + +2015-09-22 23:10:35 +0900 Justin Kim + + * plugins/nle/nlecomposition.c: + * plugins/nle/nleobject.c: + nle{composition,object}: remove unused allocation & trivial leakages + nlecomposition allocates unused 'UpdateCompositionData' and it + causes leakages. + https://bugzilla.gnome.org/show_bug.cgi?id=755417 + +2015-09-24 13:40:27 +0900 Justin Kim + + * ges/ges-pipeline.c: + pipeline: don't leak GstPad + https://bugzilla.gnome.org/show_bug.cgi?id=755505 + +2015-09-24 13:42:16 +0900 Justin Kim + + * ges/ges-pitivi-formatter.c: + pitivi-formatter: don't leak internal hash table + https://bugzilla.gnome.org/show_bug.cgi?id=755505 + +2015-09-23 21:23:13 +0200 Thibault Saunier + + * ges/ges-video-transition.c: + video-transition: Make compositor background transparent + Allowing further mixing downstream + +2015-09-23 21:12:33 +0200 Thibault Saunier + + * ges/ges-video-transition.c: + video-transition: Add a framepositioner at the end of the transitio + So downstream compositor knows the zorder of the various streams + +=== release 1.5.91 === + +2015-09-18 18:40:18 +0200 Thibault Saunier + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.5.91 + +2015-09-18 10:01:44 +0200 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-track.c: + * ges/ges-utils.c: + ges: Namespace NLE utils function into GES + Avoiding name clashes when built statically + +2015-09-15 12:17:19 +0200 Thibault Saunier + + * plugins/nle/nlesource.c: + nle: Avoid unsetting srcpad target after the srcpad is already freed + That leaded to segfaults + +2015-09-15 11:08:29 +0200 Thibault Saunier + + * plugins/nle/nleghostpad.c: + nle: Stop wrongly set operation segment base time + Inside the composition we actually do not need to have any notion + of what the timing outside the compositon as we already tweak the segment + base time outside the composition. This code was only there to work + around https://bugzilla.gnome.org/show_bug.cgi?id=753196 + https://bugzilla.gnome.org/show_bug.cgi?id=754893 + +2015-09-11 16:18:46 +0900 Justin Kim + + * plugins/nle/nlecomposition.c: + nlecomposition: don't leak internal hashtable + https://bugzilla.gnome.org/show_bug.cgi?id=754867 + +2015-09-11 16:13:19 +0900 Justin Kim + + * plugins/nle/nleobject.c: + nleobject: don't leak srcpad when disposing + https://bugzilla.gnome.org/show_bug.cgi?id=754867 + +2015-09-11 16:11:40 +0900 Justin Kim + + * ges/ges-timeline.c: + timeline: don't leak pad in private structure + https://bugzilla.gnome.org/show_bug.cgi?id=754867 + +2015-09-11 09:58:56 +0900 Justin Kim + + * tools/ges-launcher.c: + ges-launcher: don't leak GError + https://bugzilla.gnome.org/show_bug.cgi?id=754858 + +2015-09-09 23:32:19 +0900 Justin Kim + + * tools/ges-launcher.c: + ges-launcher: fix double free when argument is invalid + https://bugzilla.gnome.org/show_bug.cgi?id=754783 + +2015-09-04 12:01:16 +0200 Thibault Saunier + + * ges/ges-video-source.c: + video-source: Use the priority being set to compute zorder + +2015-09-02 23:27:16 +0200 Thibault Saunier + + * ges/ges-video-transition.c: + video:transition: Set mixer pad zorder + +2015-09-02 17:58:33 +0200 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + * ges/ges-smart-video-mixer.h: + * ges/ges-video-source.c: + * ges/ges-video-transition.c: + video-source: Make sure to set framepositionner zorder when creating it + And fix a computation bug where we would be having mixing order + reversed between layers. + And make sure that the positionner does not mix up Transition handling + of the zorder + +2015-08-27 16:28:42 +0200 Thibault Saunier + + * ges/ges-video-source.c: + * ges/gstframepositionner.c: + video-source: Simply set framepositionner->zorder = self->priority + Summary: + Making the code simpler and handling the transition case + where elements are in the same layer (which was failing + /setting same zorders until now). + Reviewers: Mathieu_Du + Differential Revision: https://phabricator.freedesktop.org/D237 + +2015-08-23 01:35:18 +1000 Jan Schmidt + + * configure.ac: + Use standard GST_PLUGIN_LDFLAGS for the nle plugin + Add the standard GST_PLUGIN_LDFLAGS to the configure.ac file. + +2015-08-21 21:25:27 +0200 Thibault Saunier + + * configure.ac: + Add support for static plugins builds + +=== release 1.5.90 === + +2015-08-20 17:55:48 +0200 Thibault Saunier + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.5.90 + +2015-08-19 11:24:11 +0200 Thibault Saunier + + * .arcconfig: + * Makefile.am: + * configure.ac: + * ges/Makefile.am: + * ges/ges-internal.h: + * ges/ges-track.c: + * ges/ges-utils.c: + * ges/ges.c: + * plugins/Makefile.am: + * plugins/nle/.gitignore: + * plugins/nle/Makefile.am: + * plugins/nle/gnlmarshal.list: + * plugins/nle/gstnle.c: + * plugins/nle/nle.h: + * plugins/nle/nlecomposition.c: + * plugins/nle/nlecomposition.h: + * plugins/nle/nleghostpad.c: + * plugins/nle/nleghostpad.h: + * plugins/nle/nleobject.c: + * plugins/nle/nleobject.h: + * plugins/nle/nleoperation.c: + * plugins/nle/nleoperation.h: + * plugins/nle/nlesource.c: + * plugins/nle/nlesource.h: + * plugins/nle/nletypes.h: + * plugins/nle/nleurisource.c: + * plugins/nle/nleurisource.h: + Move NLE to a dedicated GstPlugin + Summary: Allowing external user to directly use it + Reviewers: Mathieu_Du + Differential Revision: https://phabricator.freedesktop.org/D231 + +2015-07-23 11:53:52 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nle: Enhance debug logging + +2015-07-23 11:42:48 +0200 Thibault Saunier + + * ges/ges-structured-interface.c: + * ges/ges-track.c: + ges: Do not leak and uselessly create errors + And avoid parenthesis in GstObject names + +2015-07-23 11:40:57 +0200 Thibault Saunier + + * ges/ges-structured-interface.c: + ges: Fix how we handle layer vs layer-priority in the structured interface + +2015-07-23 11:39:04 +0200 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/clip.c: + tests: Do not use gst-structured-interface in the tests + It breaks $ make distcheck + +2015-07-16 17:26:04 +0100 Tim-Philipp Müller + + * gst-editing-services.doap: + Update mailing list in doap file + +2015-07-16 10:54:54 +0200 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Remove transitions that can no fit into an auto transition + When activating auto transition mode + +2015-07-16 10:53:17 +0200 Thibault Saunier + + * ges/ges-timeline-element.c: + ges; Minor debug enhancement + +2015-07-13 13:48:40 +0200 Thibault Saunier + + * ges/ges-asset.c: + assets: Avoid deadlock when done initialising asset + Avoid to hold the CACHE lock when setting the GTasks return values. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=752300 + +2015-07-08 18:59:33 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + * ges/nle/nleobject.h: + nleobject: Concider objects as 'inactive' when they have a duration == 0 + +2015-07-08 18:59:00 +0200 Thibault Saunier + + * ges/ges-track-element.c: + track-element: Handle the case where we have only one keyframe set when interpollating keyframes + +2015-07-06 10:24:33 +0200 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-internal.h: + * tests/check/ges/uriclip.c: + asset: Port use of deprecated GSimpleAsyncResult to GTask + +2015-07-03 22:00:08 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From f74b2df to 9aed1d7 + +2015-07-03 13:49:57 +0200 Thibault Saunier + + * ges/ges-track-element.c: + * tests/check/Makefile.am: + * tests/check/ges/clip.c: + track-element: Fix splitting bindings and add unit tests + +2015-07-01 18:33:39 +0200 Thibault Saunier + + * ges/ges-structured-interface.c: + structured-interface: Better handle CLOCK_TIME type from GstStructures + +2015-06-29 18:04:32 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-group.c: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + element: Implement a paste method + Allowing user to copy paste clips very easily + +2015-06-23 16:11:26 +0200 Thibault Saunier + + * ges/ges-timeline.c: + * ges/gstframepositionner.c: + * tests/check/ges/layer.c: + timeline: Disable movement that lead to 2 transition at a position + We should never let 3 objects to overlap at a same position, for that + we introduce a "rollback" feature and whenever such an editing happens, + we rollback object position to whatever it was before the move. + +2015-06-23 19:19:29 +0200 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + smart-video-mixer: Always keep a ref on the mixer pad + +2015-06-23 13:27:00 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-container.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + timeline-element: Add a method to get the TrackType it interacts with + API: + + ges_timeline_element_get_track_types + +2015-06-19 11:08:25 +0200 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-timeline.c: + timeline: Never create transitions between rippled objects + In case of groups, we can have track elements that do not belong + directly to the moved_trackelements but will be moved as others. Never + create transition to all object that have a start > moving group start. + +2015-06-16 17:07:40 +0200 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + * ges/ges-smart-video-mixer.h: + * ges/ges-video-transition.c: + video-transition: Use a SmartMixer as mixer + So that the frame position metas are parsed and taken into account + +2015-06-16 15:02:18 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-pipeline.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + track-element: Add method to remove control binding + API: + ges_track_element_remove_control_binding + +2015-06-16 13:25:32 +0200 Thibault Saunier + + * ges/ges-track-element.c: + * ges/ges-xml-formatter.c: + ges: Handle absolute GstDirectControlBindings + +2015-06-13 18:48:20 +0200 Thibault Saunier + + * ges/ges-smart-video-mixer.c: + * ges/gstframepositionner.c: + * ges/gstframepositionner.h: + framepositionner: Make use of the new CompositorPad.width/height + So that the scaling is done in the compositor and this way we can cleanly interpolate its value + +2015-07-03 09:19:30 +0200 Thibault Saunier + + * ges/ges-timeline.c: + * tests/check/ges/group.c: + * tests/check/ges/timelineedition.c: + timeline: Never change output media time when trimming start + + Fix testsuite + https://bugzilla.gnome.org/show_bug.cgi?id=638802 + +2015-07-03 09:16:50 +0200 Thibault Saunier + + * ges/ges-track-element.c: + * tests/check/ges/timelineedition.c: + track-element: Return right value when editing + We used to always return TRUE which was wrong + + Fix testsuite and remove randomness from the tests + +2015-07-01 17:28:52 +0200 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-pipeline.c: + * ges/ges-track.c: + ges: Do not add a final gap at the end of track while rendering + It is not correct to force a black frame at the end of the rendered + video and it also leads to rendering issue with vpX encoders. + https://bugzilla.gnome.org/show_bug.cgi?id=751510 + +2015-07-01 11:35:42 +0200 Thibault Saunier + + * ges/ges-clip.c: + * ges/nle/nlecomposition.c: + clip: Use container priority offset when setting children prios + Instead of trying to compute it ourself which might lead to wrong + behaviour when moving between layer. + + Make sure that when we reset clip children priority (to make space + for effects,) we update the container knowledge of priority offsets + +2015-06-30 23:13:28 +0200 Thibault Saunier + + * ges/ges-clip.c: + clip: Fix track element priority computation + We were computing the priority offset taking the global MIN_NLE_PRIO + (which is a constant == 2 to make space for the mixing elements) instead + of the layer 'track element' relative priority, leading to very big + offsets on layer with a prio > 0. In the end it leaded to effects having + the same priority as the sources which leads to an undefined behaviour + in NLE. + +2015-06-24 09:06:30 +0200 Thibault Saunier + + * ges/ges-uri-asset.c: + uri-asset: Bump the discoverer timeout to 1 minute + We should by default avoid false timeouts + +2015-06-22 01:52:39 +0200 Thibault Saunier + + * ges/ges-track.c: + track: Give usefull name to compositions + +2015-06-25 11:03:12 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + * ges/nle/nleobject.c: + * tests/check/nle/common.c: + nle: Port tests to the "commit" action signals + Now that nle_object_commit symbol is hidden, we can't use it + in the tests. + +2015-06-25 10:32:46 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * docs/random/lifecycle: + * docs/random/scenarios: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + ges: Unbreeak API after renaming of GNL to NLE + +2015-06-25 10:28:41 +0200 Sebastian Dröge + + * ges/ges-auto-transition.h: + * ges/ges-internal.h: + * ges/ges-structure-parser.h: + * ges/gstframepositionner.h: + ges: Hide more symbols of headers that are not installed + +2015-06-25 10:25:48 +0200 Sebastian Dröge + + * ges/nle/nlecomposition.c: + nle: Remove unused function + nle/nlecomposition.c:2471:1: error: unused function '_parent_or_priority_changed' [-Werror,-Wunused-function] + _parent_or_priority_changed (NleObject * obj, GNode * oldnode, + ^ + +2015-06-25 10:24:13 +0200 Sebastian Dröge + + * configure.ac: + * ges/nle/nlecomposition.h: + * ges/nle/nleghostpad.h: + * ges/nle/nleobject.h: + * ges/nle/nleoperation.h: + * ges/nle/nlesource.h: + * ges/nle/nleurisource.h: + nle: Hide away symbols, they're supposed to be internal + +2015-06-24 17:55:22 +0200 Thibault Saunier + + * configure.ac: + Back to development + +=== release 1.5.2 === + +2015-06-24 17:44:04 +0200 Thibault Saunier + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.5.2 + +2015-06-23 09:41:01 +0100 Tim-Philipp Müller + + * ges/nle/nlesource.c: + nlesource: remove outdated comment + +2015-06-16 17:50:38 -0400 Nicolas Dufresne + + * common: + Automatic update of common submodule + From 6015d26 to f74b2df + +2015-06-10 17:54:20 +0200 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Handle rendering with disabled tracks + Summary: + The user might want to render only some media type of the timeline, + for example he wants to only render the audio part of the timeline. + It was failing as we were not connecting the track but were still trying + to 'render' it. + Depends on D153 + Reviewers: Mathieu_Du + Reviewed By: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D154 + +2015-06-09 21:00:44 +0200 Thibault Saunier + + * ges/ges-uri-asset.c: + * tools/ges-launcher.c: + ges: Raise an error when the discoverer returns != RESULT_OK + And do not try to run the pipeline when that happens + +2015-06-09 20:58:00 +0200 Thibault Saunier + + * ges/ges-uri-asset.c: + uri-asset: Add a way to control discoverer timeout through envvar + Making it possible to run ges-launch test under valgrind for example + +2015-06-09 12:23:59 +0100 Tim-Philipp Müller + + * tools/ges-validate.c: + ges-launch: don't print random position/duration values at startup + +2015-06-09 11:30:59 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From d9a3353 to 6015d26 + +2015-06-08 23:08:40 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From d37af32 to d9a3353 + +2015-06-07 23:07:40 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From 21ba2e5 to d37af32 + +2015-06-07 17:32:34 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From c408583 to 21ba2e5 + +2015-06-07 17:16:53 +0200 Stefan Sauer + + * autogen.sh: + * common: + Automatic update of common submodule + From d676993 to c408583 + +2015-06-05 19:59:08 +0200 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Never snap end when rippling + http://phabricator.freedesktop.org/T74 + +2015-06-05 19:58:16 +0200 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Never create transition between elements inside the moving context + http://phabricator.freedesktop.org/T74 + +2015-06-05 18:49:51 +0200 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-group.c: + * ges/ges-group.h: + group: Disconnect from old layer notify::priority when a clip is moved to a NULL layer + This means we need to properly track the layer a clip was in. We now + keep track of the various signal IDs in a dedicated structure and + keep a ref on the layer an object is in. + http://phabricator.freedesktop.org/T88 + +2015-06-03 14:56:11 +0200 Thibault Saunier + + * tools/ges-launcher.c: + * tools/ges-validate.c: + tools: Exit the app as it is a simgle instance app + And force exiting GstValidate when wanted + +2015-06-01 13:05:25 +0100 Luis de Bethencourt + + * ges/ges-structured-interface.c: + ges: remove dead code + Summary: + No need to recheck if error exists since it has already been checked by the + conditional above. + Coverity CID #1302832 + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D200 + +2015-05-31 14:16:05 +0200 Thibault Saunier + + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-clip.c: + * ges/ges-timeline.c: + * tests/check/ges/layer.c: + ges: Handle trimming auto transitions + Meaning trimming neighbors. + + And add a test + +2015-05-29 15:15:25 +0200 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Use a simple GList to track auto transitions + +2015-01-12 13:05:30 +0100 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Do not fail when removing/adding child without commiting + Summary: + We use to end up removing the nleobject when the following case happened: + * add an object + * remove that object + * re add the object + * commit the composition + Reviewers: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D193 + +2015-05-19 18:18:30 +0200 Thibault Saunier + + * ges/ges-layer.c: + timeline: Minor documentation addition + +2015-05-18 21:24:25 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-formatter.c: + * ges/ges-meta-container.h: + * ges/ges-xml-formatter.c: + * tests/check/ges/project.c: + * tests/check/ges/test-project.xges: + * tests/check/ges/test-utils.c: + ges: Enhance xges format versioning + Summary: + Handle the fact that some new features can be added and that means + generated files will not be fully understandable by older versions of + the formatter. + Make sure that we set the format version to 0.2 when we serialize the + GstEncodingProfile.enabled property. + Add some tests around that. + + Fix a minor bug in the test-utils + + Add a meta on the projects to tell in what format version a project + has been serialized/parsed back + API: + GES_META_FORMAT_VERSION + Depends on D178 + Reviewers: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D184 + +2015-05-14 11:12:20 +0200 Thibault Saunier + + * ges/ges-structured-interface.c: + ges: If last added clip is not in a layer, get the first layer + Summary: + In case we just removed it from its layer, make sure to + just use the first layer when none specified. + Depends on D177 + Reviewers: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D178 + +2015-05-14 11:11:44 +0200 Thibault Saunier + + * ges/ges-structured-interface.c: + * ges/ges-validate.c: + ges: Fix some error settings + Summary: Depends on D176 + Reviewers: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D177 + +2015-05-14 11:10:15 +0200 Thibault Saunier + + * ges/ges-structured-interface.c: + ges:structured-interface: Use GET_AND_CHECK in more places + Summary: + Giving more details about the issue to the user + Depends on D151 + Reviewers: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D176 + +2015-05-07 10:52:18 +0200 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + xml-formatter: De/serialize whether encoding profiles are enabled or not + Reviewers: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D151 + +2015-04-26 18:22:40 +0100 Tim-Philipp Müller + + * Android.mk: + * ges/Makefile.am: + * tools/Makefile.am: + Remove obsolete Android build cruft + This is not needed any longer. + +2015-04-23 20:20:29 +0100 Tim-Philipp Müller + + * .gitignore: + Update .gitignore + +2015-04-22 15:07:58 +0200 Edward Hervey + + * tools/utils.c: + tools: Fix string leak + Only allocate the return string when we know we are going to return + it. + Coverity CID #1292292 + +2015-04-22 10:39:25 +0200 Sebastian Dröge + + * INSTALL: + Remove INSTALL file + autotools automatically generate this, and when using different versions + for autogen.sh there will always be changes to a file tracked by git. + +2015-04-21 11:24:38 +0200 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + ges:xml-formatter: Call g_markup_parse_context_end_parse + Summary: + Otherwise the parser context will never know that is all the XML it + will receive and fail out if the XML document is not valid (in that + case if it does not end) + https://bugzilla.gnome.org/show_bug.cgi?id=746354 + Reviewers: Mathieu_Du + Reviewed By: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D38 + +2015-04-20 17:42:44 +0200 Thibault Saunier + + * ges/ges-timeline.c: + ges: Add debug output when get_element returns NULL + +2015-04-15 12:18:15 +0200 Thibault Saunier + + * tools/ges-launcher.c: + tools:launch: Print out the timeline description as an INFO not an ERROR + +2015-04-15 12:18:15 +0200 Thibault Saunier + + * tools/ges-launcher.c: + tools:launch: clean user facing message on wrong timeline description + Summary: + Before: + $ ../gst-editing-services/tools/ges-launch-1.0 -p + 0:00:00.028629728 8155 0x17e1b60 ERROR default ges-launcher.c:214:_create_timeline: serialized timeline is -p + ** (lt-ges-launch-1.0:8155): ERROR **: Could not create timeline, error: Could not find a suitable formatter + [1] 8155 trace trap (core dumped) ../gst-editing-services/tools/ges-launch-1.0 -p + $ + After: + $ GST_DEBUG=0 ges-launch-1.0 -p + ERROR: Could not create timeline, error: Could not find a suitable formatter + $ + Reviewers: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D95 + +2015-04-08 23:33:27 +0200 Mathieu Duponchelle + + * ges/nle/nleobject.c: + * tests/check/nle/common.c: + nleobject: It is wrong to update object->stop in set_property. + Summary: It must only be done when the object is commited. + We can do that in constructed though, as the changes will + anyway be commited when the object is added to a composition. + Also update the tests, as we set properties spearately then + check the stop, we can commit the source at its creation without + removing meaning from the tests. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D84 + +2015-04-08 21:38:48 +0200 Mathieu Duponchelle + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track.c: + timeline, track: Emit commited at the correct moment. + Summary: + + [API] GESTrack::commited signal. + + [API] ges_track_commit_sync + We were emitting commited when timeline_commit was called, which + wasn't very helpful. This commit makes it so we emit commited once + all the compositions have actually been commited. + We also add a synchronous commit method to spare the user + the need to connect to the signal and wait, and update the + documentation. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D83 + +2015-04-07 22:48:27 +0200 Mathieu Duponchelle + + * ges/ges-layer.c: + layer: call timeline_element_set_timeline in layer_set_timeline. + Summary: + Otherwise if there was still a reference to the layer when it + is removed from the timeline, it fails when the last reference + is released, because timeline_element_set_timeline calls + timeline_remove_element, which tries to remove the element from + an already disposed hashtable. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D82 + +2015-04-08 17:05:19 +0200 Edward Hervey + + * common: + * tests/check/Makefile.am: + tests: Use AM_TESTS_ENVIRONMENT + Needed by the new automake test runner + +2015-04-03 17:38:53 +0200 Mathieu Duponchelle + + * data/completions/ges-launch-1.0: + * ges/ges-command-line-formatter.c: + * ges/ges-structure-parser.c: + * ges/ges-structured-interface.c: + * ges/parse.l: + * tools/ges-launch.c: + ges-launch: Add support for +test-clip + Summary: With the pattern as a mandatory argument. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D68 + +2015-04-03 16:48:03 +0200 Mathieu Duponchelle + + * ges/ges-project.c: + ges-project: Surface a meaningful error when no suitable formatter. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D67 + +2015-04-03 15:35:54 +0200 Mathieu Duponchelle + + * tools/ges-launcher.c: + ges-launch: Add a save-only option. + Summary: + Allows to serialize the timeline without playing it back. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D66 + +2015-04-03 18:58:32 +0100 Tim-Philipp Müller + + * autogen.sh: + * common: + Automatic update of common submodule + From bc76a8b to c8fb372 + +2015-03-31 14:26:19 +0200 Mathieu Duponchelle + + * ges/ges-timeline-element.c: + timeline-element: Disconnect child properties handlers. + Summary: + + And freeze notifies while doing so. + We had a race with GstController which isn't MT safe, we can + fix it by propertly disconnecting signals, and making sure + no notifies are emitted while doing so. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D64 + +2015-03-30 18:41:11 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + track: Set any caps features on tmpcaps. + Summary: Before checking if we have a specific constructor for a track type. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D63 + +2015-03-31 15:29:49 +0200 Mathieu Duponchelle + + * ges/ges-pipeline.c: + pipeline: no reason to disconnect a pad that is NULL anyway. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D62 + +2015-03-25 15:43:16 +0100 Mathieu Duponchelle + + * tests/validate/geslaunch.py: + * tools/ges-launcher.c: + ges-launch: Better document options. + + Sort them by topic + + remove --sample-paths and --sample-paths-recurse. + http://phabricator.freedesktop.org/D58 + +2015-03-24 14:13:54 +0100 Mathieu Duponchelle + + * tools/Makefile.am: + * tools/ges-launch.c: + * tools/ges-launcher.c: + * tools/ges-launcher.h: + * tools/ges-validate.c: + * tools/ges-validate.h: + * tools/utils.c: + * tools/utils.h: + ges-launch: port to GApplication + Summary: + Extract some utility functions. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D55 + +2015-03-25 12:25:54 +0100 Mathieu Duponchelle + + * ges/Makefile.am: + build: no reason to introspect nodist sources. + Summary: g-ir-scanner was erroring like crazy on the generated sources. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D57 + +2015-03-25 12:22:43 +0100 Mathieu Duponchelle + + * ges/ges-pitivi-formatter.c: + ges-pitivi-formatter: Don't flood stdout with alarming conclusions. + Reviewers: thiblahute + Differential Revision: http://phabricator.freedesktop.org/D56 + +2015-03-23 12:27:56 +0100 Mathieu Duponchelle + + * data/completions/ges-launch-1.0: + completions: port to new base gst script + +2015-03-24 17:13:20 +0100 Mathieu Duponchelle + + * data/completions/ges-launch-1.0: + completions: Fix completions after the first command. + +2015-03-24 13:01:39 +0100 Mathieu Duponchelle + + * tools/ges-launch.c: + Revert "ges-launch: no need for a tmp string pointer" + This reverts commit 44a0924c1f6b07f0c91ee8bd03d3ae5d97da92d5. + There indeed is a need for a tmp string pointer. + +2015-03-24 11:21:08 +0000 Luis de Bethencourt + + * tools/ges-launch.c: + ges-launch: no need for a tmp string pointer + +2015-03-24 11:19:09 +0000 Luis de Bethencourt + + * tools/ges-launch.c: + ges-launch: free string before going out of scope + CID #1291632 + +2015-02-26 17:08:43 +0100 Mathieu Duponchelle + + * ges/Makefile.am: + build: fix make distcheck. + +2015-03-17 18:25:02 +0100 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-structured-interface.c: + ges: Do not clear potentially NULL errors + And avoid dereferencing NULL errors + +2015-03-13 12:02:30 +0000 Thibault Saunier + + * data/completions/ges-launch-1.0: + * ges/ges-structure-parser.c: + * ges/parse.l: + ges-launch: Prefix clip, transition and effect instruction with a + + Slightly changing the CLI so that we have indicators of the timeline + commands adding new objects. + +2015-03-01 13:10:55 +0100 Thibault Saunier + + * ges/ges-structured-interface.c: + ges: Accept path as URI in the create clip structured interface + +2015-02-26 13:49:23 +0100 Mathieu Duponchelle + + * tools/ges-launch.c: + ges-launch: Remove useless options, rename some short options. + +2015-02-26 13:19:25 +0100 Mathieu Duponchelle + + * data/completions/ges-launch-1.0: + * tools/ges-launch.c: + bash-completion: Add support for new ges-launch commands. + +2015-02-25 18:01:38 +0100 Mathieu Duponchelle + + * ges/ges-structure-parser.c: + * ges/parse.l: + parse.l: Modify command arguments. + + --clip uri=file:// becomes clip file:// for example. + +2015-02-23 17:41:59 +0100 Thibault Saunier + + * ges/ges-command-line-formatter.c: + * ges/ges-structure-parser.c: + * ges/ges-structure-parser.h: + * ges/ges-structured-interface.c: + * ges/ges-structured-interface.h: + * ges/ges-validate.c: + * tools/ges-launch.c: + ges: command-line-formatter: Properly error out on invalid arguments + +2015-02-23 14:48:18 +0100 Thibault Saunier + + * ges/Makefile.am: + * ges/ges-command-line-formatter.c: + * ges/ges-command-line-formatter.h: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-project.h: + * ges/ges-structure-parser.c: + * ges/ges-structure-parser.h: + * ges/ges-structured-interface.h: + * ges/ges.c: + * ges/ges.h: + * ges/parse.l: + * tools/Makefile.am: + * tools/ges-launch.c: + ges: Factor out a GESCommandLineFormatter class + This formatter will allow any user to deserialize a timeline using + the new ges-launch command line interface + +2015-02-23 00:53:14 +0100 Mathieu Duponchelle + + * ges/ges-structured-interface.c: + * ges/ges-validate.c: + structured-interface: Be clever when no layer priority specified. + And add the new element to the same layer as the last clip that + was added, insted of adding to the last layer of the timeline + (and with the current code, actually adding a new layer each time) + +2015-02-21 15:30:57 +0100 Mathieu Duponchelle + + * ges/ges-structured-interface.c: + ges-structured-interface: fix build + +2015-02-20 12:26:54 +0100 Thibault Saunier + + * ges/ges-structured-interface.c: + ges: Automatically put clips at the end of layer if no start specified + In the 'structured' interface we should add it at the end of the layer + And make use of the new ges_timeline_get_layer API + +2015-02-19 19:29:36 +0100 Mathieu Duponchelle + + * ges/ges-structured-interface.c: + * tools/ges-launch.c: + structure-interface: rename layer-priority to layer. + + And add a short name for it in ges-launch. + +2015-02-20 12:12:52 +0100 Thibault Saunier + + * ges/ges-structured-interface.c: + ges: Add layer up to the wanted layer priority in the structure interface + Making the thing easier to use + +2015-02-19 19:16:44 +0100 Mathieu Duponchelle + + * tools/ges-structure-parser.c: + * tools/parse.l: + ges-launch: parse property names longer than 1 char. + + And finish the previous structure when encountering a setter. + +2015-02-19 13:15:25 +0100 Mathieu Duponchelle + + * tools/ges-structure-parser.c: + * tools/ges-structure-parser.h: + * tools/parse.l: + ges-launch: Update lexer / parser to handle set-* + + cleanup of the lexer + +2015-02-19 18:28:41 +0100 Thibault Saunier + + * tools/ges-launch.c: + * tools/ges-structure-parser.c: + tools: Implement a new CLI interface for the timeline creation + +2015-02-19 12:34:21 +0100 Thibault Saunier + + * ges/ges-structured-interface.c: + ges: Handle setting child property on container directly in the structured based interface + +2015-02-19 11:28:48 +0100 Thibault Saunier + + * tools/parse.l: + launcher: Add support to --set-property in the parser + +2015-02-19 08:51:20 +0100 Mathieu Duponchelle + + * .gitignore: + * configure.ac: + * tools/Makefile.am: + * tools/ges-launch.c: + * tools/ges-structure-parser.c: + * tools/ges-structure-parser.h: + * tools/parse.l: + ges-launch: Implement a new parser for the commandline. + Summary: + flex-based lexing and manual simplistic parsing. + Test Plan: Use that stuff to make awesome things, see if it breaks. + +2015-02-17 23:48:12 +0100 Thibault Saunier + + * ges/Makefile.am: + * ges/ges-structured-interface.c: + * ges/ges-structured-interface.h: + * ges/ges-validate.c: + ges: Add an internal GstStructure based interface + To be use by GstValidate action and ges-launch + Reviewers: Mathieu_Du, thiblahute + Differential Revision: http://phabricator.freedesktop.org/D42 + +2015-03-19 09:32:25 +0100 Thibault Saunier + + * ges/ges-timeline-element.c: + ges: Fix build for older GLib + The return type of g_hash_table_insert changed from void to boolean + +2015-02-19 18:19:44 +0100 Thibault Saunier + + * .arcconfig: + * ges/ges-container.c: + container: implement children property handling + +2015-02-19 16:30:18 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + * tests/check/ges/timelineedition.c: + ges: Move the notion of children properties to GESTimelineElement + Summary: + Deprecate the old GESTrackElement children property handling API. + New APIs: + * ges_timeline_element_list_children_properties + * ges_timeline_element_lookup_child + * ges_timeline_element_get_child_property_by_pspec + * ges_timeline_element_get_child_property_valist + * ges_timeline_element_get_child_properties + * ges_timeline_element_set_child_property_valist + * ges_timeline_element_set_child_property_by_pspec + * ges_timeline_element_set_child_properties + * ges_timeline_element_set_child_property + * ges_timeline_element_get_child_property + * ges_timeline_element_add_child_property + * ges_timeline_element_remove_child_property + Deprecated APIs: + * ges_track_element_list_children_properties + * ges_track_element_lookup_child + * ges_track_element_get_child_property_by_pspec + * ges_track_element_get_child_property_valist + * ges_track_element_get_child_properties + * ges_track_element_set_child_property_valist + * ges_track_element_set_child_property_by_pspec + * ges_track_element_set_child_properties + * ges_track_element_set_child_property + * ges_track_element_get_child_property + * ges_track_element_add_child_property + Reviewers: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D40 + +2015-02-20 12:24:49 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: Add API to find a layer with a specific priority in a timeline + Summary: + API: + * ges_timeline_get_layer + Test Plan: Nan + Reviewers: mathieu.duponchelle + +2015-02-20 12:24:49 +0100 Thibault Saunier + + * .arcconfig: + * docs/libs/ges-sections.txt: + * ges/ges-container.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + * tests/check/ges/timelineedition.c: + Revert "ges: Move the notion of children properties to GESTimelineElement" + I got some trouble with + arc land + and I wanted to push the 3 commit coming after this revert as 3 + different commits but they ended up being all squash into one single + commit, which is clearly not cool for later bisecting and blaming. + Reverting that commit and re pushing those 3 commits as they were + supposed to be. + This reverts commit 9fe15ef4354dc1d878dbdec80908ac8541bc6131. + +2015-03-18 20:23:55 +0100 Thibault Saunier + + * .arcconfig: + * docs/libs/ges-sections.txt: + * ges/ges-container.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + * tests/check/ges/timelineedition.c: + ges: Move the notion of children properties to GESTimelineElement + Summary: + Deprecate the old GESTrackElement children property handling API. + New APIs: + * ges_timeline_element_list_children_properties + * ges_timeline_element_lookup_child + * ges_timeline_element_get_child_property_by_pspec + * ges_timeline_element_get_child_property_valist + * ges_timeline_element_get_child_properties + * ges_timeline_element_set_child_property_valist + * ges_timeline_element_set_child_property_by_pspec + * ges_timeline_element_set_child_properties + * ges_timeline_element_set_child_property + * ges_timeline_element_get_child_property + * ges_timeline_element_add_child_property + * ges_timeline_element_remove_child_property + Deprecated APIs: + * ges_track_element_list_children_properties + * ges_track_element_lookup_child + * ges_track_element_get_child_property_by_pspec + * ges_track_element_get_child_property_valist + * ges_track_element_get_child_properties + * ges_track_element_set_child_property_valist + * ges_track_element_set_child_property_by_pspec + * ges_track_element_set_child_properties + * ges_track_element_set_child_property + * ges_track_element_get_child_property + * ges_track_element_add_child_property + Reviewers: Mathieu_Du + Reviewed By: Mathieu_Du + Differential Revision: http://phabricator.freedesktop.org/D40 + +2015-03-01 21:13:35 +0100 Thibault Saunier + + * ges/ges-types.h: + ges: Remove all reference to already dead GESSimpleLayer + +2015-03-05 13:53:15 +0000 Luis de Bethencourt + + * ges/ges-project.c: + project: remove unnecessary dereference + g_clear_error() already dereferences the error pointer, no need to manually + check and do it. + CID #1257630 + +2015-03-03 14:26:40 +0000 Luis de Bethencourt + + * tests/examples/test4.c: + examples: check argument is valid + +2015-02-27 01:26:24 +0000 Tim-Philipp Müller + + * ges/ges-base-xml-formatter.c: + ges-base-xml-formatter: fix setting of child properties + Make sure all child properties get set. GstStructureForeachFunc + takes a gboolean return value that decides whether to + continue or not. + +2015-02-27 01:22:39 +0000 Tim-Philipp Müller + + * ges/ges-meta-container.c: + ges-meta-container: fix ges_meta_container_foreach() + Really call function on all metadata inside the container + instead of stopping randomly. GstStructureForeachFunc + takes a gboolean return value. + +2015-02-26 20:14:31 +0000 Tim-Philipp Müller + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + ges-base-xml-formatter: fix property setting + GstStructureForeachFunc has a gboolean return value, + and the foreach function will stop unless we return + TRUE here. This meant it was potluck whether all + properties in the structure got set or not. + Fixes setting of text overlay clip text property + in particular. + https://bugzilla.gnome.org/show_bug.cgi?id=743874 + +2015-02-24 18:00:34 +0100 Mathieu Duponchelle + + * configure.ac: + build: fix make distcheck. + And install bash-completions in the supplied prefix. + +2015-02-20 15:22:25 +0100 Mathieu Duponchelle + + * Makefile.am: + * configure.ac: + * data/completions/ges-launch-1.0: + ges-launch: enable auto-completion. + Summary: + And be a little smart about it. + Test Plan: New feature, working, not testing bash completion + Reviewers: tsaunier + Differential Revision: http://internal.opencreed.com:8888/D25 + +2015-02-20 13:51:47 +0100 Thibault Saunier + + * ges/ges-track.c: + ges: Always set ANY capsfeatures on tracks caps property + Summary: + We should not restrict the CapsFeatures on the track caps. + If someone want to do such a restriction he should add it to + the restriction caps directly + Test Plan: Run testsuite + Reviewers: mathieu.duponchelle + +2015-02-19 17:33:12 +0100 Mathieu Duponchelle + + * ges/ges-project.c: + ges-project: no need to commit an empty timeline. + Summary: Can lead to deadlocks if the user commits at the same time. + Test Plan: Ran make check, it worked + Reviewers: tsaunier + +2015-02-10 10:29:39 +0000 Luis de Bethencourt + + * ges/ges-track.c: + ges: initialize timeline_duration value + If priv->timeline is False the function does not set any value for + timeline_duration before using it in gap_new (). Initialize the value to aviod + unexpected behaviour. + CID #1268405 + +2015-02-06 10:01:14 +0100 Thibault Saunier + + * configure.ac: + configure: Bump our Gst related dependencies to 1.5.0.1 + +2015-02-04 15:21:55 +0100 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Properly protect the children task + +2015-02-03 12:02:42 +0100 Mathieu Duponchelle + + * ges/ges-track.c: + * ges/nle/nlecomposition.c: + * tests/check/nle/common.c: + * tests/check/nle/nlecomposition.c: + Cleanly handle removing the last object in a composition + The strategy here is to seek at the new end of the composition. And in + GES we always add a 1ns long gap at the end of the tracks so that all + track have the exact same duration, and we have black frames when the + timeline is empty + +2015-02-02 11:57:19 +0100 Thibault Saunier + + * ges/ges-validate.c: + validate: Do not wrongly set clip duration for UriClips + That was making no sense at all.... + +2015-01-12 13:04:16 +0100 Thibault Saunier + + * ges/ges-validate.c: + validate: Properly expose the commit action as ASYNC + +2015-01-27 21:16:05 +0100 Thibault Saunier + + * ges/ges-layer.c: + layer: Remove child from children list before emitting "child-removed" + +2015-01-26 18:25:02 +0000 Luis de Bethencourt + + * ges/nle/nlecomposition.c: + ges: remove useless gpointer variable + gpointer useless is indeed useless since we can use GST_DEBUG_REGISTER_FUNCPTR + to avoid having to store the return of the GST_DEBUG_FUNCPTR registration. + CID #1265771 + +2015-01-26 17:46:36 +0000 Luis de Bethencourt + + * ges/ges-timeline.c: + ges: merge MIN() and MAX() into CLAMP() + Merge the usage of MIN() and MAX() into one CLAMP() function. + CID #1265770 + +2015-01-24 10:54:13 +0100 Thibault Saunier + + * ges/ges.c: + ges: Make sure the GESTextOverlayClip is register on init + So it can be used when de serializing projects containing it. + https://bugzilla.gnome.org/show_bug.cgi?id=743406 + +2015-01-12 16:14:32 +0100 Stefan Sauer + + * common: + Automatic update of common submodule + From f2c6b95 to bc76a8b + +2014-12-18 10:56:54 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From ef1ffdc to f2c6b95 + +2014-12-13 15:13:32 +0100 Thibault Saunier + + * tools/ges-launch.c: + tools: Avoid trying to remove a signal handler that has already been removed + +2014-12-12 12:02:41 +0100 Thibault Saunier + + * ges/ges-uri-asset.c: + uri-asset: Check that the newly computed URI exist + No the one we know failed! + +2014-12-10 10:21:16 +0100 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-validate.c: + validate: Add an action type to load a project from its content + +2014-12-06 10:41:25 +0100 Thibault Saunier + + * ges/ges-video-track.c: + Revert "track: [API]: ges_track_update_restriction_caps." + This reverts commit e9544ce1d67da6990f0a1cae75774063ec37be9d. + This commit should never have landed we decided we do not want to do + that. + +2014-12-01 00:38:07 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: Add a method to easily check if a timeline is empty + API: + + ges_timeline_is_empty + +2014-12-01 00:34:38 +0100 Thibault Saunier + + * ges/ges-group.c: + * ges/ges-timeline.c: + * tests/check/ges/group.c: + ges: Recompute Group priority when one of its clip.layer change priority + And add a unit test for that case where it was previously failing + +2014-11-29 01:12:43 +0100 Thibault Saunier + + * tests/validate/geslaunch.py: + validate: Start using the new testsuite based API from GstValidate + +2014-11-26 00:28:35 +0100 Mathieu Duponchelle + + * ges/ges-video-track.c: + track: [API]: ges_track_update_restriction_caps. + + And specify default restriction caps for audio and video tracks. + + Add ges_track_set_restriction_caps to the sections, it was missing. + https://bugzilla.gnome.org/show_bug.cgi?id=740726 + +2014-11-25 23:35:55 +0100 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/integration.c: + tests: Remove integration tests, GstValidate is the way forward! + +2014-11-25 19:15:52 +0100 Thibault Saunier + + * tests/validate/geslaunch.py: + * tools/ges-launch.c: + validate: Handle long tests in the TestManager + + Minor bug fixes + +2014-11-25 19:14:59 +0100 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Minor debug enhancements + +2014-11-25 19:13:02 +0100 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Expose playsink::video-filter and playsink::audio-filter + That can be used to add filters at the very end of the pipeline, + and one can think of adding a watchdog element in there for + example. + +2014-11-25 18:46:03 +0100 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Dot not check for chain->tee twice + +2014-11-21 19:53:52 +0100 Thibault Saunier + + * ges/ges-validate.c: + * tools/ges-validate.c: + validate: Avoid depending on not stable APIs + And cleanup includes + +2014-11-21 19:53:36 +0100 Thibault Saunier + + * ges/ges-validate.c: + validate: Move to new action type registration API + +2014-11-16 20:07:24 +0100 Thibault Saunier + + * ges/ges-validate.c: + validate: Add missing action execution printing + +2014-11-16 20:05:25 +0100 Thibault Saunier + + * ges/ges-timeline-element.c: + timeline-element: Properly handle setting name to NULL + +2014-11-04 15:38:05 +0100 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-pipeline.c: + * ges/ges-track.c: + * ges/nle/nlecomposition.c: + nlecomposition: Add a 'query-position' signal + In order to get the precise position of the pipeline, the only + way is to ask the 'application' to query the pipeline position and + use it. + +2014-11-03 12:18:35 +0100 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-project.h: + * ges/ges-uri-asset.h: + * ges/ges.c: + * tools/ges-launch.c: + ges: Keep backward compatibility for relocated assets CLI + Meaning adding an API for user to add relacation URI paths + API: + ges_add_missing_uri_relocation_uri + +2014-11-03 12:17:42 +0100 Thibault Saunier + + * .gitignore: + Add some ignore files to .gitignore + +2014-11-03 11:59:32 +0100 Thibault Saunier + + * ges/ges.c: + * ges/ges.h: + ges: Add a method to pass argc/argv to GES at init time + Allowing user to set configuration actions without using + the GES GOptionGroup + https://bugzilla.gnome.org/show_bug.cgi?id=740717 + +2014-11-03 11:58:30 +0100 Thibault Saunier + + * ges/Makefile.am: + * ges/ges-validate.c: + * ges/ges.h: + * tools/ges-validate.c: + * tools/ges-validate.h: + validate: Expose GES Validate action + So other can also make use of those action outside + ges-launch itself + https://bugzilla.gnome.org/show_bug.cgi?id=740718 + +2014-11-03 11:55:29 +0100 Thibault Saunier + + * ges/ges-uri-asset.c: + uri-asset: Ensure that UriAssets loaded with error are remembered + +2014-11-03 11:54:10 +0100 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-project.h: + project: Add a method to create assets synchronously + This allows to create a add an asset to a project in a + synchronous way. + API: + ges_project_create_asset_sync + https://bugzilla.gnome.org/show_bug.cgi?id=740716 + +2014-11-03 11:51:51 +0100 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-project.h: + * ges/ges.c: + * tools/ges-launch.c: + ges: Add an init option to set media paths for moved assets + Allowing user to easily set a set of paths to look for moved + assets instead of needing the to re implement that logic + over and over. + https://bugzilla.gnome.org/show_bug.cgi?id=740714 + +2014-11-03 11:14:45 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges.c: + * ges/ges.h: + ges: Add a method to get GES GOption group + This allow us to have global options to be + passed as arguments of the program to configure + GES behaviour + API: + ges_init_get_option_group + https://bugzilla.gnome.org/show_bug.cgi?id=740715 + +2014-11-16 16:51:54 +0100 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Disable encoding format renegotiation when rendering + +2014-12-05 22:19:32 +0100 Mathieu Duponchelle + + * tests/check/ges/track.c: + check/ges/track: add forgotten test file. + +2014-11-26 01:08:31 +0100 Mathieu Duponchelle + + * ges/ges-audio-source.c: + * ges/ges-title-source.c: + * ges/ges-video-source.c: + *source: new lines in xml break my parser. + + So I removed them cause I'm clever + https://bugzilla.gnome.org/show_bug.cgi?id=740727 + +2014-11-26 20:34:24 +0100 Mathieu Duponchelle + + * docs/libs/ges-sections.txt: + * ges/ges-audio-track.c: + * ges/ges-track.c: + * ges/ges-track.h: + * tests/check/Makefile.am: + * tests/check/ges/.gitignore: + track: [API]: ges_track_update_restriction_caps. + + And specify default restriction caps for audio tracks. + + Add ges_track_set_restriction_caps to the sections, it + was missing. + https://bugzilla.gnome.org/show_bug.cgi?id=740726 + +2014-11-27 17:13:27 +0100 Edward Hervey + + * common: + Automatic update of common submodule + From 7bb2bce to ef1ffdc + +2014-11-10 17:24:11 +0100 Thibault Saunier + + * tests/check/Makefile.am: + tests: Fix make distcheck + Some xges project are not used anymore and some new appeared, clean + that up in the Makefile.am + +2014-11-10 16:20:29 +0100 Thibault Saunier + + * ges/ges-timeline-element.c: + * ges/ges-xml-formatter.c: + element: Add a property allowing user to avoid serializing TimelineElements on demand + +2014-10-27 16:51:42 +0100 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-group.c: + * ges/ges-internal.h: + * ges/ges-timeline.c: + * ges/ges-xml-formatter.c: + * tests/check/ges/group.c: + * tests/check/ges/project.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + xml-formatter: Serialize groups + They were not serialized until now. + That implies several changes: + * Override GESTimelineElement [start, inpoint, duration] properties in + GESGroup to ensure that those properties are not serialized as they + should not be. + * Rename GESBaseXmlContainer->clips field to + GESBaseXmlContainer->containers as the hashtable now contains Groups + https://bugzilla.gnome.org/show_bug.cgi?id=709148 + +2014-11-03 13:06:34 +0100 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Do not relink an already linked track + +2014-11-02 11:46:37 +0100 Thibault Saunier + + * ges/gstframepositionner.c: + * tests/check/ges/timelineedition.c: + frameposition: In case sources have the same size as track, follow track size + For example if the size has been serialized in a file, but the user has + not personalized the size, we want that whenever the restriction caps + change the size, the video should take the size of the track + restriction caps. + We know need to keep track of the current positionner.size even if + setting through caps size changes. + https://bugzilla.gnome.org/show_bug.cgi?id=739527 + +2014-11-01 11:32:16 +0100 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + xml-formatter: Do not forget to set properties on the track elements + We were just setting children properties, even if the propertie to be + set on themselves where properly passed in + https://bugzilla.gnome.org/show_bug.cgi?id=729487 + +2014-11-01 10:34:41 +0100 Thibault Saunier + + * ges/ges-title-source.c: + * ges/ges-title-source.h: + title-source: Expose the shaded-background property + Rework the way we override the background property to avoid trying to + lookup shaded-foreground-color! + https://bugzilla.gnome.org/show_bug.cgi?id=728635 + +2014-11-01 09:47:39 +0100 Thibault Saunier + + * ges/ges-title-source.c: + titlesource: Expose the outline-color property + https://bugzilla.gnome.org/show_bug.cgi?id=728634 + +2014-10-31 11:56:16 +0100 Thibault Saunier + + * tools/ges-launch.c: + tools: launch: Wait for the project to be loaded to activate gst-validate + Otherwize we could have a race where GstValidate actions are launched + even before the project has been loaded + +2014-10-31 11:32:37 +0100 Thibault Saunier + + * tools/ges-launch.c: + tools: Never try to propose same URI when we know it is missing URI + +2014-10-28 18:36:55 +0100 Mathieu Duponchelle + + * ges/ges-pipeline.c: + * ges/ges-timeline.c: + pipeline: connect tracks when added, not only on state change. + + ghost track src pad before calling track added so that + pipeline has a pad to link. + + Remove silly comment. + +2014-10-30 12:36:57 +0100 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-title-source.c: + * ges/ges-video-source.c: + Document known and usable child properties for GESTrackElements subclasses + +2014-10-30 12:38:16 +0100 Thibault Saunier + + * tools/ges-launch.c: + tools:launch: Properly terminate when we get a SIGINT signal + +2014-10-29 13:40:55 +0100 Thibault Saunier + + * ges/ges-title-source.c: + * ges/ges-title-source.h: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + trackelement: Add a lookup_child vmethod + This method can be used for subclass to override the default behaviour + for child lookup. This vmethod can be used for example in the case where + you want the name of a child property to be 'overridden'. + As an example in the GESTitleSource where we have a videotestsrc + which has a 'foreground-color' property that is used in the TitleSource + to set the background color of the title, this vmethod is now used to + tweak the name passed as parameter to rename "background" to + "foreground-backend" making our API understandable. + API: + GESTrackElement::lookup_child + https://bugzilla.gnome.org/show_bug.cgi?id=727880 + +2014-10-29 12:44:17 +0100 Thibault Saunier + + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + title: Deprecate all method related to child properties + The standard way setting children properties is by using the + GESTrackElement::set_child_propery and friend methods + https://bugzilla.gnome.org/show_bug.cgi?id=727880 + +2014-10-29 13:38:13 +0100 Mathieu Duponchelle + + * tools/ges-validate.c: + ges-validate: inform of clip removal. + +2014-10-29 13:25:06 +0100 Mathieu Duponchelle + + * ges/ges-timeline.c: + timeline: connect_after to layer.object_added. + We want the user provided signal handlers to be called before + we add track elements. + +2014-10-28 17:33:09 +0100 Mathieu Duponchelle + + * ges/nle/nlecomposition.c: + * ges/nle/nleobject.c: + nle: Downgrade some INFO to DEBUG. + + makes it more pleasant to read logs in info. + +2014-10-22 13:49:27 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + * ges/nle/nleobject.c: + * ges/nle/nleobject.h: + * ges/nle/nleoperation.c: + * ges/nle/nlesource.c: + * tests/check/Makefile.am: + nle: Handle sending SEEK event recursively to our children + Instead of relying on it being implemented in core (as it is currently + not!) + +2014-10-06 12:30:17 +0200 Thibault Saunier + + * tests/check/nle/nlecomposition.c: + tests: Use audiomixer as an audio mixing element + Adder is the past! + +2014-10-01 10:04:53 +0200 Thibault Saunier + + * tools/ges-validate.c: + validate: Implement validate Action type to handle KeyFrames + New action types: + * set-control-binding + * add-keyframe + * remove-keyframe + +2014-10-01 09:54:49 +0200 Thibault Saunier + + * ges/ges-track-element.c: + track-element: Add a signal about added control bindings + API: + GESTrackElement::control-binding-added + +2014-10-01 09:53:44 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-internal.h: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-xml-formatter.c: + track-element: Add an API to list all set ControlBinding + API: + ges_track_element_get_all_control_bindings + +2014-09-27 09:59:12 +0200 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-xml-formatter.c: + title-source: Properly expose children properties + + Make sure that the TitleClip properties are not serialized anymore as + they are serialized through children properties now. + + Enhance debugging for not serialized properties in GESXmlFormatter. + +2014-09-26 18:28:16 +0200 Mathieu Duponchelle + + * ges/nle/nlecomposition.c: + nlecomposition: update base time before seeking current stack. + There could be a race where the new segments were pushed after + a seek on some / all pads before the operation had had its basetime + updated, and thus incoming segments were tweaked wrongly. + Reproducible with 3 clips composited and multiple seeks, + FIXME hard to validate. + +2013-09-14 01:35:55 +0200 Joris Valette + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + formatter: save and load source's children properties + +2013-09-23 18:40:34 +0200 Joris Valette + + * tests/check/ges/project.c: + * tests/check/ges/test-properties.xges: + tests: project: Add children properties check + Rename test_project_add_keyframes into test_project_add_properties + +2014-09-26 18:39:19 +0200 Thibault Saunier + + * ges/ges-project.c: + project: Do not concider adding am already tracked asset as failure + It is not really a failure, just a special case. + +2014-09-26 17:51:14 +0200 Thibault Saunier + + * tools/ges-launch.c: + * tools/ges-validate.c: + ges-validate: Add actions to add/remove object from container + + Add an action to set an asset on a GESTimelineElement + +2014-09-26 17:50:03 +0200 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Fix edit_container return code + It used to always return FALSE. + + Fix minor leaks + + Do not seek ourself, it is users responsability to seek and + commit these days. + +2014-09-26 17:44:12 +0200 Thibault Saunier + + * ges/ges-extractable.c: + * ges/ges-extractable.h: + * ges/ges-transition-clip.c: + extractable: Make extractable_set_asset return a boolean + WARNING: This is a minor API breakage, it should be harmless + and allows us to let users know whether changing setting the + asset worked or no. + +2014-09-25 17:31:49 +0200 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Add an action type to set restriction caps on track + +2014-09-25 17:31:05 +0200 Thibault Saunier + + * tools/ges-launch.c: + * tools/ges-validate.c: + * tools/ges-validate.h: + tools: Handle asset relocation for assets from scenario + Allowing us to share scenario and media file! + +2014-09-25 15:30:55 +0200 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Add support for Layer.auto-transition + + Fix a bug where the mandatory field name for the name of the clip to + remove in remove-clip did not correspond to what we used in the action + (clip-name vs name). + +2014-09-25 14:59:40 +0200 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Add commit and split-clip action types + And stop commit at the end of other action types, this now + has to be done in the scenario itself. + +2014-09-25 14:57:35 +0200 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Add start/inpoint/duration params to the add-clip action + +2014-09-25 14:55:15 +0200 Thibault Saunier + + * tools/ges-launch.c: + tools:ges-launch: Save the project at the end of execution + So that changes from scenarios are taken into account + +2014-09-25 14:53:36 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Fix the get_current_position method + +2014-09-23 15:01:56 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Wait for a buffer from the new segment to restart task + Avoiding races where we would launch a seek right after a FLUSH_STOP and + before we get a Buffer which would possibly lead to ERROR message when upstream + elements try to push a buffer and check_sticky fails because downstream + is flushing. + +2014-09-22 18:58:43 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Do useless thing so that the compiler doesn't warn us! + Otherwize we get a gcc warning about useless statements. + +2014-09-19 17:14:51 +0200 Thibault Saunier + + * tools/ges-launch.c: + tools:ges-launch: Do not set pipeline state before the timeline is ready + When we are loading a project + +2014-09-19 17:13:52 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Update start stop and duration on initialization + So that the composition is usable right after the initialization + +2014-09-19 17:12:18 +0200 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-timeline.c: + * ges/ges-track.c: + ges: Avoid to always commit when a project is loaded + In case we are not in a PLAYING state and the project is loaded, the + only thing that should be done is to fill the gaps and this way when the + composition get to PLAYING, their initialization will be enough to get + everything on track. + +2014-09-19 12:58:26 +0200 Thibault Saunier + + * tests/check/nle/nlecomposition.c: + * tests/check/nle/simple.c: + tests: Use the new gst_check_objects_destroyed_on_unref function + +2014-09-19 12:57:30 +0200 Thibault Saunier + + * configure.ac: + * ges/ges-track.c: + * tests/check/nle/common.c: + Start taking advantage of the fact that NLE is in the same three as GES! + +2014-09-19 12:55:51 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Fix several leaks + * In the action closure invokation we were alway leaking the composition. + * gst_bin_add will actually take an extra ref since we already gst_object_ref_sink so we + own the object, other call to that method will increase the refcount which means we do + not need to pass an extra ref to the bin. + * We want to ref_sink right when the object is added to the composition, making things + cleaner and simpler to follow in the tests. + +2014-09-19 12:52:45 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Activate the composition ghostpad to flush downstream + Since commit 060b16ac75ac227d4cfe1db89ccdc4f4b31545ff + "pad: don't accept flush-stop on inactive pads" in -core, the flush_stop event will not be + fowarded downstream in case the pad is not activated. In our case the element is in + READY state, so pads are deactivated. In that commit we simply make sure that the + event can be fowarded downstream + +2014-09-19 12:49:52 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nlecomposition: Restart the main task on FLUSH_STOP + It means stop using a dedicated probe to restart task so that the main probe does not + drop the FLUSH_STOP event before we have a chance to restart the task. (and this is + for sure cleaner/and simpler to read). + +2014-09-19 12:29:28 +0200 Thibault Saunier + + * ges/nle/nlesource.c: + nle:source: Protect the probeid field with the GST_OBJECT_LOCK + Avoiding races where we try to remove a probe on an already destroyed pad. + +2014-09-19 12:28:05 +0200 Thibault Saunier + + * ges/gstframepositionner.c: + framepositionner: Add a weak pointer to the track_source + Avoiding assertions when the object is destroyed. + +2014-08-25 18:11:52 +0200 Mathieu Duponchelle + + * ges/nle/nlesource.c: + nle: Seek gnlsource when prerolled only + Instead of implementing seek on ready all around GStreamer, just + seek in PAUSED, when the source gets 'prerolled'. + +2014-08-28 10:20:24 +0200 Thibault Saunier + + * ges/ges-track.c: + ges-track: Do not set removed object state + It is the composition to handle + +2014-08-20 13:15:30 +0200 Thibault Saunier + + * ges/nle/nlecomposition.c: + nle: Stop using a MainContext avoiding needing one iter per source dispach + Using GClosure to handle the source handling and handle our action + ordering ourselves + https://bugzilla.gnome.org/show_bug.cgi?id=733342 + +2014-10-21 11:01:17 +0200 Thibault Saunier + + * ges/ges-audio-transition.c: + * ges/ges-smart-adder.c: + ges: Use audiomixer instead of adder by default + +2014-10-21 10:59:43 +0200 Thibault Saunier + + * ges/ges-pipeline.c: + * ges/ges-timeline.c: + * ges/ges-track.c: + Port to the new NLE API + Port the timeline, track and pipeline to the new NLE API where + all objects have static src pads. + +2014-08-15 15:48:14 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * docs/random/design: + * docs/random/lifecycle: + * docs/random/scenarios: + * ges/Makefile.am: + * ges/ges-audio-source.c: + * ges/ges-audio-transition.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-layer.h: + * ges/ges-operation.c: + * ges/ges-source.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-track.c: + * ges/ges-utils.c: + * ges/ges-video-source.c: + * ges/ges.c: + * ges/nle/.gitignore: + * ges/nle/gnlmarshal.list: + * ges/nle/nle.h: + * ges/nle/nlecomposition.c: + * ges/nle/nlecomposition.h: + * ges/nle/nleghostpad.c: + * ges/nle/nleghostpad.h: + * ges/nle/nleobject.c: + * ges/nle/nleobject.h: + * ges/nle/nleoperation.c: + * ges/nle/nleoperation.h: + * ges/nle/nlesource.c: + * ges/nle/nlesource.h: + * ges/nle/nletypes.h: + * ges/nle/nleurisource.c: + * ges/nle/nleurisource.h: + * gnl/Makefile.am: + * gnl/gnl.c: + * gnl/gnlobject.h: + * tests/check/Makefile.am: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/check/nle/common.c: + * tests/check/nle/common.h: + * tests/check/nle/complex.c: + * tests/check/nle/nlecomposition.c: + * tests/check/nle/nleoperation.c: + * tests/check/nle/nlesource.c: + * tests/check/nle/seek.c: + * tests/check/nle/simple.c: + * tests/examples/transition.c: + Cleanup import of GNL and rename gnl to nle for Non Linear Engine + Conflicts: + ges/ges-track-element.c + gnl/Makefile.am + gnl/common + Conflicts: + ges/ges-internal.h + ges/ges-track.c + ges/ges-utils.c + ges/nle/.gitignore + ges/nle/gnlmarshal.list + ges/nle/nle.h + ges/nle/nlecomposition.c + ges/nle/nlecomposition.h + ges/nle/nleghostpad.c + ges/nle/nleghostpad.h + ges/nle/nleobject.c + ges/nle/nleoperation.c + ges/nle/nleoperation.h + ges/nle/nlesource.c + ges/nle/nlesource.h + ges/nle/nletypes.h + ges/nle/nleurisource.c + ges/nle/nleurisource.h + gnl/Makefile.am + gnl/gnl.c + gnl/gnl.h + gnl/gnl/gnl.h + gnl/gnl/gnlcomposition.c + gnl/gnl/gnlcomposition.h + gnl/gnl/gnlghostpad.c + gnl/gnl/gnlghostpad.h + gnl/gnl/gnlmarshal.list + gnl/gnl/gnlobject.c + gnl/gnl/gnloperation.c + gnl/gnl/gnloperation.h + gnl/gnl/gnlsource.c + gnl/gnl/gnlsource.h + gnl/gnl/gnltypes.h + gnl/gnl/gnlurisource.c + gnl/gnl/gnlurisource.h + gnl/gnlcomposition.c + gnl/gnlcomposition.h + gnl/gnlghostpad.c + gnl/gnlghostpad.h + gnl/gnlmarshal.list + gnl/gnlobject.c + gnl/gnlobject.h + gnl/gnloperation.c + gnl/gnloperation.h + gnl/gnlsource.c + gnl/gnlsource.h + gnl/gnltypes.h + gnl/gnlurisource.c + gnl/gnlurisource.h + gnl/tests/check/gnl/common.c + gnl/tests/check/gnl/common.h + gnl/tests/check/gnl/complex.c + gnl/tests/check/gnl/gnlcomposition.c + gnl/tests/check/gnl/gnloperation.c + gnl/tests/check/gnl/gnlsource.c + gnl/tests/check/gnl/seek.c + gnl/tests/check/gnl/simple.c + tests/check/gnl/common.c + tests/check/gnl/common.h + tests/check/gnl/complex.c + tests/check/gnl/gnlcomposition.c + tests/check/gnl/gnloperation.c + tests/check/gnl/gnlsource.c + tests/check/gnl/seek.c + tests/check/gnl/simple.c + tests/check/nle/common.c + tests/check/nle/common.h + tests/check/nle/complex.c + tests/check/nle/nlecomposition.c + tests/check/nle/nleoperation.c + tests/check/nle/nlesource.c + tests/check/nle/seek.c + tests/check/nle/simple.c + +2014-08-12 14:35:09 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Commit all values before initializing the pipeline + +2014-08-05 15:43:11 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Prevent update sources from being added after seek. + +2014-07-31 16:02:06 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: only flush stop after seek was set to READY. + +2014-07-29 23:41:45 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Also ignore all messages from children tearing them to READY + At that stage elements should not be taken into account anymore. In some + spacial cases they can post ERROR messages (when trying to push sticky + events on flushing pads) on the bus. We actually do not care about those + issues at that exact point. + +2014-07-28 20:24:50 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Do not try to paused the task that could have been stopped + There was a race where we ended up trying to update the pipeline and + stop our children task at the exact moment where we were actually + setting its state to PAUSED. Take the composition lock and make sure + that can't happen + +2014-07-25 10:55:52 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * tests/check/gnl/gnlcomposition.c: + composition: Post messages on the bus when it updates itself + And properly set the seqnums of those messages so that the application, + parents have the exact information about what is going on and why. + +2014-07-22 18:22:09 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: push flush events on the target. + +2014-07-19 11:41:56 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * gnl/gnlcomposition.h: + * tests/check/gnl/common.c: + composition: No need for action signal to add and remove objects! + +2014-07-21 16:59:24 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: we're initialized even if update_pipeline returned FALSE + +2014-07-21 16:57:14 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: reset base time to 0 when needed. + +2014-07-21 16:54:46 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Forward flushes on initialization + +2014-07-18 04:04:16 +0200 Mathieu Duponchelle + + * gnl/gnlobject.c: + object: make the check for self commit work in a crappy way. + +2014-07-18 04:01:25 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: use g_main_context_set_dispatches_per_iteration () + Let's hope this gets merged ... + +2014-07-15 15:17:43 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: set next_eos_seqnum when we get seeked too. + Co-Authored by: Thibault Saunier + +2014-07-15 15:47:59 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * gnl/gnlghostpad.c: + * gnl/gnlobject.c: + * gnl/gnlobject.h: + gnl: Rely on the GstElement to properly handle their seqnums + Actually it is not exactly thread safe to tweak them ourself at the GNL + level. + Co-Authored by: Mathieu Duponchelle + +2014-07-15 15:16:23 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Always return a value in GSourceFuncs + Co-Authored by: Thibault Saunier + +2014-07-15 15:01:59 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Rename _flush_downstream to _have_to_seek_downstrean + Co-Authored by: Mathieu Duponchelle + +2014-07-15 14:59:54 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + * gnl/gnlobject.h: + * gnl/gnlsource.c: + * tests/check/gnl/common.c: + source: Remove cruft code to seek sources + We now seek on ready and thus do not need to do magic trying to seek + the source as soon as possible as we now do it even sooner than soon. + Co-Authored by: Thibault Saunier + +2014-07-15 09:46:03 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Do not remove all sources when stopping task + We only want to remove updates and seek, commits should be kept + Co-Authored by: Mathieu Duponchelle + +2014-07-15 02:37:25 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Don't send flushes downstream on pipeline update. + The code is still a bit redundant in set_current_bin_to_ready, need + to discuss. + Co-Authored by: Thibault Saunier + +2014-07-14 17:52:36 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Remove locking making sure that we manipulate children in right places + Co-Authored by: Mathieu Duponchelle + +2014-07-14 17:47:07 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Avoid a race in PAUSED_TO_READY + as we were using our children list in there without locking them. + Co-Authored by: Thibault Saunier + +2014-07-14 17:18:23 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: No need to reset the composition when going to PAUSED or NULL + Co-Authored by: Mathieu Duponchelle + +2014-07-14 17:10:35 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Make sure we have a peer when we send flushes downstream + And avoid leaks + Co-Authored by: Thibault Saunier + +2014-07-14 17:06:05 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Minor cleanups + +2014-07-14 16:51:56 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Take the objects lock when reseting the composition + Co-Authored by: Mathieu Duponchelle + +2014-07-14 16:47:45 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Remove the reset children method + as it is all already done in _empty_bin () + Co-Authored by: Thibault Saunier + +2014-07-14 16:44:43 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Set children caps only when they are added to the composition + No need to do it again on READY_TO_PAUSED + Co-Authored by: Mathieu Duponchelle + +2014-07-14 16:41:25 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: No need to children state locked anymore + Co-Authored by: Thibault Saunier + +2014-07-14 16:30:35 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: cleanup dispose / finalize + Co-Authored by: Mathieu Duponchelle + +2014-07-14 16:24:46 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: remove children warning drop HACK. + Co-Authored by: Thibault Saunier + +2014-07-14 16:12:00 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: remove now useless notion of GnlCompositionEntry. + Co-Authored by: Mathieu Duponchelle + +2014-07-14 15:50:58 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: cleanup GnlCompositionEntry before its actual removal. + Co-Authored by: Thibault Saunier + +2014-07-14 15:43:04 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: remove now useless prop "deactivated_elements_state". + Co-Authored by: Mathieu Duponchelle + +2014-07-14 15:40:28 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Remove now useless flag "reset_time". + Co-Authored by: Thibault Saunier + +2014-07-14 15:37:51 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Remove now useless flag "stackvalid". + Co-Authored by: Mathieu Duponchelle + +2014-07-14 15:35:47 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: remove now useless "flushing" flag. + Co-Authored by: Thibault Saunier + +2014-07-14 13:36:31 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Do not use 'update' seek for now + This is not working in our new context and the seek do not work at + all when we set seek start to CLOCK_TIME_NONE and type to TYPE_NONE. + Co-Authored by: Mathieu Duponchelle + +2014-07-14 13:35:24 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Add the stack start/stop that has been set in dotfile name + Co-Authored by: Thibault Saunier + +2014-07-14 13:34:25 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Push flush events *downstream* not 'somewhere' :) + Co-Authored by: Mathieu Duponchelle + +2014-07-13 16:59:15 +0200 Mathieu Duponchelle + + * gnl/gnlsource.c: + source: Atomically change the probe ID + Avoiding races where the probe would be removed 2 times + Co-Authored by: Thibault Saunier + +2014-07-13 11:51:51 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Avoid deadlock when setting current bin to ready (on commit or seek) + We need to make sure that between the time we send flush_start/stop and + the time we actually set the bin to READY, no buffer got prerolled again + as it would lead to a deadlock trying to set the bin to READY (while + deactivating the pads, it needs the streaming lock, which would be + taken in that case) + Co-Authored by: Mathieu Duponchelle + +2014-07-12 20:54:55 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Only sync state of current bin when activating new stack. + Co-Authored by: Thibault Saunier + +2014-07-11 21:59:43 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * tests/check/gnl/complex.c: + * tests/check/gnl/gnlcomposition.c: + * tests/check/gnl/gnloperation.c: + * tests/check/gnl/simple.c: + composition: Start kindergarten task when going to READY. + And stop it when going back to NULL. + Update tests. + Co-Authored by: Mathieu Duponchelle + +2014-07-11 21:58:41 +0200 Mathieu Duponchelle + + * tests/check/gnl/gnlcomposition.c: + composition: add a new failing test for finalize on commit. + Co-Authored by: Thibault Saunier + +2014-07-11 19:13:29 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Make sure to remove all updates when updating the stack + The EOS we received before that became meaningless and thus the + associated GSources should no be triggered + Co-Authored by: Mathieu Duponchelle + +2014-07-11 18:29:17 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Avoid emitting COMMITED like crazy + Co-Authored by: Thibault Saunier + +2014-07-11 18:27:25 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Add an enum to define why we update the stack + Making the code simpler to follow + Co-Authored by: Mathieu Duponchelle + +2014-07-11 17:48:05 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: We are now waiting for caps to restart our task + Co-Authored by: Thibault Saunier + +2014-07-11 17:31:34 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Remove useless functions to add GSources and add debugging + Co-Authored by: Mathieu Duponchelle + +2014-07-11 17:25:44 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Remove DONE fixme + Co-Authored by: Thibault Saunier + +2014-07-11 17:23:29 +0200 Thibault Saunier + + * gnl/gnlghostpad.c: + ghostpad: Do not try to be smarter than possible with seqnum + We can have several CAPS event comming at any time and thuse we will + need to rely on elements to handle their seqnum properly as we can not + do a safe guard at our level + Co-Authored by: Mathieu Duponchelle + +2014-07-11 17:22:24 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Keep our GSources in a list making their thread safe + Co-Authored by: Thibault Saunier + +2014-07-11 16:08:20 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * gnl/gnlghostpad.c: + composition: Concider the last action as DONE when we get a CAPS or SEGMENT + Co-Authored by: Mathieu Duponchelle + +2014-07-11 15:41:50 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: only forward our flush start / stops + Co-Authored by: Thibault Saunier + +2014-07-11 14:18:58 +0200 Thibault Saunier + + * gnl/gnlghostpad.c: + ghostpad: remove useless debug + Co-Authored by: Mathieu Duponchelle + +2014-07-11 14:17:36 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: cleanup and enhance debug + Bye Bye STRAM START you were a brave little debug we will miss you. + Co-Authored by: Thibault Saunier + +2014-07-11 14:11:21 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: do not flush downstream when updating pipeline ourselves. + Co-Authored by: Mathieu Duponchelle + +2014-07-11 12:20:53 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Set update to TRUE when updating the stack because of EOS + Co-Authored by: Thibault Saunier + +2014-07-10 18:01:32 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Handle seeking current stack while PAUSED + Co-Authored by: Mathieu Duponchelle + +2014-07-10 16:26:48 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Add and enhance some debug + Co-Authored by: Thibault Saunier + +2014-07-10 16:21:31 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Dot the newly created stacks + Co-Authored by: Mathieu Duponchelle + +2014-07-10 16:17:20 +0200 Mathieu Duponchelle + + * gnl/gnlghostpad.c: + gnlghostpad: Add some more debugging and fix mistakes in seqnum handling + Co-Authored by: Thibault Saunier + +2014-07-10 15:48:50 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Factor out a function to seek the current stack + Co-Authored by: Mathieu Duponchelle + +2014-07-10 15:46:19 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Set the seqnum only when receiving the actual seek event + Setting it before calling seek_handling is racy! + Co-Authored by: Thibault Saunier + +2014-07-10 15:45:19 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Set the real_eos_seqnum in a dedicated method + Co-Authored by: Mathieu Duponchelle + +2014-07-10 15:43:26 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Reset the real_eos_seqnum when reseting the composition + Co-Authored by: Thibault Saunier + +2014-07-10 15:42:48 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Release OBJECTS_LOCK when emiting the "commited" + Co-Authored by: Mathieu Duponchelle + +2014-07-10 15:33:23 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Use the private struct directly + Co-Authored by: Thibault Saunier + +2014-07-09 12:51:36 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * gnl/gnlobject.c: + * gnl/gnlobject.h: + * gnl/gnloperation.c: + * gnl/gnloperation.h: + gnloperation: Totally clear operations when removing emptying current_bin + Removing linked childre leads to weird behaviour, we want to make sure + that all elements are totally clean when they are out the current bin. + Co-Authored by: Mathieu Duponchelle + +2014-07-08 23:25:09 +0200 Mathieu Duponchelle + + * gnl/gnlghostpad.c: + gnlghostpad: Do not forget to set output segment seqnum + Co-Authored by: Thibault Saunier + +2014-07-08 23:00:29 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Fix the build + Co-Authored by: Mathieu Duponchelle + +2014-07-08 22:59:11 +0200 Mathieu Duponchelle + + * tests/check/gnl/seek.c: + tests:composition: Fix some refcounts + Co-Authored by: Thibault Saunier + +2014-07-08 22:58:02 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Relink nodes *after* setting the seqnum + Co-Authored by: Mathieu Duponchelle + +2014-07-08 22:57:22 +0200 Mathieu Duponchelle + + * gnl/gnlghostpad.c: + gnlghostpad: Do not tolerate getting seeked when no target is set + This should not happen anymore + + Do not set twice events seqnums + Co-Authored by: Thibault Saunier + +2014-07-08 22:55:15 +0200 Thibault Saunier + + * gnl/gnlghostpad.c: + gnlghostpad: Add missing seqnum tweaking + Co-Authored by: Mathieu Duponchelle + +2014-07-08 22:54:31 +0200 Mathieu Duponchelle + + * tests/check/gnl/gnloperation.c: + tests: Use compositor instead of videomixer + Co-Authored by: Thibault Saunier + +2014-07-08 22:53:57 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Handle the case were we get an EOS right after a segment + Co-Authored by: Mathieu Duponchelle + +2014-07-08 13:28:57 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Make basic seeking working + Co-Authored by: Thibault Saunier + +2014-07-07 23:28:43 +0200 Thibault Saunier + + * tests/check/gnl/gnloperation.c: + tests: Start fixing operation tests + Co-Authored by: Mathieu Duponchelle + +2014-07-07 23:24:46 +0200 Mathieu Duponchelle + + * tests/check/gnl/gnlcomposition.c: + * tests/check/gnl/simple.c: + tests: Fix composition tests + We can not expect a seek event anymore as we are seeking in READY the elements + themselves + +remove actual sinks + Co-Authored by: Thibault Saunier + +2014-07-07 23:07:15 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Implement the logic to PAUSE the task while executing actions + We need to wait for the pipeline update to be actually finished before we can start another + action. That means that we pause the task until one buffer from the new stack is + outputed. + Co-Authored by: Mathieu Duponchelle + +2014-07-07 23:08:56 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Do not forget to set expandables state to NULL when disposing + Co-Authored by: Thibault Saunier + +2014-07-07 23:01:24 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Factor out a function to commit only the values + Co-Authored by: Mathieu Duponchelle + +2014-07-07 22:58:27 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Get the current position before actually commiting values on commit + Co-Authored by: Thibault Saunier + +2014-07-07 22:54:25 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Add a method that set the current bin to READY + We need to get the stream lock in some conditions, and thuse send + flush event in those cases. + Co-Authored by: Mathieu Duponchelle + +2014-07-07 22:50:34 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Remove useless code + Co-Authored by: Thibault Saunier + +2014-07-07 22:33:09 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Clear the old stack when removing children that where used + Co-Authored by: Mathieu Duponchelle + +2014-07-07 22:27:21 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Remove useless toplevel_seek argiment from activate_new_stack + Co-Authored by: Thibault Saunier + +2014-07-07 22:25:51 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * gnl/gnlghostpad.c: + * gnl/gnlobject.c: + * gnl/gnlobject.h: + composition: Rework the seqnum logic to avoid races when setting the new stack seqnum + When we were seeking the same stack without a logic that gurantees that we actually + saw the seek with the new seqnum set, we could have ended up with an EOS set with + the right seqnum even if it was actually not the case. + Co-Authored by: Mathieu Duponchelle + +2014-07-07 21:31:01 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Add/Remove children in the same order as they were called + Co-Authored by: Thibault Saunier + +2014-07-07 21:28:28 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Remove useless flush_start argument from the stop_task method + Co-Authored by: Mathieu Duponchelle + +2014-07-06 15:46:22 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Force setting children state to NULL rebfore unrefing them + Co-Authored by: Thibault Saunier + +2014-07-04 11:05:41 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * gnl/gnlghostpad.c: + * gnl/gnlobject.c: + * gnl/gnlobject.h: + compositition: Check last stack in the children thread + Avoiding to take the OBJECT_LOCK when recieving EOS. The computation is + based on the GstEvent.seqnum to make sure that the EOS we receive + corresponds to the right sequence. + In that patch we tweak seqnums so that they are correctly computed + avoiding to depend on all elements to do it properly as it might pretty + much not be the case! + Co-Authored by: Mathieu Duponchelle + +2014-07-04 11:11:53 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Actiually set current_bin state even when not debugging + Co-Authored by: Thibault Saunier + +2014-07-03 17:42:06 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Set *all* children state when going back to READY and then NULL + Co-Authored by: Mathieu Duponchelle + +2014-07-03 17:36:01 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + * gnl/gnlghostpad.c: + * tests/check/gnl/gnlcomposition.c: + composition: Fix toplevel seek event refcounting + Co-Authored by: Thibault Saunier + +2014-07-03 16:46:21 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * tests/check/gnl/complex.c: + composition: Teach the composition to seek same stack + Co-Authored by: Thibault Saunier + +2014-07-03 16:44:05 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * tests/check/gnl/simple.c: + composition: The ref the user gave us is our, and we give another to the bin when needed + Co-Authored by: Mathieu Duponchelle + +2014-07-03 16:41:42 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Rename commit_pipeline_func to commit_func + We do not commit any pipeline, we commit the new state of the composition internals + Co-Authored by: Thibault Saunier + +2014-07-03 14:48:25 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Set the state of the internal bin before removing its children + Otherwize when we set the composition state to READY or NULL we can end + up with children in PAUSED state outside of everything + Co-Authored by: Mathieu Duponchelle + +2014-07-03 14:34:11 +0200 Mathieu Duponchelle + + * tests/check/gnl/common.c: + * tests/check/gnl/simple.c: + tests: Minor cleanup + Co-Authored by: Thibault Saunier + +2014-07-03 14:32:44 +0200 Thibault Saunier + + * gnl/gnlobject.c: + gnlobject: Allow commiting of object that are not inside a composition + Co-Authored by: Mathieu Duponchelle + +2014-07-03 14:32:18 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: Empty current_bin on gnl_composition_reset + Co-Authored by: Thibault Saunier + +2014-07-03 14:31:35 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Remove now useless external_gst_bin_add_remove field + Co-Authored by: Mathieu Duponchelle + +2014-07-03 11:36:20 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + * gnl/gnlsource.c: + composition: Remove now useless pad probes + Co-Authored by: Thibault Saunier + +2014-07-02 21:01:31 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * gnl/gnlghostpad.c: + * gnl/gnlghostpad.h: + * gnl/gnlobject.c: + * gnl/gnlsource.c: + * tests/check/gnl/complex.c: + * tests/check/gnl/gnlcomposition.c: + * tests/check/gnl/gnloperation.c: + * tests/check/gnl/seek.c: + * tests/check/gnl/simple.c: + composition: Add an internal bin where that contain used children + Co-Authored by: Mathieu Duponchelle + +2014-07-02 17:33:35 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * tests/check/gnl/gnlcomposition.c: + composition: Add objects to the pending IO list in a GSource + This way we make sure we do not manipulate our children from another + thread than the dedicated one. + +2014-07-01 18:08:32 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Start implementing seeking in a GSource + +2014-06-30 16:21:30 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * gnl/gnlcomposition.h: + * tests/check/gnl/common.c: + * tests/check/gnl/common.h: + * tests/check/gnl/complex.c: + * tests/check/gnl/gnlcomposition.c: + * tests/check/gnl/gnloperation.c: + * tests/check/gnl/seek.c: + * tests/check/gnl/simple.c: + composition: switch to using an action signal to add and remove objects. + +2014-06-30 16:29:50 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: chain up finalize before clering mcontext_lock. + +2014-06-30 15:12:38 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Initialize the first stack async + +2014-06-29 22:35:34 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * tests/check/gnl/gnlcomposition.c: + * tests/check/gnl/gnloperation.c: + Finish fixing tests + +2014-06-28 14:44:24 +0200 Mathieu Duponchelle + + * tests/check/gnl/common.c: + tests/common: disconnect commited handler + +2014-06-27 16:12:12 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + * tests/check/gnl/common.c: + * tests/check/gnl/common.h: + * tests/check/gnl/complex.c: + * tests/check/gnl/gnlcomposition.c: + * tests/check/gnl/seek.c: + * tests/check/gnl/simple.c: + composition: Actually commit in on our own thread + Avoiding races + +2014-06-27 17:03:44 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: start and stop task in init and finalize + +2014-06-27 17:01:34 +0200 Mathieu Duponchelle + + * tests/check/gnl/gnlcomposition.c: + tests: unref message correctly + +2014-06-27 16:40:19 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + * gnl/gnlcomposition.h: + composition: home grown task + +2014-06-27 16:12:28 +0200 Mathieu Duponchelle + + * tests/check/gnl/gnlcomposition.c: + Don't be sync silly test + +2014-06-27 15:00:48 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + composition: simplify update_pipeline_func + +2014-06-27 16:26:09 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Reset the srcpad target when removing the toplevelentry + +2014-06-27 12:15:10 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + * tests/check/gnl/simple.c: + composition: Use a GstPad task to run the update pipeline thread + +2014-06-26 23:48:09 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + gnlcomposition: Factor out code to deactivate old stack and activate new one + +2014-06-26 19:00:03 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + composition: Avoid looping using gotos + +2014-06-26 18:41:48 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + gnlcomposition: Use the new _object_block_and_drop_data where appropriate + Renaming block_object_src_pad to _object_block_and_drop_data + +2014-06-25 19:39:29 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + gnlcomposition: factor out some functions + +2014-06-25 19:18:29 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + gnlcomposition: Factor out the condition of _parent_or_priority_changed + +2014-06-25 19:17:55 +0200 Thibault Saunier + + * gnl/gnlcomposition.c: + gnlcomposition: Add a function to block object source pad + +2014-06-24 13:44:13 +0200 Mathieu Duponchelle + + * gnl/gnlcomposition.c: + * gnl/gnlghostpad.c: + * gnl/gnlghostpad.h: + * gnl/gnlobject.c: + * gnl/gnlobject.h: + * gnl/gnloperation.c: + * gnl/gnloperation.h: + * gnl/gnlsource.c: + * tests/check/gnl/complex.c: + * tests/check/gnl/gnlcomposition.c: + * tests/check/gnl/gnloperation.c: + * tests/check/gnl/gnlsource.c: + * tests/check/gnl/seek.c: + * tests/check/gnl/simple.c: + gnl: Add the srcpad directly to GnlObject + Starting from now we will not claim that we support GnlObject that have + several source pads as this is + 1- Not true at all; + 2- the design of priorities in the GnlComposition tree does not allow that; + 3- Not very useful in most of the cases and it complexifies quite a lot the code + in the composition. + Conflicts: + configure.ac + tests/check/Makefile.am + +2014-06-25 15:35:08 +0200 Thibault Saunier + + * gnl/gnlobject.c: + Revert "gnlobject: Commit object in READY_TO_PAUSED" + This causes races when seeking, reverting for now even if we will + probably want to bring something like that back. + This reverts commit 3549e745a8f0de3977b83c60e9b447afaf55d8a0. + +2014-06-24 12:52:24 +0200 Mathieu Duponchelle + + * gnl/gnlsource.c: + * gnl/gnlsource.h: + gnlsource: remove useless "controls_one" field. + +2014-10-21 10:35:48 +0200 Thibault Saunier + + * gnl/Makefile.am: + * gnl/gnl.c: + * gnl/gnl.h: + * gnl/gnlcomposition.c: + * gnl/gnlcomposition.h: + * gnl/gnlghostpad.c: + * gnl/gnlghostpad.h: + * gnl/gnlmarshal.list: + * gnl/gnlobject.c: + * gnl/gnlobject.h: + * gnl/gnloperation.c: + * gnl/gnloperation.h: + * gnl/gnlsource.c: + * gnl/gnlsource.h: + * gnl/gnltypes.h: + * gnl/gnlurisource.c: + * gnl/gnlurisource.h: + * tests/check/gnl/common.c: + * tests/check/gnl/common.h: + * tests/check/gnl/complex.c: + * tests/check/gnl/gnlcomposition.c: + * tests/check/gnl/gnloperation.c: + * tests/check/gnl/gnlsource.c: + * tests/check/gnl/seek.c: + * tests/check/gnl/simple.c: + Import GNL from 978332e7c4c3bba1949421d28b492540ab471450 'Release 1.4.0' + +2014-08-15 18:02:36 +0200 Thibault Saunier + + * tests/check/ges/timelineedition.c: + tests: timelineedition: Init GES once at the beginning. + Avoiding to forget to init in a particular test and failling stupidly + +2014-08-15 18:00:24 +0200 Thibault Saunier + + * tests/check/ges/backgroundsource.c: + test: backgroundsource: Disable tests that rely on nlecomposition internals + We can't rely on that, in particular now that it does not actually + add its children all the time but only when it is needed (and that + it has an internal bin where actual things happen). + +2014-08-13 13:15:02 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: Add a method to retrieve a pad from a track + It allows user to easily get the proxied pad from a track. + API: + + ges_timeline_get_pad_for_track + +2014-07-28 15:26:18 +0200 Thibault Saunier + + * tools/ges-launch.c: + tools:launcher: Avoid commiting when we are not done loading the timeline + +2014-07-26 00:31:32 +0200 Thibault Saunier + + * ges/ges-timeline.c: + ges: Use the new GNL element message feature to notify async operations + +2014-07-24 17:55:35 +0200 Mathieu Duponchelle + + * ges/ges-base-xml-formatter.c: + xml-formatter: message-forward is not something that should be parsed. + +2014-07-25 14:47:07 +0200 Mathieu Duponchelle + + * ges/ges-timeline.c: + timeline: handle async start + +2014-10-23 21:46:04 +0200 Mathieu Duponchelle + + * configure.ac: + * tests/Makefile.am: + * tests/validate/Makefile.am: + * tests/validate/geslaunch.py: + * tests/validate/scenarios/Makefile.am: + * tests/validate/scenarios/ges-edit-clip-while-paused.scenario: + tests: implement our validate TestManager. + And make sure it installs alongside the other validate apps. + https://bugzilla.gnome.org/show_bug.cgi?id=739093 + +2014-10-30 15:54:04 +0000 Tim-Philipp Müller + + * ges/ges-smart-video-mixer.c: + smart-video-mixer: unref pads_info hash table in dispose + Before gst_bin_dispose() runs and destroys elements. + +2014-10-30 15:20:18 +0000 Tim-Philipp Müller + + * ges/ges-smart-adder.c: + smart-adder: fix crash in unit test + Unref pads_info hash table in dispose instead of + finalize, i.e. before gst_bin_dispose runs and + destroys pads_info->bin (to which the pads_info + does not hold a ref). + +2014-10-27 18:01:56 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From 84d06cd to 7bb2bce + +2014-10-26 20:36:22 +0000 Tim-Philipp Müller + + * ges/ges-track.c: + track: fix indentation + +2014-10-26 20:35:30 +0000 Tim-Philipp Müller + + * ges/ges-timeline-element.c: + timeline-element: don't leak name string + +2014-10-26 20:34:29 +0000 Tim-Philipp Müller + + * ges/ges-timeline.c: + timeline: fix mutex and all_elements hash table leaks + +2014-10-26 20:33:50 +0000 Tim-Philipp Müller + + * ges/ges-timeline.c: + timeline: free tracks obtained via select-tracks-for-object signal + +2014-10-26 20:32:41 +0000 Tim-Philipp Müller + + * ges/ges-timeline.c: + timeline: free track elements list + +2014-10-26 20:31:40 +0000 Tim-Philipp Müller + + * ges/ges-video-test-source.c: + video-test-source: fix caps leak + +2014-10-26 20:31:26 +0000 Tim-Philipp Müller + + * ges/gstframepositionner.c: + framepositionner: fix caps leak + +2014-10-26 20:31:08 +0000 Tim-Philipp Müller + + * ges/ges-audio-track.c: + audiotrack: fix caps leak + +2014-10-26 20:30:53 +0000 Tim-Philipp Müller + + * ges/ges-video-track.c: + videotrack: fix caps leak + +2014-10-26 20:30:29 +0000 Tim-Philipp Müller + + * ges/ges-track.c: + track: don't leak restriction caps + +2014-10-26 20:29:06 +0000 Tim-Philipp Müller + + * ges/ges-smart-adder.c: + smart-adder: don't leak pads_infos hash table + +2014-10-26 20:28:09 +0000 Tim-Philipp Müller + + * ges/ges-smart-video-mixer.c: + smart-video-mixer: don't leak pads_infos hash table + +2014-10-26 20:27:17 +0000 Tim-Philipp Müller + + * ges/ges-project.c: + project: fix string leak + +2014-10-26 20:25:46 +0000 Tim-Philipp Müller + + * ges/ges-meta-container.c: + metacontainer: don't leak GValue contents + +2014-10-26 20:24:09 +0000 Tim-Philipp Müller + + * tests/check/ges/basic.c: + tests: don't leak clips list in basic unit test + +2014-10-26 20:23:26 +0000 Tim-Philipp Müller + + * Makefile.am: + Parallelise 'make check-valgrind' + +2014-10-22 14:15:11 +0200 Mathieu Duponchelle + + * tools/ges-validate.c: + ges-validate: issues naming have changed. + Update the override. + +2014-10-21 13:04:26 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From a8c8939 to 84d06cd + +2014-10-21 13:01:04 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From 36388a1 to a8c8939 + +2014-10-20 13:37:25 +0200 Thibault Saunier + + * configure.ac: + Back to development + +=== release 1.4.0 === + +2014-10-20 11:56:36 +0200 Thibault Saunier + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.4.0 + +2014-10-16 14:18:16 +0200 Thibault Saunier + + * tools/ges-validate.c: + validate: Fix naming of add_action_type to register_action_type + That function was just renamed in Validate + +2014-10-12 19:46:59 +0200 Thibault Saunier + + * tools/ges-launch.c: + validate: Rename --list-action-types to --inspect-action-type + Making clearer the meaning of the parameter and closer to + the usual naming in the GStreamer land. + +=== release 1.3.90 === + +2014-09-24 11:07:40 +0200 Thibault Saunier + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-editing-services.doap: + Release 1.3.90 + +2014-09-13 16:16:15 +0100 Tim-Philipp Müller + + * configure.ac: + configure: bump (soft) gst-validate requirement + Won't build against all older git versions with + 0.0.1.0 as version number. + +2014-07-20 11:47:18 +0200 Lubosz Sarnecki + + * tools/ges-launch.c: + ges-launch: option to select encoding profile from xml + https://bugzilla.gnome.org/show_bug.cgi?id=735121 + +2014-07-20 11:47:56 +0200 Lubosz Sarnecki + + * tools/ges-launch.c: + ges-launch: clean up help page + https://bugzilla.gnome.org/show_bug.cgi?id=735121 + +2014-09-05 23:14:10 +0200 Thibault Saunier + + * tools/ges-validate.c: + validate: gst_validate_print_action_types now takes a const gchar ** + +2014-09-05 23:08:41 +0200 Thibault Saunier + + * tools/ges-validate.c: + validate: Add the "ges" as implementer namespace for our action types + +2014-09-05 22:09:44 +0300 Sebastian Dröge + + * tools/ges-launch.c: + ges-launch: Fix typo in --help output + +2014-09-05 22:08:49 +0300 Sebastian Dröge + + * tools/ges-launch.c: + * tools/ges-validate.h: + ges-launch: Fix compiler warnings + ges_validate_print_action_types() takes a const gchar **. + +2014-08-22 21:02:58 +0200 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Rename edit-clip to edit-container + So it represent better what the action does at the GES level + +2014-08-22 21:01:07 +0200 Thibault Saunier + + * tools/ges-launch.c: + * tools/ges-validate.c: + * tools/ges-validate.h: + ges-validate: Port to the new GstValidate action registration API + +2014-07-24 19:03:50 +0200 Thibault Saunier + + * tools/ges-validate.c: + tools:validate: Concider seek in PAUSED position being not exact as WARNING + In some corner cases in GNL it is totally correct that a position in a + seek in paused is not perfectly exact + +2014-08-08 10:41:48 +0200 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Let GstValidate handle assert logs + +2014-07-27 15:42:42 +0200 Thibault Saunier + + * tools/ges-launch.c: + * tools/ges-validate.c: + * tools/ges-validate.h: + ges:validate: Port to the new handles-states API + +2014-08-01 10:44:57 +0200 Edward Hervey + + * Makefile.am: + * common: + Makefile: Add usage of build-checks step + Allows building checks without running them + +2014-07-24 13:23:36 +0300 Lazar Claudiu + + * ges/ges-text-overlay.c: + text-overlay: added text properties as child-properties + +2014-06-16 11:38:29 +0200 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-smart-video-mixer.c: + * ges/ges-utils.c: + * ges/ges-video-transition.c: + ges: Use registry to select the compositor element + +2014-07-18 18:27:20 +0200 Mathieu Duponchelle + + * ges/ges-xml-formatter.c: + xml-formatter: Set errno to 0 before g_ascii_strtoll. + +2014-06-12 09:51:02 +0100 Vincent Penquerc'h + + * ges/ges-smart-video-mixer.c: + smart-video-mixer: fix memory leak on error path + Coverity 1212166 + +2014-03-20 17:04:31 +0100 Thibault Saunier + + * ges/ges-track-element.c: + trackelement: Sort paramspec by name in list_children_properties + https://bugzilla.gnome.org/show_bug.cgi?id=720023 + +2014-06-06 12:08:47 +0200 Thibault Saunier + + * tools/ges-launch.c: + tools: Fix transition handling in ges-launch + https://bugzilla.gnome.org/show_bug.cgi?id=730806 + +2014-06-05 04:20:15 +0200 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/ges/clip.c: + * tests/check/ges/test-utils.h: + clip: Fix the ges_clip_set_position function + And enhance the new test + https://bugzilla.gnome.org/show_bug.cgi?id=731248 + +2014-06-05 04:05:06 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.c: + * ges/ges-clip.h: + clip: Rename top_effect_index to top_effect_index + Keeping the old method to not break the API but removing it from the + documentation as users should use the new method (which is the exact + same with a better naming) + https://bugzilla.gnome.org/show_bug.cgi?id=731248 + +2014-06-05 03:48:12 +0200 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-timeline.c: + * tests/check/ges/clip.c: + tests: Check ges_clip_set_position behaviour + + Minor fix to handle properly the feature when clip is not in any layer + https://bugzilla.gnome.org/show_bug.cgi?id=731248 + +2014-06-04 23:16:42 +0200 Alexandru Băluț + + * tests/check/ges/clip.c: + clip: Add test for effects priorities + https://bugzilla.gnome.org/show_bug.cgi?id=731248 + +2014-06-05 02:16:01 +0200 Thibault Saunier + + * ges/ges-pipeline.c: + * tools/ges-launch.c: + pipeline: Add support to rendering without container + + Simplify the support in ges-launch as we should not require the + profile desc to start with : in that case + https://bugzilla.gnome.org/show_bug.cgi?id=731245 + +2014-05-24 19:16:12 +0200 Christoph Reiter + + * ges/ges-enums.c: + Fix invalid GEnumValue.value_name entries. + This makes the enum entries in the gir have valid c:identifiers and documentation. + https://bugzilla.gnome.org/show_bug.cgi?id=730691 + +2014-06-03 17:53:23 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + ges-track: fill the gaps left empty by deactivated track elements. + +2014-05-21 10:54:19 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 211fa5f to 1f5d3c3 + +2014-05-19 12:21:52 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.c: + * ges/ges-clip.h: + * tests/check/ges/clip.c: + ges:clip: Add a method to look for a list of TrackElement-s + + Add unit tests to check it works properly. + API: + + ges_clip_find_track_elements + +2014-05-18 18:34:26 +0200 Thibault Saunier + + * tools/ges-launch.c: + * tools/ges-validate.c: + * tools/ges-validate.h: + tools: Handle request state changes from GstValidate + +2014-05-15 20:44:35 +0200 Thibault Saunier + + * ges/ges-timeline-element.c: + * tests/check/ges/basic.c: + ges: Do not forget to update the count when updating already used name + That could still lead to naming conflicts + +2014-05-15 19:37:05 +0200 Thibault Saunier + + * ges/ges-video-source.c: + ges: Add a queue after the decoder in video test src + +2014-05-14 22:06:55 +0200 Thibault Saunier + + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * tests/check/ges/basic.c: + ges: Avoid GESTimelineElement naming conflicts + When users (can be formatters) set timeline element names in the + default 'namespace' we need to update our counter to avoid setting + twice the same name on TimelineElements so afterward there is no + problem adding them in the GESTimeline + + add a testcase to check that new code and fix leaks on the + existing testcases. + + Sensibly enhance debugs + +2014-05-13 14:30:39 +0200 Edward Hervey + + * ges/ges-xml-formatter.c: + xml-formatter: Don't leak children_props + By going through the cleanup code-path + CID #1212146 + +2014-05-10 22:52:18 +0200 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * tools/ges-launch.c: + ges: Do not use freed pointers + COVERTY CID 1212182 + COVERTY CID 1212184 + COVERTY CID 1212185 + +2014-05-10 22:48:12 +0200 Thibault Saunier + + * ges/ges-smart-adder.c: + ges: Plug a leak in ges-smart-adder + COVERTY CID 1212166 + +2014-05-10 22:45:34 +0200 Thibault Saunier + + * ges/ges-xml-formatter.c: + ges-xml-formatter: fix memory leak + COVERTY CID 1212148 + +2014-05-10 22:41:23 +0200 Thibault Saunier + + * ges/ges-xml-formatter.c: + ges-xml-formatter: fix memory leak in error path + COVERITY CID 1212147 + +2014-05-10 22:38:21 +0200 Thibault Saunier + + * ges/ges-asset.c: + ges: Assert if an asset is not in the global hashtable + COVERITY CID 1151679 + +2014-05-10 22:33:15 +0200 Thibault Saunier + + * ges/ges-timeline.c: + ges: Remove useless pointer assignement + COVERITY CID: 1139442 + +2014-05-10 22:30:00 +0200 Thibault Saunier + + * ges/ges-meta-container.c: + ges: Remove useless pointer assignement + COVERITY CID: 1139941 + +2014-05-10 22:28:01 +0200 Thibault Saunier + + * ges/ges-meta-container.c: + ges: Add license header in ges-meta-container + +2014-05-10 22:09:31 +0200 Thibault Saunier + + * ges/ges-timeline.c: + ges: remove comparison of unsigned inferior to 0 + COVERITY CID 1139769 + +2014-05-09 13:00:32 +0100 Tim-Philipp Müller + + * ges/ges-xml-formatter.c: + ges-xml-formatter: fix memory leak in error path + CID 1212146 + +2014-05-08 17:21:33 +0200 Thibault Saunier + + * tools/ges-launch.c: + tool: Add the option to set audiosink + And use gst_parse_bin_from_description to create the sinks letting more + control to users. + +2014-05-08 17:11:54 +0200 Mathieu Duponchelle + + * tools/ges-validate.c: + scenarios: update the prototype of ges_validate_activate + if validate is not present. + +2014-05-08 14:12:11 +0200 Mathieu Duponchelle + + * tools/ges-launch.c: + ges-launch: add an option to use a custom video sink + +2014-05-08 01:38:26 +0200 Mathieu Duponchelle + + * tools/ges-validate.c: + validate: make sure we release our ref when we get_timeline. + Conflicts: + tools/ges-validate.c + +2014-05-08 01:15:42 +0200 Mathieu Duponchelle + + * tools/ges-validate.c: + scenarios: Check priority before creating a layer. + +2014-05-06 15:32:18 +0200 Mathieu Duponchelle + + * tools/ges-launch.c: + * tools/ges-validate.c: + * tools/ges-validate.h: + ges-launch: Make it so actions are executed directly when needed. + +2014-05-02 17:11:24 +0200 Mathieu Duponchelle + + * tools/ges-validate.c: + validate: implement remove / add clip actions + And a helper to get a layer by priority + +2014-05-02 16:48:46 +0200 Mathieu Duponchelle + + * ges/ges-timeline-element.c: + timeline-element: return TRUE in _set_name when both names match. + +2014-05-02 14:17:07 +0200 Mathieu Duponchelle + + * tools/ges-launch.c: + ges-launch: Only create a layer if needed. + That way scenarios can start with an empty timeline + +2014-05-02 13:37:04 +0200 Mathieu Duponchelle + + * tools/ges-validate.c: + validate: Add add-layer and remove-layer + +2014-05-08 01:13:02 +0200 Mathieu Duponchelle + + * tools/ges-validate.c: + scenarios: add a remove-asset action + +2014-05-01 17:02:05 +0200 Mathieu Duponchelle + + * tools/ges-validate.c: + ges-validate: add an add-asset action + Conflicts: + tools/ges-validate.c + +2014-05-01 17:00:25 +0200 Mathieu Duponchelle + + * tools/ges-launch.c: + ges-launch: When a scenario is set, don't request triplets + +2014-05-01 16:59:15 +0200 Mathieu Duponchelle + + * ges/ges-timeline.h: + ges-timeline: Fix ges_timeline_get_project macro. + This macro was a little confused about its own meaning. + +2014-05-05 11:58:45 +0100 Tim-Philipp Müller + + * tools/ges-launch.c: + ges-launch: remove dead code + duration can't be smaller than 0 because it's unsigned, + and it can't be 0 because 0 is transformed to CLOCK_TIME_NONE + earlier. + Coverity CID 1211822. + +2014-05-03 10:18:12 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From bcb1518 to 211fa5f + +2014-05-01 10:13:39 +0200 Thibault Saunier + + * tools/ges-launch.c: + tools: Add a way to look for moved media sample recursively + In ges-launch let the user set a folder where the media sample that + move can be found recursing into that specified folder. + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-04-30 20:58:42 +0200 Thibault Saunier + + * ges/ges-track.c: + * tools/ges-launch.c: + tools: Add an option to disable mixing + + Add a a GObject property so that the info is seralized + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-04-30 16:26:03 +0200 Thibault Saunier + + * ges/ges-project.c: + project: Enhance debugging when updating URI with an invalid one + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-05-02 16:49:10 +0200 Thibault Saunier + + * tools/ges-validate.c: + tools: Always activate gst-validate to have position printing + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-04-29 21:29:54 +0200 Thibault Saunier + + * tools/ges-launch.c: + tools: Handle times as doubles + concider duration=0 as TIME_NONE + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-04-26 09:51:37 +0200 Thibault Saunier + + * tools/ges-launch.c: + tools: Disable --set-scenario if not compiled against gst-validate + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-04-26 08:55:31 +0200 Thibault Saunier + + * ges/ges-clip.c: + ges: Rename remaning tlobj to clip + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-05-02 16:43:42 +0200 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Add an action to serialize the project + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + Conflicts: + tools/ges-validate.c + +2014-04-25 18:23:06 +0200 Thibault Saunier + + * tools/ges-validate.c: + tools:validate: Always seek after editing a clip + Otherwize the displayed frame will not be updated when paused. + + Add a get_timeline internal helper method in ges-validate.c + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-03-14 12:10:53 +0100 Thibault Saunier + + * tools/ges-validate.c: + ges-validate: Add a GstValidate action to set children properties + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-02-18 18:52:38 +0100 Thibault Saunier + + * configure.ac: + * tests/Makefile.am: + * tests/scenarios/Makefile.am: + * tests/scenarios/ges-edit-clip-while-paused.scenario: + scenario: Add a scenario that edits a clip while the pipeline is paused + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-02-18 17:25:05 +0100 Thibault Saunier + + * tools/ges-validate.c: + tools:validate: Add an action to allow editing clips + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-02-18 15:14:40 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-xml-formatter.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/uriclip.c: + Add a notion of 'name' in GESTimelineElement + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-04-23 11:28:20 +0200 Thibault Saunier + + * tools/ges-launch.c: + * tools/ges-validate.c: + tools: Position printing is now done at the gst-validate level + https://bugzilla.gnome.org/show_bug.cgi?id=729382 + +2014-04-17 13:04:26 +0200 Thibault Saunier + + * ges/ges-uri-asset.c: + uri-asset: Check return value of gst_tag_list_copy_value + CID 1139597 + +2014-04-10 18:03:55 +0200 Edward Hervey + + * ges/gstframepositionner.c: + framepositioner: Set the proper default value + Most likely a copy/paste error. + CID #1139646 + +2014-04-10 18:01:03 +0200 Edward Hervey + + * ges/ges-xml-formatter.c: + xml-formatter: Use proper value for string extraction + The pass would be filled with some bogus (pointer) numerical value + CID #1139652 + +2014-04-10 17:52:20 +0200 Edward Hervey + + * ges/ges-base-xml-formatter.c: + base-xml-formatter: Don't attempt to use NULL entry + Instead return straight away + CID #1139739 + +2014-04-07 21:02:48 +0200 Christoph Reiter + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/ges-asset.c: + * ges/ges-audio-source.c: + * ges/ges-audio-test-source.c: + * ges/ges-audio-track.c: + * ges/ges-audio-transition.c: + * ges/ges-audio-uri-source.c: + * ges/ges-base-effect-clip.c: + * ges/ges-base-effect.c: + * ges/ges-base-transition-clip.c: + * ges/ges-clip-asset.c: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-effect-asset.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-extractable.c: + * ges/ges-formatter.c: + * ges/ges-group.c: + * ges/ges-image-source.c: + * ges/ges-layer.c: + * ges/ges-meta-container.c: + * ges/ges-multi-file-source.c: + * ges/ges-operation-clip.c: + * ges/ges-operation.c: + * ges/ges-overlay-clip.c: + * ges/ges-pipeline.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-project.c: + * ges/ges-source-clip.c: + * ges/ges-source.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-track-element-asset.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-transition-clip.c: + * ges/ges-transition.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-clip.c: + * ges/ges-video-source.c: + * ges/ges-video-test-source.c: + * ges/ges-video-track.c: + * ges/ges-video-transition.c: + * ges/ges-video-uri-source.c: + Include class related section documentation in the gir file. + g-ir-scanner includes section docs as class/interface docs if the section name is equal to the lowercase type name. + Since all the documentation is in section blocks, rename them to match the type names. + https://bugzilla.gnome.org/show_bug.cgi?id=727776 + +2014-04-06 16:39:33 +0200 Thibault Saunier + + * ges/Makefile.am: + build: Add reference to GstVideo in gir file + +2014-03-26 23:48:45 +0100 Lubosz Sarnecki + + * ges/ges-types.h: + multifilesrc: remove unused class declaration + +2014-03-26 23:47:03 +0100 Lubosz Sarnecki + + * ges/Makefile.am: + build: install ges-version.h + +2014-03-26 11:45:07 +0100 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Not being able to load an asset is an error + +2014-03-21 10:22:52 +0100 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Do not set EncodingProfile.presence when we have no track for the type + That leads to freeze as encodebin will be waiting for a pad and EOS + forever + +2014-01-09 16:31:01 +0100 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Format the position printing as in gst-validate and friends + +2013-09-13 18:15:21 -0300 Thibault Saunier + + * configure.ac: + * tools/Makefile.am: + * tools/ges-launch.c: + * tools/ges-validate.c: + * tools/ges-validate.h: + ges-launch: Play nicely with gst-validate if avalaible + +2013-09-20 01:31:10 +0200 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Add a way to mute test video and audio output + +2013-10-12 10:07:28 -0300 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Properly handle project loading + So we start the pipeline only when the project is done loading, and we save it when it is + loaded, taking into account possible media URI updates. + +2013-11-12 12:13:31 +0100 Lubosz Sarnecki + + ges: multifilesrc support + * GESMultiFileSource class + * multifilesrc example + * Support multifile:// urls in uri asset + * start/stop index modification + * Doc + https://bugzilla.gnome.org/show_bug.cgi?id=719373 + +2014-03-16 12:48:22 +0100 Thibault Saunier + + * configure.ac: + Back to development + +=== release 1.2.0 === + +2014-03-16 12:46:26 +0100 Thibault Saunier + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * ges/ges.c: + * gst-editing-services.doap: + Release 1.2.0 + +2014-03-15 10:34:17 +0100 Thibault Saunier + + * configure.ac: + * ges/ges-version.h.in: + * ges/ges.h: + Properly generate versioning #define-s during autogen + +2014-03-14 20:04:33 +0100 Thibault Saunier + + * ges/ges-container.c: + * ges/ges-timeline-element.c: + * tests/check/ges/group.c: + container: Properly handle the case where we could not set parent + In this case we had a FIXME about reverting everything that was done, + implement that FIXME! + +2014-03-14 19:59:27 +0100 Andreas Schwab + + * ges/ges-smart-adder.c: + ges: remove extra semicolon + https://bugzilla.gnome.org/show_bug.cgi?id=726365 + +2014-03-14 18:48:44 +0100 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Always set the encoding profile presence to 1 + We currenty do not support multiple tracks with same type in GESPipeline + and we actually need to set the presence field to avoid a scenario where + we have only video in a video track, and no audio in the audio track. So + audiotestsrc is used and we end up encoding the whole audio stream but + no decoded video frame as reached the decodebin src pad, so the pad + has not been created and thus it will not be linked to the encodebin. + On the audio part, the EOS will be emitted so fast that the resulting stream will + not have any video in it as the muxer will not even have a video pad created. + Setting the presence will ensure that the muxer does have a video pad + (because of how encodebin behaves) and thus will create a pad for it + and wait for its EOS. + +2014-03-10 11:18:21 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + title-source: Rename ges_title_clip_set_backrgound_colour as appropriate + The method was badly called _clip_ instead of _source_ we have not release the API + so we still can change it. + +2014-03-08 11:26:13 +0000 Dan Williams + + * ges/ges-project.c: + ges: fix finalize/dispose mixup + https://bugzilla.gnome.org/show_bug.cgi?id=725918 + +2014-03-07 14:48:06 -0600 Dan Williams + + * ges/ges-clip-asset.c: + * ges/ges-container.c: + * ges/ges-formatter.c: + * ges/ges-project.c: + * ges/gstframepositionner.c: + ges: Ensure GObject finalize and dispose methods chain up to parents + https://bugzilla.gnome.org/show_bug.cgi?id=725918 + +2014-03-07 09:28:16 -0600 Dan Williams + + * ges/ges-base-xml-formatter.c: + Fix use-after-free in _free_pending_clip() + https://bugzilla.gnome.org/show_bug.cgi?id=725855 + +2014-02-28 09:37:01 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From fe1672e to bcb1518 + +2014-02-26 04:36:11 +0100 Alexandru Băluț + + * docs/design/encoding-research.txt: + * docs/design/metadata.txt: + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + Update the documentation to use Pitivi instead of PiTiVi + +2014-02-26 04:17:36 +0100 Alexandru Băluț + + * ges/ges-base-effect.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-transition-clip.c: + Remove "#" from short-description + It breaks the display in the index.html page. + +2014-02-18 22:14:00 +0100 Alexandru Băluț + + * ges/ges-asset.c: + * ges/ges-extractable.c: + Minor documentation fixes: GESExtractable, GESAsset + +2014-02-26 22:16:13 +0100 Stefan Sauer + + * common: + Automatic update of common submodule + From 1a07da9 to fe1672e + +2014-02-18 12:40:06 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + docs: Fix documentation about copying timeline elements + +2014-02-17 13:33:51 +0100 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Make sure not to add 2 times a TrackElement in the same track + Without that, if a UriClip contains several tracks of a same type (ie. + video or audio...), we would add all the TrackElements to each track + making everything failling as we end up with several GNL sources at + the same position with the same priority. + +2014-02-17 12:34:04 +0100 Thibault Saunier + + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-pipeline.c: + * tests/check/ges/integration.c: + * tests/examples/concatenate.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Rename TIMELINE_MODE_XXX to GES_PIPELINE_MODE_XXX so it corresponds to reality + First, it was not in any namespace, second the name of the enum is + GESPipelineFlags. + +2014-02-14 13:20:31 +0100 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + ges: Give a reference to the formatter for the idle callback + This avoid segfault as we are not guaranteed that the formatter will + not be destroyed in the meantime. + + Minor cleanup of handling of private members + https://bugzilla.gnome.org/show_bug.cgi?id=724337 + +2014-02-09 23:50:25 +0100 Sebastian Dröge + + * ges/ges-meta-container.c: + * ges/ges-pitivi-formatter.c: + ges: Remove unused functions + +2014-02-08 20:19:53 +0100 Sebastian Dröge + + * ges/ges-group.c: + ges-group: Properly check for integer underflows + error: comparison of unsigned expression < 0 is always false + +2014-02-08 20:18:11 +0100 Sebastian Dröge + + * ges/ges-extractable.c: + ges-extractable: Return NULL instead of G_TYPE_INVALID + The return type of this function is gchar *, not GType + +2014-02-05 00:10:52 +0100 Thibault Saunier + + * ges/ges-enums.h: + ges: Some documentation cleanup + +2014-02-04 13:58:48 +0100 Thibault Saunier + + * tests/check/ges/integration.c: + tests:integration: Fix a race about get_position being called before AYNC_DONE happens + +2014-02-04 10:45:58 +0100 Alexandru Băluț + + * bindings/python/examples/simple.py: + * docs/libs/ges-sections.txt: + * ges/ges-pipeline.c: + * ges/ges-pipeline.h: + * tests/check/ges/integration.c: + * tests/check/ges/project.c: + * tests/check/ges/test-utils.c: + * tests/examples/concatenate.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + ges-pipeline: Rename add_timeline to set_timeline + API BREAKAGE: + - ges_pipeline_add_timeline + + ges_pipeline_set_timeline + +2014-01-16 15:25:06 +0100 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-uri-asset.c: + uri-asset: Let a chance for user to change URI if the set one is not readable + It sounds like the most logical thing to do in that case. + https://bugzilla.gnome.org/show_bug.cgi?id=721111 + +2014-01-15 19:12:08 +0100 Thibault Saunier + + * ges/ges-video-source.c: + * ges/ges-video-uri-source.c: + videosource: Always add a deinterlace at the beining of videosrcbin + It might be needed in some cases (for example when decoding prores files) and + it is the way it is done with playbin now. Also deinterlace now properly supports + passtrough mode. + +2014-01-27 15:30:40 +0100 Thibault Saunier + + * ges/ges-asset.c: + * tests/check/ges/project.c: + * tests/check/ges/uriclip.c: + ges-asset: Do not forget to give a ref to the registry + + Add test in the testsuite + + Fix broken tests + https://bugzilla.gnome.org/show_bug.cgi?id=721111 + +2014-01-30 10:46:09 +0100 Edward Hervey + + * common: + Automatic update of common submodule + From d48bed3 to 1a07da9 + +2014-01-09 18:13:00 +0100 Mathieu Duponchelle + + * ges/ges-track-element.c: + track-element: clamp interpolated keyframe values. + +2014-01-10 00:05:01 +0000 Tim-Philipp Müller + + * .gitignore: + .gitignore: add test driver and more test binaries + +2013-12-27 10:08:47 +0100 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + base-xml-formatter: Emit 'loaded' right after a project with empy timeline is loaded + https://bugzilla.gnome.org/show_bug.cgi?id=720040 + +2013-12-24 15:34:51 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-audio-test-source.h: + * ges/ges-audio-uri-source.h: + * ges/ges-image-source.h: + * ges/ges-internal.h: + * ges/ges-title-source.h: + * ges/ges-video-test-source.h: + * ges/ges-video-uri-source.h: + track-element: Remove constructors for TrackElement from the API + Most of the time the user should not create GESTrackElements + himself, instead he should add a GESAsset to a layer, that will + result in a clip creation and the proper TrackElements to be + created and added to the tracks. + The case of effects and overlays is a bit different as the user should + create the TrackElement and add them to a clip. + +2013-12-24 15:08:24 +0100 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-track.c: + ges: Remove versionning infos now that we start on the 1.X API serie + They are now meaningless, all the current symbols are the basic + ones for the 1.X serie. + +2013-12-24 14:34:09 +0100 Thibault Saunier + + * ges/ges-base-xml-formatter.h: + * ges/ges-effect-asset.h: + * ges/ges-smart-adder.h: + * ges/ges-smart-video-mixer.h: + * ges/ges-xml-formatter.h: + * ges/gstframepositionner.h: + ges: Add padding for API extension where missing + +2013-12-22 22:36:16 +0000 Tim-Philipp Müller + + * autogen.sh: + * common: + Automatic update of common submodule + From dbedaa0 to d48bed3 + +2013-11-28 15:13:06 -0300 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-timeline.c: + ges: Reimplement 'always create a project to back a timeline' + Keeping it simple, and making sure everything is synchronous + +2013-11-28 15:08:33 -0300 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-timeline.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + * tests/check/ges/mixers.c: + * tests/check/ges/overlays.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + Revert "ges: Always create a project to back a timeline" + This reverts commit 59d83f1a93055391097e7c1fe34f5a39eb8ec625. + Conflicts: + tests/check/ges/backgroundsource.c + tests/check/ges/effects.c + tests/check/ges/overlays.c + tests/check/ges/simplelayer.c + tests/check/ges/text_properties.c + tests/check/ges/titles.c + +2013-11-25 15:17:33 -0300 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-timeline.c: + timeline: Add all assets of the clip added to the timeline to the project + +2013-11-22 17:49:49 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-base-effect-clip.c: + * ges/ges-effect-clip.c: + * ges/ges-simple-layer.c: + * ges/ges-simple-layer.h: + * ges/ges-transition-clip.c: + * ges/ges.h: + * tests/check/Makefile.am: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/effects.c: + * tests/check/ges/overlays.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/titles.c: + * tests/examples/concatenate.c: + * tests/examples/ges-ui.c: + * tests/examples/simple1.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/thumbnails.c: + * tools/ges-launch.c: + Remove GESSimplerLayer, that API should land into GESLayer in the end + The priority handling of clip is now handled by GESLayer itself, and + handling clip as a ordered list should be implemented in GESLayer itself + too, this way the user can decide to switch mode at any time instead of + +2013-11-22 17:36:12 -0300 Thibault Saunier + + * ges/ges-layer.c: + layer: Set clip start to the duration of the layer if == TIME_NONE + In the provided start of a clip is GST_CLOCK_TIME_NONE in + ges_layer_add_asset, it means that we want the clip to be + added at the end of the layer + +2013-11-22 17:33:18 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-layer.c: + * ges/ges-layer.h: + layer: Add an API to get the total duration of the layer + API: + ges_layer_get_duration + +2013-11-22 17:23:31 -0300 Thibault Saunier + + Remove the android/ toplevel directory + To build gstreamer for android we are now using androgenizer which + generates the needed Android.mk files. Androgenizer can be found here: + * http://cgit.collabora.com/git/android/androgenizer.git/ + +2013-11-13 13:18:00 +0100 Lubosz Sarnecki + + * ges/Makefile.am: + * ges/ges-gerror.h: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-uri-asset.c: + * ges/ges-utils.c: + * ges/ges-utils.h: + gir: fix warnings + +2013-11-18 13:41:07 -0300 Thibault Saunier + + * ges/ges-video-uri-source.c: + video-uri-source: Handle interlaced videos + https://bugzilla.gnome.org/show_bug.cgi?id=710168 + +2013-11-14 16:17:31 -0300 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Let user set the track types to use + +2013-11-09 09:55:39 -0300 Thibault Saunier + + * bindings/python/examples/material.py: + python: Remove old material.py example + +2013-11-09 09:51:55 -0300 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Dot the pipeline on state changes and warnings + +2013-11-09 09:49:03 -0300 Thibault Saunier + + * ges/gstframepositionner.c: + framepositionner: Fix the range of properties dealing with number of pixels + This way it is possible to interpolate those values. + +2013-11-09 09:47:21 -0300 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-timeline.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/group.c: + * tests/check/ges/layer.c: + * tests/check/ges/mixers.c: + * tests/check/ges/overlays.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + ges: Always create a project to back a timeline + And fix all the tests as we need to wait for the project to be loaded + to check the reference count of the timeline (as we keep a ref on the + timeline in project to later emit "loaded" on idle). + +2013-11-09 09:46:10 -0300 Thibault Saunier + + * bindings/python/examples/simple.py: + bindings: Cleanup and fix simple python example + +2013-11-05 11:23:08 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 865aa20 to dbedaa0 + +2013-10-17 15:16:00 +0200 Kishore Arepalli + + * ges/ges-audio-source.c: + * ges/ges-image-source.c: + * ges/ges-pipeline.c: + * ges/ges-smart-adder.c: + * ges/ges-smart-video-mixer.c: + * ges/ges-source.c: + * ges/ges-title-source.c: + * ges/ges-track.c: + * ges/ges-video-track.c: + ges: Fix several memory leaks + https://bugzilla.gnome.org/show_bug.cgi?id=710390 + +2013-10-30 00:27:36 +0100 Mathieu Duponchelle + + * ges/ges-clip.c: + track-element: add start to the position to which we wish we split the bindings. + The bindings split is relative to the beginning of the clip. + +2013-10-29 07:59:22 -0300 Thibault Saunier + + * ges/ges-clip.c: + clip: Fix the find_track_element method + What we want is to be able to find a TrackElement by its type, and + possibly specify a Track where to look into. + +2013-10-15 10:57:31 +0200 Kishore Arepalli + + * ges/ges-extractable.h: + * ges/ges-formatter.h: + * ges/ges-uri-asset.h: + ges-formatter: don't use 'class' as function argument name in headers + It's a keyword in C++ and C++ compilers won't like it. + https://bugzilla.gnome.org/show_bug.cgi?id=710172 + +2013-10-11 17:00:22 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-uri-asset.c: + uri-asset: Check if file exists before trying it as a proxy + This avoids: + 1- discovering file that we know do not exist + 2- proposing the current proxy path (that failed) as a possible proxy + which lead to errors + +2013-10-11 17:05:03 -0300 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Remember URIS that we tried to discover + So we do not fail several time trying to discover the same URI + Conflicts: + tools/ges-launch.c + +2013-10-08 13:45:55 -0300 Thibault Saunier + + * ges/ges-formatter.c: + formatter: Try to use best formatter first + +2013-10-09 20:07:14 -0300 Thibault Saunier + + * ges/ges-audio-source.c: + audiosource: Add audioconvert and audioresample before the volume element + https://bugzilla.gnome.org/show_bug.cgi?id=709777 + +2013-10-01 20:07:10 +0200 Mathieu Duponchelle + + * ges/ges-timeline.c: + timeline: pass the correct argument to disconnect_by_func. + fixes #709205 + +2013-09-28 21:07:10 +0200 Thibault Saunier + + * configure.ac: + Back to development + +=== release 1.1.90 === + +2013-09-28 20:49:13 +0200 Thibault Saunier + + * ChangeLog: + * configure.ac: + Release 1.1.90 + +2013-09-28 18:09:49 +0200 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-clip.h: + clip: Return the newly created TrackElement when adding an asset + This is a minor API change + +2013-09-28 15:42:20 +0200 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Add a signal to know when it is commited + +2013-09-27 02:56:44 +0200 MathieuDuponchelle + + * ges/ges-clip.c: + clip: split_bindings at position * + inpoint* + +2013-09-25 23:52:46 +0200 MathieuDuponchelle + + * ges/ges-video-track.c: + video-track: update gaps framerate along with restriction caps. + +2013-09-25 19:48:45 +0200 MathieuDuponchelle + + * ges/ges-base-xml-formatter.c: + * ges/ges-xml-formatter.c: + xml-formatter: add support for restriction caps. + +2013-09-05 01:03:51 +0200 Simon Corsin + + * ges/ges-video-source.c: + * ges/gstframepositionner.c: + * ges/gstframepositionner.h: + video-source: Add a videorate in video-source. + And control it in framepositionner. + Conflicts: + ges/ges-video-source.c + +2013-09-24 18:35:56 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 6b03ba7 to 865aa20 + +2013-09-22 21:56:14 +0200 Thibault Saunier + + * tests/check/ges/clip.c: + * tests/check/ges/layer.c: + tests: Make sure not to test freed objects type + +2013-09-16 13:30:33 -0300 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Let some queuing in encodebin + It is sometimes necessary + +2013-09-16 11:19:13 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + * tests/examples/ges-ui.c: + examples: Make project loading more generic + Pitivi formatter is deprecated, do not use it by default + +2013-09-16 11:16:18 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges.c: + * ges/ges.h: + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + Revert "ges: Disable the Pitivi formatter" + This reverts commit e54ceff7204e712daa9949ef41b73d96035a0446. + Let's just keep it... it does not cost anything. + +2013-09-20 16:19:06 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From b613661 to 6b03ba7 + +2013-09-19 18:46:26 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 74a6857 to b613661 + +2013-09-19 17:39:44 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 12af105 to 74a6857 + +2013-09-14 04:19:57 +0200 Joris Valette + + * tests/check/ges/timelineedition.c: + tests: timelineedition: cast start and duration values as guint64 + +2013-09-13 20:38:43 -0300 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Handle path for project uri + +2013-09-13 20:37:58 -0300 Thibault Saunier + + * ges/ges-xml-formatter.c: + formatter: Keep timeline duration as a meta + +2013-09-12 18:34:55 -0300 Thibault Saunier + + * ges/ges-project.c: + * tools/ges-launch.c: + ges-launch: Make it possible to provid pathes to look for moved asset + For example if a project was sent from someone else thus the pates in + there are meaningless on the other computer, we need to be able + to specify a list of pathes where the files are. + + Fix documentation + +2013-09-12 09:05:51 +0200 Kishore Arepalli + + * ges/ges-pipeline.c: + ges-pipeline: Don't unref buffer obtained from a GstSample + https://bugzilla.gnome.org/show_bug.cgi?id=707914 + +2013-09-10 18:17:57 +0200 Mathieu Duponchelle + + * tests/check/ges/integration.c: + tests: integration: set restriction_caps on the video encoding profile + We need this cause now videomixer renegotiates downstream. + +2013-09-09 12:47:32 -0300 Thibault Saunier + + * ges/ges-pipeline.c: + * ges/ges.c: + pipeline: Create it through a factory + Making it possible to use it with GstValidate LD_PRELOAD feature + +2013-09-09 12:47:02 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-pipeline.c: + * ges/ges-pipeline.h: + * tests/examples/thumbnails.c: + pipeline: Finnish renaming from GESTimelinePipeline + +2013-09-08 19:27:04 -0300 Thibault Saunier + + * tests/check/ges/timelineedition.c: + tests: timelineedition: Minor cleanups + +2013-09-08 19:19:24 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Make sure we do not move object when only trimming + We were missing a few checks so that we do not move objects when their + duration is equal to the max duration, or 0 + +2013-09-07 12:59:17 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Avoid setting duration > max_duration when rippling + We should use the trimming method to set duration to make sure to avoid + going over the max duration. + Also avoid computing when setting duration to the same old value. + +2013-09-07 02:11:23 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * ges/ges-group.c: + * ges/ges-timeline.c: + * tests/check/ges/timelineedition.c: + ges: Handle trimming in groups + This was broken, clips where moving all around, make it behave properly. + +2013-09-07 02:10:12 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Make ripple start be trimming + This is a more natural behaviour as a user instead of doing nothing at + all. + +2013-09-03 20:50:54 -0400 Thibault Saunier + + * ges/ges-audio-source.c: + * ges/ges-video-source.c: + ges: Make GESAudioSource and GESVideoSource abstract + +2013-08-22 23:06:38 +0200 Mathieu Duponchelle + + * ges/gstframepositionner.c: + gstframepositionner: correctly tag metadata. + We do not use GST_VIDEO_META_TAG_STR as it would mean depending on + GstVideo which is not the case right now + +2013-09-01 12:19:32 -0400 Thibault Saunier + + * ges/ges-video-source.c: + videosource: Make sure to update z-order when layer priority changes + Conflicts: + ges/ges-video-source.c + +2013-09-01 12:18:53 -0400 Thibault Saunier + + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + timeline-element: Add a set_parent vmethod + API: + GESTimelineElment->set_parent vmethod + +2013-08-29 11:35:30 +0200 Simon Corsin + + * tests/check/ges/timelineedition.c: + tests: timelineedition: Add a test_scaling. + It will check that the clip updates its size correctly. + +2013-08-25 17:08:00 +0200 Simon Corsin + + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + test-utils: Adds a utility function to quickly check the timeline. + +2013-08-15 20:12:30 +0200 Simon Corsin + + * ges/ges-video-transition.c: + videotransition: No need to hard set width and height anymore. + +2013-08-21 11:32:45 +0200 Simon Corsin + + * ges/ges-video-source.c: + * ges/gstframepositionner.c: + * ges/gstframepositionner.h: + gstframepositionner: Install width and height properties. + + And manage them properly. + +2013-08-17 14:57:15 +0200 Simon Corsin + + * ges/ges-audio-track.c: + * ges/ges-internal.h: + * ges/ges-track.c: + * ges/ges-track.h: + ges-track: Add the notion of resriction caps to GESTrack + This way we can let the user determine what he want to come out of the + track. + API: + - ges_track_set_caps (The track caps are now construct only) + + ges_track_set_restriction_caps + + ges_track_get_restriction_caps + + GESTrack.props.restriction_caps + +2013-07-09 15:31:15 +0200 Simon Corsin + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-audio-source.c: + * ges/ges-audio-source.h: + * ges/ges-audio-test-source.c: + * ges/ges-audio-test-source.h: + * ges/ges-audio-uri-source.c: + * ges/ges-audio-uri-source.h: + * ges/ges-image-source.c: + * ges/ges-image-source.h: + * ges/ges-source.c: + * ges/ges-source.h: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-uri-clip.c: + * ges/ges-video-source.c: + * ges/ges-video-source.h: + * ges/ges-video-test-source.c: + * ges/ges-video-test-source.h: + * ges/ges-video-uri-source.c: + * ges/ges-video-uri-source.h: + * ges/ges.h: + * tests/check/ges/uriclip.c: + GES: Add GESVideoSource and GESAudioSource base classes + + Update documentation. + + Implements subclasses audio-uri-source and video-uri-source + +2013-07-03 18:27:00 +0200 Simon Corsin + + * ges/ges-audio-test-source.c: + * ges/ges-video-test-source.c: + testsource: Handle child properties as child properties + Makes $make check pass. + Standardizes property handling. + +2013-07-02 11:12:00 +0200 Simon Corsin + + * ges/ges-internal.h: + * ges/ges-source.c: + source: Make a ges_source_create_topbin internal helper method + +2013-06-27 14:20:00 +0200 Simon Corsin + + * ges/ges-audio-test-source.c: + * ges/ges-image-source.c: + * ges/ges-source.c: + * ges/ges-source.h: + * ges/ges-title-source.c: + * ges/ges-uri-source.c: + * ges/ges-uri-source.h: + * ges/ges-video-test-source.c: + ges-source: Move common elements handling to the base class + + And port all the subclasses + +2013-09-02 13:57:15 -0400 Thibault Saunier + + * ges/ges-container.c: + container: Do not forget to initialize the timeline before using it + +2013-09-02 00:19:30 +0100 Tim-Philipp Müller + + * ges/ges-xml-formatter.c: + ges-xml-formatter: use g_ascii_dtostr() instead of messing with setlocale() + Libraries shouldn't use setlocale(). + +2013-09-01 00:46:45 +0200 Mathieu Duponchelle + + * ges/ges-xml-formatter.c: + xml-formatter: set LC_NUMERIC locale before saving values. + Avoiding to save ',' instead of '.' for floats in certain locals + +2013-08-29 23:45:56 +0200 Mathieu Duponchelle + + * ges/ges-video-transition.c: + video-transition: Keep switch transition type simple + Also make sure there is a proper default value for transition type. + +2013-08-30 20:32:56 -0400 Thibault Saunier + + * tools/ges-launch.c: + launch: Simplify encoding profile description + Use a 'simple' synthax to describe encoding profiles + +2013-08-30 20:03:16 -0400 Thibault Saunier + + * tools/ges-launch.c: + launch: Make it easier to render project + Now providing an output uri is enough to tell that you want to render. + It will use project rendering infos when possible, missing a way to + specify which info if various are disponnible (we use the first one + right now). + + Make options more logical now, -l mean --load, and -r means repeat + +2013-08-30 18:45:31 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: No autotrans between elements in same toplevel container + This makes no sense, we ended up creating/removing tons of transition + while moving groups + +2013-08-29 11:10:33 -0400 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges.c: + * ges/ges.h: + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + ges: Disable the Pitivi formatter + It lacks to many feature and the code is too bad, desactivation until + someone comes and fix it... The code should be removed if it never + happens + +2013-08-28 19:56:29 +0200 Mathieu Duponchelle + + * ges/ges-clip.c: + ges-clip: when a child, is removed, disconnect from its notifies. + +2013-08-27 19:12:26 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + tests: Make use of g_assert_no_error when it makes sense + +2013-08-27 18:40:55 -0400 Thibault Saunier + + * tests/check/Makefile.am: + tests: Let use 20 sec to execute tests + +2013-08-26 23:31:14 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-base-effect.c: + * ges/ges-effect.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-uri-source.c: + trackelement: Simplify the way we handle children properties + So subclass do not have to implement a new logic all the time, but + instead can use a simple method to add properties as needed. + +2013-08-26 19:26:08 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-effect-clip.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-title-clip.c: + * ges/ges-track-element.c: + * ges/ges-transition-clip.c: + * ges/ges-uri-clip.c: + clip: Remove the ges_clip_fill_track method + Its was only use by the old custom source which is dead now. + API: + Remove ges_clip_fill_track + https://bugzilla.gnome.org/show_bug.cgi?id=706855 + +2013-08-26 19:15:08 -0400 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-custom-source-clip.c: + * ges/ges-custom-source-clip.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/layer.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/timelineedition.c: + ges: Remove custom clip + If you want a custom clip then you have to subclass GESClip, + This class was pre historicall and only used for testing purposes, we + have GESTestClip for that. + https://bugzilla.gnome.org/show_bug.cgi?id=706855 + +2013-08-26 19:25:20 -0400 Thibault Saunier + + * acinclude.m4: + Remove acinclude.m4 as we do not use it + and it is anyway removed by autogen.sh + +2013-08-26 18:56:49 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + integration: Add titles test + +2013-08-26 17:41:14 -0400 Thibault Saunier + + * bindings/python/gi/overrides/GES.py: + python: Do not initialize GES at import time + +2013-08-24 18:21:26 +0100 Tim-Philipp Müller + + * tests/check/ges/test-utils.c: + tests: fix NULL pointer dereference, ternary operator silliness and message type use + +2013-08-24 11:39:11 -0400 Thibault Saunier + + * tests/check/ges/test-utils.c: + tests: Give more debugging info when samples could not be generated + +2013-08-24 02:41:07 -0400 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/project.c: + tests: Fix make distcheck + We need to make sure that we can write to the directory where we save + project files, so doing it in the tmp folder. + + Properly dist test data files + +2013-08-13 18:05:55 +0200 Mathieu Duponchelle + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-track-element.c: + trackelement: split bindings correctly. + +2013-08-13 17:57:33 +0200 Mathieu Duponchelle + + * ges/ges-track-element.c: + trackelement: update control bindings correctly. + When duration or inpoint change, we need to remove edge control points, + and set new control points with interpolated values. + Also when duration == 0, we need to remove all control points, as otherwise + the controller will raise !is_end assertions. + It's the duty of the application to set keyframes back when duration gets + != 0 again. + +2013-08-12 21:25:31 +0200 Mathieu Duponchelle + + * ges/ges-container.c: + container: resort children after prepending an element. + +2013-08-12 16:13:40 +0200 Mathieu Duponchelle + + * ges/ges-timeline.c: + timeline: when there are no objects anymore, set duration to 0. + +2013-08-12 15:01:53 +0200 Mathieu Duponchelle + + * ges/ges-audio-track.c: + * ges/ges-audio-track.h: + ges-audio-track: Change contructor prototype. + We return an AudioTrack. + +2013-08-11 20:06:49 +0200 Mathieu Duponchelle + + * docs/libs/ges-sections.txt: + * ges/ges-pipeline.c: + * ges/ges-pipeline.h: + pipeline: add a get_mode method. + +2013-08-07 19:37:49 +0200 Mathieu Duponchelle + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + basexmlformatter: Only set timeline auto transitions when done loading. + +2013-08-07 16:12:27 +0200 Mathieu Duponchelle + + * tests/check/ges/integration.c: + integration: make test_basic be two concatenated clips. + +2013-08-20 08:22:24 -0400 Thibault Saunier + + * ges/ges-formatter.c: + formatter: Plug leaks in the can_save_to_uri method + https://bugzilla.gnome.org/show_bug.cgi?id=679941 + +2013-08-19 15:13:48 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Remove the dynamic lock + We actually do not need it has everywhere where we would need it we are + already locked against the timeline.dyn_lock, we need to make sure it is + always the case in the future. + The hierarchy of the mutex was wrong and could possibly lead to + deadlocks + +2013-08-19 15:12:48 -0400 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + formatter: Remove the unsed can_save_uri vmethod + This virtual method does not make much sense right now, we might need it + again later, but most probably with a sensibly different API so removing + it for now. + +2012-07-20 14:19:01 +0200 Paul Lange + + * ges/ges-formatter.c: + ges-formatter: Check if directory of URI is writeable + https://bugzilla.gnome.org/show_bug.cgi?id=679941 + +2013-08-06 18:35:24 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + 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-05 01:07:36 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: PNG file was renamed to png.png + +2013-08-04 17:46:33 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: Add a list tests only option + Also add an empty filed in the GOptionEntry array avoiding segfaults + +2013-08-02 14:23:13 +0200 Lubosz Sarnecki + + * configure.ac: + build: add subdir-objects to AM_INIT_AUTOMAKE + Fixes warnings with automake 1.14 + https://bugzilla.gnome.org/show_bug.cgi?id=705350 + +2013-08-04 17:35:20 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: Only use 2 layers for the mixing for now + + Call the TSuite "integration" instead of "render" + +2013-08-04 16:14:42 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + tests: check: All assets moved to assets/ + +2013-08-03 17:01:22 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + 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-02 14:16:26 +0200 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Add support for group-id in the stream-start event + +2013-08-01 18:14:36 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + Fix compilation + +2013-08-01 17:56:16 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: Avoid leak + +2013-08-01 17:47:50 +0200 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: Do not forget to set encoding profiles + +2013-07-18 23:09:51 +0200 Vasilis Liaskovitis + + * tests/check/ges/integration.c: + 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 11:31:16 +0200 Mathieu Duponchelle + + * tests/check/ges/integration.c: + tests/integration: display test name when running it. + +2013-08-01 11:32:44 +0200 Mathieu Duponchelle + + * tests/check/assets/png.png: + * tests/check/ges/integration.c: + tests/integration: add an asset directory. + +2013-07-23 01:50:28 +0200 Vasilis Liaskovitis + + * tests/check/ges/integration.c: + 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-07-19 00:40:00 +0200 Vasilis Liaskovitis + + * tests/check/ges/integration.c: + integration: add paused pipeline seek tests + +2013-07-16 19:42:53 +0200 Mathieu Duponchelle + + * tests/check/ges/integration.c: + tests/integration: adds image_filename in the test generation macro + +2013-07-27 10:18:30 +0200 Thibault Saunier + + * ges/ges-project.c: + project: Make sure error-loading-asset is emited when needed + In case ges_project_try_updating_id would be called from outside ges-project the signal + was not emitted, change that. + + Add some debugging + +2013-07-24 22:37:06 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: Add methods to get and set the snapping distance + +2013-07-24 14:26:18 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-track-element.c: + clip: Fix the spliting method + We should make sure that the newly created trackelement are inside + a container when adding them to as this is needed for GESUriClip-s. + Also do not try to set a child property on the TrackElement itself. + https://bugzilla.gnome.org/show_bug.cgi?id=703152 + +2013-07-23 19:20:34 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + 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-22 20:06:25 -0400 Thibault Saunier + + * tests/check/ges/mixers.c: + tests: Make sure we can have the results into an XML file + +2013-07-21 21:41:13 -0400 Thibault Saunier + + * ges/ges-pipeline.c: + pipeline: Check that the profile could actually be set on the encodebin + Setting the profile on an encodebin can fail, and if that happens, there + will be no profile set at all, we should return FALSE in GESPipeline + when that happens + +2013-07-01 16:27:54 +0200 Lubosz Sarnecki + + * android/ges.mk: + * docs/libs/architecture.xml: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-enums.h: + * ges/ges-pipeline.c: + * ges/ges-pipeline.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/basic.c: + * tests/check/ges/integration.c: + * tests/check/ges/mixers.c: + * tests/check/ges/project.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + * tests/examples/concatenate.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Rename GESTimelinePipeline to GESPipeline + rename ges_timeline_pipeline methods to ges_pipeline + +2013-07-17 22:48:17 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + 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-17 22:47:31 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: Add video/audio only basic tests + +2013-07-17 20:54:20 -0400 Thibault Saunier + + * ges/ges-uri-asset.c: + * tests/check/ges/integration.c: + tests: integration: Give some more information to user on errors + +2013-07-17 18:34:22 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + tests: intergration: Add some more encoding profiles + +2013-07-17 16:09:29 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: Give the user more details about failure when checking transcoded file + +2013-07-17 16:06:09 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: Be more precise with namings + Fully define formats in the namings + + Add an mp3 + h264 in mov test + +2013-07-17 13:06:05 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + tests: integration: Refactor and make easier to add encoding profiles + +2013-07-17 12:31:02 -0400 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/integration.c: + tests: integration: Add audio/video only seeking tests + +2013-07-17 12:05:26 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + 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-16 21:58:16 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + tests: Remove prints + And use GST_DEBUG and friends instead + +2013-07-14 14:03:46 +0200 Vasilis Liaskovitis + + * tests/check/ges/integration.c: + 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-13 15:15:04 +0200 Vasilis Liaskovitis + + * tests/check/ges/integration.c: + 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-02 20:50:05 +0200 Mathieu Duponchelle + + * ges/ges-uri-clip.c: + ges-uri-clip: Add the possibility to specify an assets directory + through the GES_TESTING_ASSETS_DIRECTORY environment variable. + +2013-07-12 19:44:46 -0400 Thibault Saunier + + * tests/check/ges/integration.c: + tests: Simplifie integration tests using macros all around + +2013-04-26 00:03:21 +0200 Mathieu Duponchelle + + * Makefile.am: + * tests/check/Makefile.am: + * tests/check/ges/integration.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + 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-04-28 00:22:42 +0200 Mathieu Duponchelle + + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + test-utils: Add test file generation code. + +2013-06-28 15:49:03 +0200 Mathieu Duponchelle + + * ges/ges-track-element.c: + track-element: No need to log when prio == MIN_GNL_PRIO. + +2013-06-27 23:33:21 +0200 Mathieu Duponchelle + + * ges/gstframepositionner.c: + framepositionner: fix messup with propname enum. + +2013-06-26 23:23:59 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + * ges/ges-track.h: + track: Make it possible to disable the mixing feature + API: + ges_track_set_mixing + ges_track_get_mixing + +2013-06-29 00:17:31 +0200 Mathieu Duponchelle + + * ges/ges-timeline.c: + timeline: create_transitions_on_layer *before* actually commiting + Everything need to be in place before commiting, otherwize it makes no + sense at all. + +2013-07-12 11:55:46 -0400 Thibault Saunier + + * ges/ges-group.c: + * ges/ges-group.h: + group: Add an empty group constructor + As it is more intuitive for users. + API: + ges_group_new + +2013-07-10 23:33:51 +0200 Mathieu Duponchelle + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-group.c: + container/group/clip: Allow creating an empty group. + This is a legitimate use case. + +2013-07-10 21:24:28 +0200 Mathieu Duponchelle + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * ges/ges-group.c: + * ges/ges-timeline.c: + container: Add a 'recursive' argument to the get_children method + API: + - ges_container_get_children (GESContainer *container); + + ges_container_get_children (GESContainer *container, gboolean recurse); + +2013-07-11 02:16:19 +0200 Mathieu Duponchelle + + * ges/ges-group.c: + group: set priv->setting_value to TRUE when moving ourselves in _child_removed + +2013-07-10 23:15:17 -0400 Thibault Saunier + + * ges/ges-timeline-element.c: + * tests/check/ges/group.c: + 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-09 21:30:59 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Append missing layers when moving groups between layers + This was a missing feature of the newly added groups + +2013-06-26 17:08:57 -0400 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * ges/ges-group.c: + * ges/ges-group.h: + * ges/ges-internal.h: + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/Makefile.am: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/group.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/timelineedition.c: + 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-07 22:40:55 -0400 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Indent formatted files + +2013-07-03 18:33:05 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + timeline-element: Add a method to get the topelevel parent of an element + API: + ges_timeline_element_get_toplevel_parent + +2013-07-03 12:48:58 -0400 Thibault Saunier + + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/timelineedition.c: + * tests/check/ges/transition.c: + 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-02 19:47:48 -0400 Thibault Saunier + + * ges/ges-clip.c: + clip: Emit the notify::layer signal only when actually needed + That means: + - only when we do change layer + - At the end of moving between two layers + +2013-07-02 10:56:40 -0400 Thibault Saunier + + * ges/ges-clip.c: + clip: Avoid list corruption when grouping objects + We are currently iterating over a list that is modified in the same + method, we have to get a copy of the list, and iterate over the copy. + +2013-07-01 20:35:39 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-internal.h: + clip: Add an internal method to easily get the priority of the layer the clip is in + +2013-07-01 17:57:03 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + container: Remove the get_priority_range vmethod + We now let full control to subclasses so we do not need it anymore. + +2013-07-01 17:51:32 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + container: Let full control of children priorities to subclasses + For that we make the children_control_mode a protected filed, directly usable by + subclasses, removing the method to set it. + And we let the subclass set and get the priority offsets to the container class. + +2013-07-01 16:19:31 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Make sure that new gaps are filled before removing the old ones + Currently we can end up having gaps in track as the first step of the + gap filling method removes currently set gaps. + +2013-06-29 19:31:23 -0400 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/ges/effects.c: + clip: Handle child priority offsets when setting priority + +2013-06-28 19:17:54 -0400 Thibault Saunier + + * ges/ges-container.c: + container: Do not allow adding an element to a container if it already has a parent + This should never happen, an element can have 1 and only 1 parent. + +2013-06-28 19:16:47 -0400 Thibault Saunier + + * ges/ges-container.c: + container: "Implement" the set_priority vmethod + This way we will just accept any value setted + +2013-06-28 19:15:59 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + ges: Avoid leaking the timeline when grouping containers + +2013-06-28 14:39:16 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + container: Let subclasses decide when height change should be computed + API: + - GESContainer.compute_height vmethod + + _ges_container_set_height + +2013-07-02 13:43:49 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + base-xml-formatter: s/ducation/duration/ + +2013-06-28 12:56:17 -0400 Thibault Saunier + + * ges/ges-container.c: + container: ges_container_ungroup return a transfer full list + +2013-06-28 11:23:27 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-container.c: + * ges/ges-container.h: + * tests/benchmarks/timeline.c: + * tests/check/ges/layer.c: + * tests/check/ges/timelineedition.c: + 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-06-26 19:55:37 -0400 Thibault Saunier + + * ges/ges-container.c: + container: Update offsets in GESTimelineElement vmethod implementations + So subclasses just have to link up to resync offsets + +2013-06-26 17:08:16 -0400 Thibault Saunier + + * ges/ges-effect-asset.c: + * ges/ges-gerror.h: + docs: Misc documentation fixes + +2013-06-25 18:37:48 -0400 Thibault Saunier + + * ges/ges-clip.c: + clip: Never try to set the start after the end of an element when trimming + +2013-06-25 18:37:17 -0400 Thibault Saunier + + * ges/ges-internal.h: + internal: Add a macro to make it easier to get the end of a TimelineElement + +2013-06-25 18:36:24 -0400 Thibault Saunier + + * ges/ges-track.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/layer.c: + track: Update gaps only when commiting + We were still updating them at useless moments, do it only when absolutely needed. + +2013-06-25 18:34:44 -0400 Thibault Saunier + + * ges/ges-container.c: + container: Fix the way we check priority of subclasses when grouping objects + The resulting list was from lower to higher, we need the contrary + +2013-06-26 16:54:02 -0400 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + ges: Move GESTimelineElemt vmethod implementation from container to clip + This is where they belong to has they are specific to that + implementation of the baseclass + +2013-06-25 18:32:49 -0400 Thibault Saunier + + * ges/ges-container.c: + * ges/ges-container.h: + container: Make initiated_move a read only protected member + It is a interesting information for subclasses. + Conflicts: + ges/ges-container.c + +2013-07-09 10:57:51 -0400 Thibault Saunier + + * ges/ges-internal.h: + internal: Fix typo in the header + ges_base_xml_formatter_add_control_bindingi was meant to be + ges_base_xml_formatter_add_control_binding + +2013-07-01 23:33:01 +0200 Mathieu Duponchelle + + * ges/ges-audio-transition.c: + * ges/ges-track-element.h: + * ges/ges-video-transition.c: + track-element: Remove duration_changed virtual method. + We use notifies for the properties. + + Use notifies in audio-transition and video-transition + +2013-07-09 00:31:30 +0200 Mathieu Duponchelle + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + formatters: Save and load bindings applied to sources. + +2013-06-17 07:55:54 +0200 Alban Browaeys + + * tools/ges-launch.c: + ges-launch: make it portable to all locales. + Call setlocale (LC_ALL, "") as per setlocale man page + to make ges-launch portable to all locales (instead of default + "C" one). + Fixes g_option_context_parse on: + $ ges-launch-1.0 --verbose -r -q /home/prahal/Vidéos/Test3.xges -o + file:///home/prahal/Test3.mpeg + Error initializing: Invalid byte sequence in conversion input + The accentuated character in "Vidéos" the french xdg user directory + for "Videos" is what is choked upon. + https://bugzilla.gnome.org/show_bug.cgi?id=702425 + +2013-06-28 00:24:33 +0100 Tim-Philipp Müller + + * ges/ges-timeline-pipeline.c: + timelinepipeline: fix caps leak + +2013-06-26 12:57:17 +0000 Руслан Ижбулатов + + * ges/ges-timeline-pipeline.c: + timelinepipeline: make the caps from encoding profile writable + https://bugzilla.gnome.org/show_bug.cgi?id=703121 + +2013-06-23 18:27:41 -0400 Thibault Saunier + + * ges/ges-uri-source.c: + urisource: Do not let user reset the URI property + This is not supported right now and would lead to unexpected behaviours + +2013-06-03 23:02:15 +0200 Mathieu Duponchelle + + * ges/Makefile.am: + * ges/ges-smart-video-mixer.c: + * ges/ges-uri-source.c: + * ges/ges.c: + * ges/gstframepositionner.c: + * ges/gstframepositionner.h: + ges: Add a framepositionner element used in ges-smart-mixer and ges-uri-source + It adds metadata on the buffers and the mixer parses them. + This is done because we want to keep positionning properties + and set them on the dynamic mixer pad. + Conflicts: + ges/Makefile.am + +2013-05-30 06:05:48 +0200 Mathieu Duponchelle + + * tests/check/ges/mixers.c: + tests: Add a audio/video mixing test. + +2013-05-30 06:04:47 +0200 Mathieu Duponchelle + + * ges/ges-video-track.c: + video-track: "implement" get_mixing_element. + +2013-05-29 18:48:42 +0200 Mathieu Duponchelle + + * ges/Makefile.am: + * ges/ges-smart-video-mixer.c: + * ges/ges-smart-video-mixer.h: + * ges/ges-video-track.h: + ges-smart-mixer: first code dump, mainly copy paste from ges-smart-adder. + +2013-04-30 19:19:39 +0200 Simon Corsin + + * ges/ges-layer.c: + ges-layer.c: notify priority changes. + +2013-05-16 09:40:22 +0200 Mathieu Duponchelle + + * ges/ges-uri-source.c: + ges-uri-source: Refactoring work. + + Categorize functions (Callbacks, vmethods) + + make more generic functions for the creation of the bin. + +2013-05-16 08:10:35 +0200 Mathieu Duponchelle + + * ges/ges-base-effect.c: + * ges/ges-uri-source.c: + * ges/ges-utils.c: + * ges/ges-utils.h: + uri-source: Expose the volume property. + + Make the pspec_hash function an internal util. + + Add a create_props_hashtable implementation + + If TRACK_TYPE_AUDIO, put the volume properties in the hashtable. + +2013-05-16 04:22:16 +0200 Mathieu Duponchelle + + * ges/ges-uri-source.c: + * ges/ges-uri-source.h: + uri-source: when creating the audio element, set the volume to the layr volume when necessary. + +2013-05-16 03:27:20 +0200 Mathieu Duponchelle + + * ges/ges-uri-source.c: + ges-uri-source: don't use gnlurisource but a custom bin. + + This bin is a uridecodebin when GES_TRACK_TYPE_VIDEO + + This bin contains a uridecodebin and a volume when GES_TRACK_TYPE_AUDIO + +2013-05-15 18:59:10 +0200 Mathieu Duponchelle + + * ges/ges-smart-adder.c: + smart-adder: remove volume from the bin, which quite simplifies the code. + + Don't be too smart, adder. + +2013-03-31 00:08:15 +0100 Thibault Saunier + + * ges/Makefile.am: + * ges/ges-audio-track.c: + * ges/ges-audio-track.h: + * ges/ges-smart-adder.c: + * ges/ges-smart-adder.h: + * ges/ges-track.c: + * tests/check/Makefile.am: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/mixers.c: + smart-adder: Implement a GESSmartAdder bin element to be used as mixing element + ..in audio tracks + +2013-04-22 00:21:58 -0300 Thibault Saunier + + * ges/ges-layer.c: + * ges/ges-meta-container.h: + * tests/check/ges/layer.c: + meta-container: Add a VOLUME default meta to layers + +2013-03-31 12:34:58 +0200 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-custom-source-clip.c: + ges: Misc documentation fixes + +2013-03-30 19:02:52 +0100 Thibault Saunier + + * ges/ges-track.c: + * ges/ges-track.h: + track: Implement infrastructure for mixing + +2013-03-30 19:01:26 +0100 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-track-element.c: + track-element: Set a reference to the GESTrackElement on the GnlObjects using qdata + +2013-03-29 19:23:00 +0100 Thibault Saunier + + * ges/ges-auto-transition.c: + * ges/ges-clip.c: + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-simple-layer.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + ges: Make space in the GESTracks to be able to add mixing elements later + And update the tests + +2013-03-29 19:04:54 +0100 Thibault Saunier + + * tests/check/ges/effects.c: + tests:effects: Make use of normal layers, and enhance tests + +2013-03-29 18:56:31 +0100 Thibault Saunier + + * ges/ges-layer.c: + layer: Fix some mix up in variable names + +2013-03-29 18:55:27 +0100 Thibault Saunier + + * ges/ges-layer.c: + layer: Simplify a bit how we handle priorities + +2013-03-29 18:53:25 +0100 Thibault Saunier + + * ges/ges-timeline-element.c: + * ges/ges-timeline.c: + timeline-element: Make it possible to reset the timeline property to NULL + + Add some debug symbol + +2013-03-28 18:51:45 +0100 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-audio-track.c: + * ges/ges-audio-track.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-track.c: + * ges/ges-track.h: + * ges/ges-types.h: + * ges/ges-utils.c: + * ges/ges-video-track.c: + * ges/ges-video-track.h: + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + ges: Implement GESAudioTrack and GESVideoTrack, subclasses of GESTrack + +2013-06-16 21:47:52 -0400 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Report position while playing back + Giving more feedbacks to the user + +2013-06-16 19:10:18 -0400 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Remove xptv formatter related code + It is not usefull anymore + +2013-06-15 22:13:20 -0400 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Properly add UriClipAssets to the project + +2013-06-09 12:29:05 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-project.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-track.h: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tools/ges-launch.c: + 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-20 14:23:26 +0200 Lubosz Sarnecki + + * ges/ges-base-xml-formatter.c: + * ges/ges-project.c: + timeline: fix segfaults + don't call the timeline update, when the reference is invalid + https://bugzilla.gnome.org/show_bug.cgi?id=702605 + +2013-06-18 13:32:38 +0100 Tim-Philipp Müller + + * autogen.sh: + * common: + autogen.sh: generate from common module, fixing srcdir != builddir build + https://bugzilla.gnome.org/show_bug.cgi?id=702424 + +2013-06-18 13:14:48 +0100 Tim-Philipp Müller + + * gst-editing-services.doap: + Add .doap file + Needed for common/update-autogen, but generally not a bad idea. + +2013-04-30 19:16:10 +0200 Mathieu Duponchelle + + * ges/ges-uri-asset.c: + ges-uri-asset.c: Fix ges_uri_asset_request_sync annotations. + +2013-06-12 11:32:16 -0400 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-project.c: + project: Disable update in the project rather than the formatter + We need to make sure the update are disabled until the project is fully + loaded, let the responsability to the project instead of the formatter + +2013-06-12 11:09:13 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Sync track enable_update property with parent + When we add a track to a timeline, we want it "enable update" property + to be set to the timeline's + +2013-06-12 10:48:03 -0400 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Make use of assets for uri clips + It avoids races in TrackElement creations. + We should make use of assets everywhere in ges-launch but start using + them for uriclips first for now. + +2013-06-05 15:18:36 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 098c0d7 to 01a7a46 + +2013-05-30 11:40:36 -0400 Thibault Saunier + + * tests/check/ges/uriclip.c: + tests: Pass a ref of CAPS_ANY to ges_track_new + +2013-05-29 16:48:03 -0400 Thibault Saunier + + * tests/check/ges/basic.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + tests: Add a basic test for pipeline state change + Add some test utils to create a pipeline + +2013-05-29 14:05:52 -0400 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline.c: + ges: Protect from Gst dynamic callbacks + The pad-added and no-more-pad signal can be emited from any thread + so we have to protect our code from that + +2013-05-23 15:52:35 -0400 Thibault Saunier + + * ges/ges-track.c: + * tests/check/ges/backgroundsource.c: + 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-23 13:16:22 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-uri-source.c: + * ges/ges-uri-source.h: + * tests/check/ges/uriclip.c: + Finish renaming filesource to urisource + +2013-05-23 11:57:42 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Update gaps when we set the timeline + +2013-05-28 08:51:08 +0200 Sebastian Dröge + + * ges/ges-pitivi-formatter.c: + ges-pitivi-formatter: Remove some unneeded includes and clean up includes + Fixes the build on Windows, where there's no unistd.h... which wasn't + needed at all. + https://bugzilla.gnome.org/show_bug.cgi?id=701115 + +2013-05-27 22:10:03 -0400 Thibault Saunier + + * tests/check/ges/asset.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + 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-15 10:55:22 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 5edcd85 to 098c0d7 + +2013-03-05 17:09:18 -0500 Nicolas Dufresne + + * .gitignore: + Update gitignore + +2013-03-05 17:07:29 -0500 Nicolas Dufresne + + * ges/Makefile.am: + * ges/ges-asset.h: + * ges/ges-internal-enums.h: + GESAssetLoadingReturn cannot be internal + The enumeration is referenced in a public API. + +2013-05-05 11:13:24 +0100 Thibault Saunier + + * ges/ges-clip.c: + clip: Avoid corruption of our list of children while ungrouping + +2013-04-24 15:25:20 +0300 Anton Belka + + * tests/check/Makefile.am: + * tests/check/ges/project.c: + * tests/check/ges/test-auto-transition.xges: + tests: add project auto-transition test + +2013-04-24 15:23:44 +0300 Anton Belka + + * tests/check/ges/layer.c: + tests: add timeline auto-transition test + +2013-04-24 15:18:01 +0300 Anton Belka + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: add auto-transition + API: + ges_timeline_get_auto_transition + ges_timeline_set_auto_transition + GESTimeline::auto-transition + +2013-04-30 18:26:57 +0100 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + basexmlformatter: Do not allow empty file loading + +2013-04-27 03:45:29 -0300 Thibault Saunier + + * ges/ges-video-test-source.c: + video-test-src: Force video/x-raw + Avoiding to hit errors with video/x-bayer + +2013-04-21 21:35:22 +0200 Mathieu Duponchelle + + * ges/ges-audio-transition.c: + audiotransition: Add a resampler in the audio transition bin + +2013-04-21 19:21:14 +0200 Mathieu Duponchelle + + * ges/ges-audio-transition.c: + audiotransition: Fix porting error of the interpollator + + update debug statements s/LOG/INFO + (acontrolsource != bcontrolsource) + +2013-04-27 03:44:40 -0300 Thibault Saunier + + * ges/ges-audio-test-source.c: + * ges/ges-test-clip.c: + * ges/ges-video-test-source.c: + * tests/check/ges/backgroundsource.c: + test-clip: Do not set black/silent by default + +2013-04-24 03:50:40 +0200 Mathieu Duponchelle + + * ges/ges-video-transition.c: + replace query_caps with get_current_caps. don't check for unused gnlobject. + +2013-04-23 20:04:04 -0300 Thibault Saunier + + * android/ges.mk: + * bindings/python/examples/material.py: + * bindings/python/examples/simple.py: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-base-effect-clip.c: + * ges/ges-base-effect.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-container.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-internal.h: + * ges/ges-layer.c: + * ges/ges-layer.h: + * ges/ges-operation-clip.c: + * ges/ges-overlay-clip.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-simple-layer.c: + * ges/ges-simple-layer.h: + * ges/ges-simple-timeline-layer.h: + * ges/ges-source-clip.c: + * ges/ges-source-clip.h: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-title-clip.c: + * ges/ges-title-clip.h: + * ges/ges-track-element.c: + * ges/ges-transition-clip.c: + * ges/ges-types.h: + * ges/ges-utils.c: + * ges/ges-xml-formatter.c: + * ges/ges.h: + * tests/benchmarks/timeline.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/examples/concatenate.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Rename GESTimelineLayer to GESLayer + +2013-04-23 19:57:44 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline.c: + * ges/ges-xml-formatter.c: + * tests/benchmarks/timeline.c: + * tests/check/ges/clip.c: + * tests/check/ges/layer.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/uriclip.c: + * tests/examples/test1.c: + 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 22:38:23 +0200 Mathieu Duponchelle + + * ges/ges-track-element.c: + trackelement: asynchronously add bindings if the track-element is not in a track yet. + Also fix annotations. + +2013-04-22 17:34:09 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-pitivi-formatter.c: + formatter: Pass a dummy instance of formatter to virtual method + Instead of passing the class itself + +2013-04-22 23:56:03 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 3cb3d3c to 5edcd85 + +2013-04-22 09:41:26 -0300 Thibault Saunier + + * ges/ges-xml-formatter.c: + Fix compilation + +2013-04-21 21:29:29 -0300 Thibault Saunier + + * ges/ges-xml-formatter.c: + xml-formatter: Use G_GUINT64_FORMAT where needed + +2013-04-21 21:13:00 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + uri-clip-asset: Add "_class_" to a class method + API CHANGE: + - ges_uri_clip_asset_set_timeout + + ges_uri_clip_asset_class_set_timeout + +2013-04-21 21:11:52 -0300 Thibault Saunier + + * ges/ges-timeline.c: + * ges/ges-xml-formatter.c: + ges: Fix compilation with clang + +2013-04-19 19:58:21 -0300 Thibault Saunier + + * ges/ges-project.c: + project: Accept NULL as a valid value for @id in _create_asset + +2013-04-18 18:41:02 -0300 Thibault Saunier + + * tests/check/ges/clip.c: + tests: Check splitting a clip with several TrackElement + +2013-04-18 21:45:18 -0300 Thibault Saunier + + * ges/ges-clip.c: + clip: Rework the splitting method + + Avoid setting clip duration of our parent ourself + Now each and every TrackElement inside a clip have the same + start/inpoint/duration + +2013-04-18 18:59:52 -0300 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + ges: Fix compilation + +2013-04-18 18:37:17 -0300 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + pipeline: Add API guards where needed + +2013-04-17 16:51:30 -0300 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + * tests/examples/thumbnails.c: + * tools/ges-launch.c: + pipeline: Add a GError argument + +2013-04-17 16:48:05 -0300 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + pipeline: Return FALSE in save_thumbnail when the operation fails + +2013-04-15 01:30:10 +0200 Mathieu Duponchelle + + * tests/check/ges/timelineedition.c: + tests:timelineedition: Add a simple trimming test + +2013-04-14 23:19:02 -0300 Thibault Saunier + + * ges/ges-container.c: + container: The TimelineElement.inpoint property is call "in-point" not inpoint + +2013-03-22 19:44:28 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + ges-clip: Remove the unlocked TrackElement APIs + Remove APIs: + ges_track_element_set_locked + ges_track_element_is_locked + Those APIs where really not nice to use and were causing more issues + than solving them. If 2 time related properties of TimelineElement must + be different, then those element can *not* have the same parent. + Plus, with the new ges_container_group () API, we will recreate 1 + GESClip containing the proper GESTimelineElements if it is the thing + to do. + +2013-03-22 19:34:14 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitivi-formatter: Remove broken code to handle unlocked track object + WARNING: The plan is to remove unlocked track object APIs so this is + the first part of that process... that code was already broken, and + *needs* to be fixed anyway, better do it using new APIs + +2013-03-22 18:43:30 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitivi-formatter: Remove saving code + +2013-04-14 17:58:38 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From aed87ae to 3cb3d3c + +2013-04-09 21:03:03 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From 04c7a1e to aed87ae + +2013-04-09 00:02:14 -0300 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline.c: + timeline: call sync_state_with_parent when adding a child + +2013-03-31 16:07:14 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * tests/check/ges/project.c: + track-element: Rename set_property_controlling_parameters set_control_source + + Generate the documentation + +2013-03-30 18:54:50 +0100 Mathieu Duponchelle + + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-xml-formatter.c: + * tests/check/ges/project.c: + * tests/check/ges/test-keyframes.xges: + [Keyframes] Adds API to set a control binding on a track element, and the serialization code. + +2013-03-30 15:40:38 +0100 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline-layer.c: + Changing remaining clip::track-element-added to container::child-added + +2013-03-30 14:35:45 +0100 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + pipeline: Implement the video overlay interface + +2013-03-30 13:37:43 +0100 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Do no create "normal" timeline when you load a project + +2013-03-30 13:34:56 +0100 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + timeline-pipeline: Enhance API guards + +2013-03-30 13:34:36 +0100 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Do no unref the timeline before returning it + +2013-03-30 12:30:47 +0100 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + container: s/get_priorty_range/get_priority_range/ + +2013-03-29 15:50:12 +0100 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Comment some variables goals + +2013-03-28 19:00:25 +0100 Thibault Saunier + + * tests/check/ges/effects.c: + tests:effect: Do not re-add effect to the track + +2013-03-24 18:42:55 +0100 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * tests/check/ges/simplelayer.c: + 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-23 09:46:38 +0100 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + container: Properly implement ges_container_group + +2013-03-23 08:48:43 +0100 Thibault Saunier + + * tests/check/ges/basic.c: + test:basic: Do not add useless references, and minor improvements + +2013-03-23 08:45:00 +0100 Thibault Saunier + + * ges/ges-clip.c: + clip: Emit notify signal when setting Clip.layer + +2013-03-23 08:14:55 +0100 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Remove TrackElement from its container on GESTimelineLayer::"clip-removed" + .... when the Track is NULL + +2013-03-23 03:27:46 -0300 Thibault Saunier + + * ges/ges-container.c: + * tests/check/ges/clip.c: + container: Make sure that the child exists when emiting the "child-removed" signal + + Add a test + +2013-03-23 03:26:33 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * ges/ges-internal.h: + container: Replace ignore_notify by a GESChildrenControlMode flag + +2013-03-23 01:35:02 -0300 Thibault Saunier + + * ges/ges-container.c: + container: Stop ignoring notifies if ->add_child fails + +2013-03-23 01:33:39 -0300 Thibault Saunier + + * ges/ges-container.c: + * ges/ges-internal.h: + * ges/ges-utils.c: + internal: Add a element_end_compare + +2013-03-23 01:31:23 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-element.h: + timeline-element: Add a macro to get element 'end' + +2013-03-22 17:39:04 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-asset.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-gerror.h: + * ges/ges-uri-asset.c: + ges: Keep ges-gerror categories simple. + +2013-03-21 22:17:10 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + * ges/ges-uri-asset.h: + * tests/check/ges/test-utils.h: + * tests/check/ges/uriclip.c: + Misc cleaning + +2013-03-21 22:12:47 -0300 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-track-element.h: + track-element: Make ges_track_element_set_track internal + Removed API: + + ges_track_element_set_track + +2013-03-21 22:03:09 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.h: + * ges/ges-internal.h: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/overlays.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + 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 21:42:31 -0300 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/image.png: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/uriclip.c: + tests::uriclip: Use a real file to test still images + + Make use of GESAssets + And do proper refactoring + +2013-03-19 21:07:58 -0300 Thibault Saunier + + * ges/ges-uri-asset.c: + uri-asset: Properly handle images and do not duplicate the TrackType + +2013-03-19 19:49:09 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-asset.c: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * tests/check/ges/uriclip.c: + 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-18 12:41:06 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-asset.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-gerror.h: + * ges/ges.h: + Start categorizing GError types in GES + +2013-03-18 10:03:19 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + timeline-element: Do not give a reference to the calles of g_object_get_property + ... for both the "parent" and the "timeline" properties + Making things simpler to handle for the copy method. + +2013-03-18 10:02:10 -0300 Thibault Saunier + + * ges/ges-clip.c: + * tests/check/ges/clip.c: + 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-18 09:49:18 -0300 Thibault Saunier + + * ges/ges-project.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * ges/ges-track.c: + Use gst_object_ref_sink instead of g_object_ref_sink when appropriate + Making refcount issue debugging simpler + +2013-03-16 19:05:04 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-project.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-transition-clip.c: + * ges/ges-uri-asset.c: + * ges/ges-utils.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/examples/assets.c: + * tests/examples/concatenate.c: + * tests/examples/ges-ui.c: + * tools/ges-launch.c: + Always prefer gst_object_(un)ref over g_object_(un)ref + Making the refcount issue debugging easier + +2013-03-15 12:01:58 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.h: + * ges/ges-internal.h: + clip: Make set/is_moving_from_layer internal + +2013-03-15 11:58:59 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.h: + * ges/ges-internal.h: + clip: Reindent header and make ges_clip_set_layer internal + +2013-03-15 11:32:48 -0300 Thibault Saunier + + * ges/ges-track.c: + * ges/ges-track.h: + track: Cleanup header and add a FIXME + +2013-03-15 00:01:47 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-timeline.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * tests/check/ges/basic.c: + 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-14 12:53:25 -0400 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/effects.c: + * tests/examples/ges-ui.c: + 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-14 11:14:31 -0400 Thibault Saunier + + * ges/Makefile.am: + * ges/ges-effect-asset.c: + * ges/ges-effect-asset.h: + * ges/ges-effect.c: + Add a GESEffectAsset class, and make sure to set the GESTrackType asap on effects + + Make use of the asset in ges_effect_new + +2013-03-03 11:50:10 -0300 Thibault Saunier + + * ges/ges-custom-source-clip.c: + * ges/ges-effect-clip.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-title-clip.c: + * ges/ges-transition-clip.c: + ges: Use GESAsset in clip contructors when possible + +2013-03-03 11:16:10 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + timeline-element: Set asset from the copied element to the new copy + +2013-03-02 18:35:34 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * tests/check/ges/clip.c: + container: Add a ges_container_group method + + Add some basic unit tests + API: + GESContainer:group vmethod + ges_container_group + +2013-03-01 22:26:01 -0300 Thibault Saunier + + * ges/ges-track.c: + track: Do not remove a TrackElement from a NULL clip + +2013-03-01 20:25:17 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-container.c: + * ges/ges-container.h: + * tests/check/ges/clip.c: + container: Add a way to ungroup a GESContainer into several GESContainers + + Add simple unit test + API: + GESContainerClass::ungroup vmethod + ges_container_ungroup + +2013-03-01 22:05:45 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + timeline-element: Make it possible to reset parent to NULL + +2013-03-01 19:18:10 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-base-xml-formatter.h: + * ges/ges-container.c: + * ges/ges-container.h: + * ges/ges-pitivi-formatter.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-element.h: + * ges/ges-timeline-layer.h: + * ges/ges-timeline.h: + Fix some documentations + +2013-02-28 22:27:50 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-auto-transition.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-container.c: + * ges/ges-container.h: + * ges/ges-internal.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-source-clip.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-track.c: + * ges/ges-transition-clip.c: + * ges/ges-types.h: + * ges/ges-uri-clip.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/examples/ges-ui.c: + * tests/examples/transition.c: + 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-01 11:03:18 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + docs: Remove ges_clip_lock_track_elements + it does not exist anymore... + +2013-02-28 22:22:35 -0300 Thibault Saunier + + * ges/ges-timeline-element.c: + timeline-element: Enhance debug statement and documentation + + Accept NULL as a parent + +2013-02-28 15:12:15 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-timeline-layer.c: + * ges/ges-track.c: + timeline-element: Add a "timeline" property + +2013-02-28 18:14:22 -0300 Thibault Saunier + + * .gitignore: + gitignore: Ignore *.page + +2013-03-14 16:09:37 -0300 Thibault Saunier + + * docs/random/rework_class_hierarchie.html: + docs: Add an little explanation about the class hierarchie rework + +2013-03-07 00:04:38 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 2de221c to 04c7a1e + +2013-03-06 10:27:15 +0400 Руслан Ижбулатов + + * ges/ges-timeline-element.c: + ges-timeline-element: Fix GST_DEBUG_OBJECT invocations + Fixes #695267 + +2013-02-14 23:34:48 -0300 Thibault Saunier + + * ges/ges-audio-transition.c: + * ges/ges-auto-transition.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-custom-source-clip.c: + * ges/ges-custom-source-clip.h: + * ges/ges-image-source.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-track-element.c: + * ges/ges-transition-clip.c: + * ges/ges-uri-clip.c: + * ges/ges-uri-source.c: + * tests/benchmarks/timeline.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/examples/ges-ui.c: + * tools/ges-launch.c: + Rename object/tobj/trobj to clip or track_element as necessary + Not really complete but it is a good start! + +2013-02-09 21:49:16 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-effect-clip.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline.c: + * ges/ges-transition-clip.c: + Finish renaming tck_obj and derivate to track_element + +2013-02-08 17:25:25 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-clip.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline.c: + * ges/ges-xml-formatter.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Rename GESTimelineLayer.xxx_object to GESTimelineLayer.xxx_clip + +2013-02-08 17:23:18 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline.c: + * ges/ges-track.c: + * ges/ges-track.h: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/uriclip.c: + * tests/examples/ges-ui.c: + track: Rename all GESTrack.xxx_object to GESTrack.xxx_element + +2013-02-08 17:19:39 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * tests/examples/ges-ui.c: + Properly rename object-added to clip-added + +2013-02-08 17:11:22 -0300 Thibault Saunier + + * ges/ges-clip.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-uri-clip.c: + * ges/ges.c: + * tests/check/ges/basic.c: + * tests/check/ges/uriclip.c: + * tests/examples/ges-ui.c: + * tests/examples/test1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tools/ges-launch.c: + Finish renaming timeline object to clip + +2013-02-08 16:39:18 -0300 Thibault Saunier + + * ges/ges-audio-test-source.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-custom-source-clip.h: + * ges/ges-image-source.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * ges/ges-title-source.c: + * ges/ges-track-element.c: + * ges/ges-track.c: + * ges/ges-uri-clip.c: + * ges/ges.c: + * tests/check/ges/basic.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/examples/ges-ui.c: + Finish renaming track object to track element + +2013-02-01 17:51:02 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + Add GESTimelineElement.{start, inpoint, duration, maxduration, priority} getters + +2013-01-28 14:36:06 -0300 Thibault Saunier + + * ges/ges-uri-clip.c: + uriclip: Fix wrong acces to object instead of its duration field + +2013-01-27 16:21:01 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-title-clip.c: + * ges/ges-title-clip.h: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + * tests/check/ges/titles.c: + Reword ges_title_clip_set_color to ges_title_clip_set_text_color + +2013-01-27 16:16:27 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-effect-clip.c: + * ges/ges-title-clip.c: + * ges/ges-title-clip.h: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + Rename ges_title_.*_set_background to set_background_color + +2013-01-27 16:07:12 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-title-clip.c: + * ges/ges-title-clip.h: + titleclip: Remove useless mute property + +2013-01-27 16:02:31 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitiviformatter: Fix renaming issues + +2013-01-27 16:02:19 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay-clip.h: + * tests/check/ges/overlays.c: + * tests/examples/overlays.c: + Rename overlay_text to text_overlay + +2013-01-27 12:51:52 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-clip-asset.c: + * ges/ges-clip-asset.h: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.c: + * ges/ges.h: + Rename GESAssetClip to GESClipAsset + +2013-01-27 12:44:13 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-audio-transition.c: + * ges/ges-audio-transition.h: + * ges/ges-transition-clip.c: + * ges/ges-types.h: + * ges/ges.h: + Rename GESTrackAudioTransition to GESAudioTransition + +2013-01-27 12:41:51 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-track-video-transition.h: + * ges/ges-transition-clip.c: + * ges/ges-types.h: + * ges/ges-video-transition.c: + * ges/ges-video-transition.h: + * ges/ges.h: + * tests/check/ges/transition.c: + Rename GESTrackVideoTransition to GESVideoTransition + +2013-01-27 12:31:10 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-timeline.c: + * ges/ges-track-audio-transition.c: + * ges/ges-track-audio-transition.h: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + * ges/ges-transition-clip.c: + * ges/ges-transition.c: + * ges/ges-transition.h: + * ges/ges-types.h: + * ges/ges.h: + Rename GESTrackTransition to GESTransition + +2013-01-27 12:27:19 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-base-effect.c: + * ges/ges-base-effect.h: + * ges/ges-operation.c: + * ges/ges-operation.h: + * ges/ges-text-overlay.c: + * ges/ges-text-overlay.h: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * ges/ges-types.h: + * ges/ges.h: + Rename GESTrackOperation to GESOperation + +2013-01-27 12:24:44 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay.c: + * ges/ges-text-overlay.h: + * ges/ges-track-text-overlay.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/overlays.c: + * tests/check/ges/text_properties.c: + Rename GESTrackTextOverlay to GESTextOverlay + +2013-01-26 14:25:14 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-title-clip.c: + * ges/ges-title-source.c: + * ges/ges-title-source.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * ges/ges-track-title-source.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/titles.c: + Rename GESTrackTitleSource to GESTitleSource + +2013-01-26 14:21:56 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-image-source.c: + * ges/ges-image-source.h: + * ges/ges-types.h: + * ges/ges-uri-clip.c: + * ges/ges.h: + * tests/check/ges/uriclip.c: + Rename GESTrackImageSource to GESImageSource + +2013-01-26 14:14:57 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-asset-track-object.h: + * ges/ges-track-element-asset.c: + * ges/ges-track-element-asset.h: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.c: + * ges/ges-uri-source.c: + * ges/ges.h: + Rename GESAssetTrackElement to GESTrackElementAsset + +2013-01-26 14:07:01 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.c: + * ges/ges-uri-source.c: + * ges/ges-uri-source.h: + * ges/ges.h: + Rename TrackFileSource to UriSource + +2013-01-26 13:08:20 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * docs/working-diagrams.svg: + * ges/Makefile.am: + * ges/ges-audio-test-source.c: + * ges/ges-audio-test-source.h: + * ges/ges-clip.c: + * ges/ges-custom-source-clip.c: + * ges/ges-source-clip.c: + * ges/ges-source.c: + * ges/ges-source.h: + * ges/ges-timeline.c: + * ges/ges-track-filesource.c: + * ges/ges-track-filesource.h: + * ges/ges-track-image-source.c: + * ges/ges-track-image-source.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * ges/ges-types.h: + * ges/ges-video-test-source.c: + * ges/ges-video-test-source.h: + * ges/ges.h: + Rename GESTrackSource to GESSource + +2013-01-26 13:03:39 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-test-clip.c: + * ges/ges-track-title-source.c: + * ges/ges-track-video-test-source.h: + * ges/ges-types.h: + * ges/ges-video-test-source.c: + * ges/ges-video-test-source.h: + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + Rename GESTrackVideoTestSource to GESVideoTestSource + +2013-01-26 13:02:02 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-audio-test-source.c: + * ges/ges-audio-test-source.h: + * ges/ges-test-clip.c: + * ges/ges-track-audio-test-source.h: + * ges/ges-types.h: + * ges/ges-uri-clip.c: + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + Rename GESTrackAudioTestSource to GESAudioTestSource + +2013-01-26 12:40:51 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-asset.c: + * ges/ges-effect-clip.c: + * ges/ges-effect.c: + * ges/ges-effect.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-track-parse-launch-effect.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/ges/asset.c: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + * tests/check/ges/test-project.xges: + * tests/examples/ges-ui.c: + Rename GESTrackParseLaunchEffect to GESEffect + +2013-01-26 12:35:19 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * docs/working-diagrams.svg: + * ges/Makefile.am: + * ges/ges-asset.c: + * ges/ges-base-effect.c: + * ges/ges-base-effect.h: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-track-parse-launch-effect.c: + * ges/ges-track-parse-launch-effect.h: + * ges/ges-types.h: + * ges/ges-xml-formatter.c: + * ges/ges.h: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + Rename TrackEffect to BaseEffect + +2013-01-26 12:31:33 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-asset-clip.c: + * ges/ges-asset-track-object.c: + * ges/ges-asset-track-object.h: + * ges/ges-asset.c: + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-custom-source-clip.c: + * ges/ges-custom-source-clip.h: + * ges/ges-effect-clip.c: + * ges/ges-internal.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-test-clip.c: + * ges/ges-text-overlay-clip.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * ges/ges-title-clip.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-transition.c: + * ges/ges-track-effect.c: + * ges/ges-track-element.c: + * ges/ges-track-element.h: + * ges/ges-track-filesource.c: + * ges/ges-track-image-source.c: + * ges/ges-track-operation.c: + * ges/ges-track-operation.h: + * ges/ges-track-parse-launch-effect.c: + * ges/ges-track-source.c: + * ges/ges-track-source.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-title-source.c: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-transition.c: + * ges/ges-track.c: + * ges/ges-track.h: + * ges/ges-transition-clip.c: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.c: + * ges/ges-xml-formatter.c: + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/check/ges/uriclip.c: + * tests/examples/ges-ui.c: + * tests/examples/transition.c: + Rename GESTrackObject to GESTrackElement + +2013-01-25 15:51:02 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-effect-clip.c: + * ges/ges-effect-clip.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/effects.c: + Rename GESStandardEffectClip to GESEffectClip + +2013-01-25 15:45:07 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-base-effect-clip.c: + * ges/ges-base-effect-clip.h: + * ges/ges-standard-effect-clip.c: + * ges/ges-standard-effect-clip.h: + * ges/ges-types.h: + * ges/ges.h: + Rename GESEffectClip to GESBaseEffectClip + +2013-01-25 15:16:21 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-asset.c: + * ges/ges-enums.c: + * ges/ges-timeline.c: + * ges/ges-transition-clip.c: + * ges/ges-transition-clip.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/ges/asset.c: + * tests/check/ges/layer.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/transition.c: + * tests/examples/ges-ui.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Rename GESStandardTransitionClip to GESTransitionClip + +2013-01-25 11:26:14 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-auto-transition.c: + * ges/ges-base-transition-clip.c: + * ges/ges-base-transition-clip.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-standard-transition-clip.c: + * ges/ges-standard-transition-clip.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/examples/ges-ui.c: + Rename GESTransitionClip to GESBaseTransitionClip + +2013-01-20 12:58:05 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + timelineelement: Implement the notion of parenting + +2013-01-17 00:58:28 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-test-clip.c: + * ges/ges-test-clip.h: + * ges/ges-timeline-test-source.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * tests/benchmarks/timeline.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/project.c: + * tests/check/ges/text_properties.c: + * tests/examples/ges-ui.c: + * tests/examples/test1.c: + * tests/examples/thumbnails.c: + * tools/ges-launch.c: + Rename GESTimelineTestSource to GESTestSourceClip + +2013-01-17 00:55:03 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-timeline-title-source.h: + * ges/ges-title-clip.c: + * ges/ges-title-clip.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/ges/titles.c: + * tests/examples/ges-ui.c: + * tools/ges-launch.c: + Rename GESTimelineTileSource to GESTitleClip + +2013-01-17 00:53:26 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-text-overlay-clip.c: + * ges/ges-text-overlay-clip.h: + * ges/ges-timeline-text-overlay.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/overlays.c: + * tests/examples/overlays.c: + Rename GESTimelineTextOverlay to GESTextOverlayClip + +2013-01-17 00:49:43 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-overlay-clip.c: + * ges/ges-overlay-clip.h: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/ges/asset.c: + Rename GESTimelineOverlay to GESOverlayClip + +2013-01-17 00:35:39 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-custom-source-clip.c: + * ges/ges-custom-source-clip.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-source-clip.c: + * ges/ges-source-clip.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-test-source.h: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-track-effect.c: + * ges/ges-track-parse-launch-effect.c: + * ges/ges-types.h: + * ges/ges-uri-clip.c: + * ges/ges-uri-clip.h: + * ges/ges.h: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/layer.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/timelineedition.c: + Rename GESTimelineSource to GESSourceClip + And GESCustomTimelineSource to GESCustomSourceClip + +2013-01-17 00:26:35 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-effect-clip.c: + * ges/ges-effect-clip.h: + * ges/ges-operation-clip.c: + * ges/ges-operation-clip.h: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-overlay.h: + * ges/ges-transition-clip.c: + * ges/ges-transition-clip.h: + * ges/ges-types.h: + * ges/ges.h: + Rename GESTimelineOperation to GESOperationClip + +2013-01-17 00:04:41 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-standard-effect-clip.c: + * ges/ges-standard-effect-clip.h: + * ges/ges-timeline-parse-launch-effect.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/effects.c: + Rename GESTimelineParseLaunchEffect to GESStandardEffectClip + +2013-01-16 23:21:01 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-asset.c: + * ges/ges-enums.c: + * ges/ges-meta-container.c: + * ges/ges-standard-transition-clip.c: + * ges/ges-standard-transition-clip.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-standard-transition.h: + * ges/ges-timeline.c: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/ges/asset.c: + * tests/check/ges/effects.c: + * tests/check/ges/layer.c: + * tests/check/ges/project.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/transition.c: + * tests/examples/ges-ui.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Rename GESTimelineStandardTransition to GESStandardTransitionClip + +2013-01-16 23:16:02 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-meta-container.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-standard-transition.c: + * ges/ges-timeline-standard-transition.h: + * ges/ges-timeline.c: + * ges/ges-transition-clip.c: + * ges/ges-transition-clip.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + * tests/examples/ges-ui.c: + Rename GESTimelineTransition to GESTransitionClip + +2013-01-16 23:11:14 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-effect-clip.c: + * ges/ges-effect-clip.h: + * ges/ges-meta-container.c: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-timeline-parse-launch-effect.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + Rename GESTimelineEffect to GESEffectClip + +2013-01-20 12:44:57 -0300 Thibault Saunier + + * android/ges.mk: + * bindings/python/examples/material.py: + * bindings/python/examples/simple.py: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-asset-clip.c: + * ges/ges-asset.c: + * ges/ges-extractable.c: + * ges/ges-meta-container.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-track-filesource.c: + * ges/ges-types.h: + * ges/ges-uri-asset.c: + * ges/ges-uri-asset.h: + * ges/ges-uri-clip.c: + * ges/ges-uri-clip.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/Makefile.am: + * tests/check/ges/asset.c: + * tests/check/ges/effects.c: + * tests/check/ges/project.c: + * tests/check/ges/test-project.xges: + * tests/check/ges/uriclip.c: + * tests/examples/assets.c: + * tests/examples/concatenate.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + 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-01-20 12:42:29 -0300 Thibault Saunier + + * android/ges.mk: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-asset-clip.c: + * ges/ges-asset-clip.h: + * ges/ges-asset-file-source.c: + * ges/ges-asset-file-source.h: + * ges/ges-asset-track-object.c: + * ges/ges-asset.c: + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-base-xml-formatter.c: + * ges/ges-clip.c: + * ges/ges-clip.h: + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + * ges/ges-internal.h: + * ges/ges-meta-container.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-operation.c: + * ges/ges-timeline-operation.h: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + * ges/ges-timeline-standard-transition.c: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-filesource.c: + * ges/ges-track-image-source.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track.c: + * ges/ges-types.h: + * ges/ges-xml-formatter.c: + * ges/ges.h: + * tests/benchmarks/timeline.c: + * tests/check/Makefile.am: + * tests/check/ges/.gitignore: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/clip.c: + * tests/check/ges/effects.c: + * tests/check/ges/filesource.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/project.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/test-project.xges: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Rename GESTimelineObject to GESClip + +2013-01-15 10:52:17 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-auto-transition.c: + * ges/ges-internal.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-element.c: + * ges/ges-timeline-element.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track.c: + * ges/ges-types.h: + * ges/ges-utils.c: + * ges/ges-xml-formatter.c: + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/effects.c: + * tests/check/ges/filesource.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/timelineedition.c: + * tests/check/ges/timelineobject.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/examples/ges-ui.c: + Add a GESTimelineElement base class + + Port GESTrackObject and GESTimelineObject to the new baseclass + +2013-02-10 12:07:48 -0500 Jean-François Fortin Tam + + * docs/libs/architecture.xml: + docs: Clarify the distinction between Tracks and Layers + +2013-01-30 20:12:26 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-project.c: + project: Update loading asset when a URI is missing + +2013-01-30 01:27:17 -0800 Kerrick Staley + + * configure.ac: + build: replace AM_CONFIG_HEADER with AC_CONFIG_HEADERS to fix build with automake 1.13 + AM_CONFIG_HEADER is deprecated; see + https://lists.gnu.org/archive/html/automake/2012-12/msg00038.html + https://bugzilla.gnome.org/show_bug.cgi?id=692864 + +2013-01-28 20:46:06 +0100 Stefan Sauer + + * common: + Automatic update of common submodule + From a942293 to 2de221c + +2013-01-22 18:44:00 -0300 Thibault Saunier + + * configure.ac: + configure: Properly check if PyGObject is present + And make use of the PyGObject overrides if present + +2013-01-22 18:08:44 -0300 Thibault Saunier + + * configure.ac: + Bump Glib dependency to 2.34 + We use new APIs (g_list_copy_deep) that appeared in GLib 2.34 + +2013-01-22 19:51:25 +0000 Tim-Philipp Müller + + * ges/ges-base-xml-formatter.c: + * ges/ges-project.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + * tests/check/ges/simplelayer.c: + Fix various printf format issues in debug messages + +2013-01-15 15:09:39 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From a72faea to a942293 + +2013-01-14 09:01:24 -0300 Thibault Saunier + + * configure.ac: + Bump GStreamer dependency version to current master (1.1.0) + +2013-01-12 20:49:31 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitiviformatter: Handle project metadatas + +2013-01-12 10:50:24 -0300 Thibault Saunier + + * ges/ges-timeline-object.h: + * ges/ges-xml-formatter.c: + xmlformatter: Do no allow saving CONSTRUCTONLY properties + +2013-01-11 19:10:31 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + layer: State assets we create async as loading to the project + +2013-01-11 19:07:22 -0300 Thibault Saunier + + * ges/ges-project.c: + * tests/check/ges/project.c: + project: Track Asset that were loaded with error + +2013-01-11 11:49:02 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-asset.c: + * ges/ges-base-xml-formatter.c: + * ges/ges-internal.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-project.c: + * ges/ges-project.h: + * ges/ges-timeline-layer.c: + * tests/check/ges/project.c: + project: Handle assets that are being loaded + API: + ges_project_get_loading_assets + +2013-01-11 15:26:26 -0300 Thibault Saunier + + * ges/ges-timeline-object.h: + * ges/ges-timeline.h: + ges: Documentations fixes + +2013-01-10 18:50:54 -0300 Thibault Saunier + + * ges/Makefile.am: + * ges/ges-auto-transition.c: + * ges/ges-auto-transition.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * tests/check/ges/layer.c: + Reimplement the auto-transition feature + + Actually implement unit tests + +2013-01-10 18:09:23 -0300 Thibault Saunier + + * ges/ges-track-object.c: + trackobject: Make the GESTrack (parent track) a GObject property + +2013-01-10 18:01:33 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Minor refactoring + +2013-01-10 13:32:15 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Avoid recreating the moving_tlobjs when unecessary + +2013-01-10 12:41:13 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + Misc debug message enhancements + +2013-01-10 12:24:20 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Keep track of whether updates are enabled or not + Check if we want to track Track-s enable status and update our status according + to that + +2013-01-10 11:58:59 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + layer: Properly emit the notify signal when auto_transition changes + +2013-01-10 11:39:46 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Track TrackObject-s by layer + +2013-01-10 11:18:46 -0300 Thibault Saunier + + * tests/check/ges/test-utils.h: + tests: Add a macro for type checking + +2013-01-10 11:15:32 -0300 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * ges/ges-track.c: + * ges/ges-utils.c: + utilities: Make internal utilities instead of copy/pasting functions + +2013-01-10 11:01:05 -0300 Thibault Saunier + + * .gitignore: + gitignore: Ignore anjuta files + +2013-01-05 12:02:03 -0300 Thibault Saunier + + * configure.ac: + * tests/Makefile.am: + * tests/benchmarks/Makefile.am: + * tests/benchmarks/timeline.c: + Benchmark rippling + +2013-01-04 13:11:51 -0300 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-timeline-layer.c: + Move LAYER_HEIGHT definition from -timeline-layer.c c to -internal.h + +2013-01-04 13:04:26 -0300 Thibault Saunier + + * ges/ges-asset-track-object.c: + asset-track-object: Minor doc fixing + +2013-01-03 11:43:05 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Remove dead macros + +2013-01-03 11:41:48 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Use g_sequence_sort_changed when appropriate + +2013-01-03 10:34:17 -0300 Thibault Saunier + + * ges/ges-track.c: + track: Keep in cache the GSequenceIter so we get a faster acces to them + +2012-12-30 22:37:22 -0300 Thibault Saunier + + * ges/ges-formatter.c: + formatter: Plug some leaks + +2012-12-29 19:36:07 -0300 Thibault Saunier + + * tests/check/ges/project.c: + test: project: Fix various leaks + +2012-12-29 19:34:29 -0300 Thibault Saunier + + * ges/ges-base-xml-formatter.c: + * ges/ges-xml-formatter.c: + xmlformatter: Plug various leaks + +2012-12-29 18:24:05 -0300 Thibault Saunier + + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + * ges/ges-track.c: + Misc nitpick fixing + +2012-12-29 18:04:25 -0300 Thibault Saunier + + * ges/ges-project.c: + project: Plug various leaks. + +2012-12-29 18:02:35 -0300 Thibault Saunier + + * ges/ges-meta-container.c: + meta-container: Plug various leaks + +2012-12-29 17:58:02 -0300 Thibault Saunier + + * ges/ges-asset.c: + asset: Do not allow proxying over the same currently proxied asset + +2012-12-29 17:54:51 -0300 Thibault Saunier + + * ges/ges-asset.c: + asset: Fix some leaks + +2012-12-29 17:52:42 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-custom-timeline-source.c: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-standard-transition.c: + * ges/ges-track-parse-launch-effect.c: + asset: Avoid leaking the GParameter array and content + +2012-12-29 14:10:11 -0300 Thibault Saunier + + * ges/ges-asset-file-source.c: + assetfilesource: Fix some leaks + +2012-12-29 14:09:26 -0300 Thibault Saunier + + * tests/examples/concatenate.c: + tests: Remove useless mutex + +2012-12-29 14:08:58 -0300 Thibault Saunier + + * .gitignore: + Add some more gitignore + +2012-12-28 19:10:17 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + * ges/ges-xml-formatter.c: + Refrase formatters descriptions + +2012-12-28 19:06:30 -0300 Thibault Saunier + + * ges/ges-formatter.c: + formatter: First check the extension when checking if can load URI + +2012-12-28 11:40:33 -0300 Thibault Saunier + + * ges/ges-project.c: + project: Run the vmethod in first stage for the "loaded" signal + This is most probably what sublcasses will need + +2012-12-24 09:29:48 -0300 Thibault Saunier + + * ges/ges-screenshot.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/timelineobject.c: + * tests/check/ges/titles.c: + tests: Fix misc issues + Now GST_CAPS_ANY is a singleton, it is not returning a newly created caps + anymore + +2012-12-24 09:29:04 -0300 Thibault Saunier + + * docs/libs/Makefile.am: + * ges/Makefile.am: + * tests/check/Makefile.am: + Allow checking code coverage + +2012-12-21 20:17:41 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-asset-file-source.c: + * ges/ges-asset-timeline-object.c: + * ges/ges-asset-track-object.c: + * ges/ges-asset.c: + * ges/ges-custom-timeline-source.c: + * ges/ges-extractable.c: + * ges/ges-project.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-effect.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-operation.c: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-track-effect.c: + * ges/ges-track-object.c: + Misc documentation fixes + Using "#" a in short_description screws the display + +2012-12-21 20:48:03 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-asset-file-source.c: + * ges/ges-asset-file-source.h: + * ges/ges-asset-track-object.c: + * ges/ges-asset-track-object.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline.c: + * ges/ges-track-filesource.c: + * ges/ges-types.h: + * ges/ges.h: + Implement a GESAssetTrackObject class + + Addapt the rest of the code to make use of it + +2012-12-21 18:51:26 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-asset-file-source.c: + * ges/ges-asset-file-source.h: + * ges/ges-asset-timeline-object.c: + * ges/ges-asset-timeline-object.h: + * ges/ges-meta-container.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-object.c: + * ges/ges-types.h: + * ges/ges.h: + Implement a GESAssetTimelineObject class + + Make GESAssetFileSource a subclass of it + + Remove ges_asset_filesource_get_supported_type as it is now in GESAssetTimelineObject + + Remove the GES_META_TIMELINE_OBJECT_SUPPORTED_FORMATS as it is useless now + +2012-12-21 14:28:16 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/ges-asset-file-source.c: + * ges/ges-asset-file-source.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-track-filesource.c: + * ges/ges-types.h: + Add a GESAssetTrackFileSource class and make use of it all around + +2012-12-20 20:23:54 -0300 Sebastian Dröge + + * ges/ges-custom-timeline-source.c: + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-timeline-standard-transition.c: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-transition.c: + * ges/ges-track-image-source.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-title-source.c: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-transition.c: + * ges/ges-track.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/effects.c: + * tests/check/ges/filesource.c: + * tests/check/ges/overlays.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/timelineobject.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + 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-20 20:21:51 -0300 Thibault Saunier + + * ges/ges-enums.c: + * ges/ges-enums.h: + Add a utility method to get the name of a GESTrackType + API: + ges_track_type_name + +2012-12-20 14:58:35 -0300 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + timelinepipeline: Properly reset #GESTrack caps when switching back to playback + +2012-12-20 11:28:39 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Properly popullate the tracks field with GESTrack-s + + add priv_tracks private field that contained TrackPrivate structures + We now have 2 list containing our tracks, one with TrackPrivate structures, and one the + GESTrack-s themselves. + +2012-12-21 10:43:41 -0300 Thibault Saunier + + * .gitignore: + Add some ignored files + +2012-12-20 10:17:24 -0300 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + Revert "Revert "ges: timeline-pipeline: Remove playsink send_event hack"" + This reverts commit 094669391ddf8a29b3a1d1168a78cc50c20341b4. + Conflicts: + ges/ges-timeline-pipeline.c + +2012-12-17 22:35:28 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-base-xml-formatter.h: + * ges/ges-enums.h: + * ges/ges-extractable.h: + * ges/ges-formatter.h: + * ges/ges-meta-container.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-types.h: + Misc documentation fixing + +2012-12-05 08:51:48 -0300 Thibault Saunier + + * ges/ges-formatter.c: + formatter: Rework the _save_to_uri method to give more debug information + +2012-12-17 17:06:33 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + timeline-layer: Handle project when adding a GESTimelineObject directly + +2012-11-29 17:07:24 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + timeline-layer: Implement the Extractable type + We can imagine user implemts more Layer type, it could be usefull for formatters + to instanciate through a GESMaterial + +2012-11-27 13:54:54 -0300 Thibault Saunier + + * ges/ges-timeline-object.h: + timeline-object: Reindent header file + +2012-11-27 13:53:22 -0300 Thibault Saunier + + * ges/ges-timeline-file-source.c: + * ges/ges.c: + docs: Minor documentation fixes + +2012-11-27 13:52:59 -0300 Thibault Saunier + + * ges/ges-internal.h: + internale: Add the G_GNUC_INTERNAL attribute to all internal methods + +2012-09-09 21:25:54 -0300 Volodymyr Rudyi + + * tests/check/ges/asset.c: + tests: Add testcase for GESAsset + +2012-11-27 13:52:20 -0300 Thibault Saunier + + * ges/ges-asset.c: + * ges/ges-enums.c: + * ges/ges-timeline-transition.h: + ges: Create assets for all GESTimelineStandardTransition on ges_init() + + Add some testsuite + +2012-11-27 12:53:14 -0300 Thibault Saunier + + * ges/ges.c: + ges: Make sure not to initialize twice + +2012-11-27 12:18:27 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + timelineobject: Add a method to add a GESAsset + + Avoid to assume function arguments are correct before actually testing + them in ges_timeline_object_add_track_object + API: ges_timeline_object_add_asset + +2012-11-26 17:27:24 -0300 Thibault Saunier + + * ges/ges-timeline-standard-transition.c: + timeline-standard-transition: Override the GESExtractable implementation + Standard transition material have the vtype property as ID, it has the particularity + that the ID can be changed at runtime + + Implement tests to make sure it behaves properly + +2012-11-26 17:24:43 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + timelinefilesource: Remove deprectated methods + Removed API: + ges_timeline_filesource_get_supported_formats + +2012-11-24 00:09:28 -0300 Thibault Saunier + + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * tests/examples/ges-ui.c: + * tools/ges-launch.c: + timeline: Make use of the Project API for timeline saving + API: + * Add a formatter_type paramatter to ges_timeline_save_to_uri + +2012-09-23 02:13:38 +0200 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/project.c: + * tests/check/ges/test-project.xges: + * tests/check/ges/test.xptv: + tests: Add GESProject tests + +2012-11-19 13:24:03 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-base-xml-formatter.c: + * ges/ges-base-xml-formatter.h: + * ges/ges-internal.h: + * ges/ges-xml-formatter.c: + * ges/ges-xml-formatter.h: + * ges/ges.c: + * ges/ges.h: + xml-formatter: Implement a GESXmlFormatter + +2012-11-18 20:20:47 -0300 Thibault Saunier + + * ges/ges-track.c: + track: Set the gap element creator function when tracks are using raw audio/video + +2012-11-18 20:19:01 -0300 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + pipeline: Minor documentation fixes + +2012-11-18 12:46:05 -0300 Thibault Saunier + + * ges/ges-custom-timeline-source.c: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-object.c: + * tests/check/ges/layer.c: + 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-11-20 18:23:59 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Implement the GESMetaContainerInterface + +2012-09-23 02:11:46 +0200 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Implement the GESExtractable interface + +2012-11-11 13:51:45 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: Make timeline->track and timeline->layers public fields + +2012-12-17 19:26:23 -0300 Thibault Saunier + + formatter: Make it work with GESProject + + Compile new GESProject code + The formatter and projects should work together, and the user will in the end not need + the GESFormatter API in most cases. Start making that happening + Update the GESPitiviFormatter to the new behaviour and remove APIs that became + obselete + API: + + Adds: + * Pass the GESFormatterClass to can_load/save_uri vmethods + * Add an @overwrite argumenent to ges_formatter_save_to_uri and the + corresponding vmethod + * Add name, description, extension, mimetype, version, rank metadatas + to GESFormatterClass + + Removes: + * ges_pitivi_formatter_set_sources: + * ges_pitivi_formatter_get_sources: + +2012-09-24 22:24:42 +0200 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + formatter: Implement the GESExtractable interface + Make it a GInitially unowned, GESProject will become the owner + +2012-09-21 15:48:56 +0200 Thibault Saunier + + * tests/check/ges/audio_only.ogg: + * tests/check/ges/audio_video.ogg: + * tests/check/ges/filesource.c: + tests: First filesource test port to assets + +2012-09-20 12:16:38 +0200 Thibault Saunier + + * tests/examples/test1.c: + Examples: Use GESTimelineTestSource instead of GESCustomTimelineSource in test1 + +2012-09-02 15:14:27 +0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/ges-internal.h: + * ges/ges-project.c: + * ges/ges-project.h: + * ges/ges-types.h: + * ges/ges.h: + project: Implement GESProject + Do not build yet, waiting for everythnig to be in place before doing so + Co-Authored-By: Volodymyr Rudyi + +2012-11-21 10:22:41 -0300 Thibault Saunier + + * ges/ges-track.c: + track: Implement the GESMetaContainer interface + +2012-11-20 18:25:31 -0300 Thibault Saunier + + * ges/ges-track-object.c: + trackobject: Implement the GESMetaContainerInterface + +2012-11-20 00:29:23 -0300 Thibault Saunier + + * ges/ges-timeline-object.c: + timeline-object: Implement the GESMetadataContainer interface + +2012-11-19 23:42:47 -0300 Thibault Saunier + + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track-parse-launch-effect.c: + trackobject: Implement the GESExtractable interface + +2012-09-19 22:36:38 +0200 Thibault Saunier + + * ges/ges-timeline-test-source.c: + docs: Update GESTimelineTestSource documentation + +2012-09-18 14:42:58 +0200 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + customtimelinesource: Override Extractable + API: ges_material_custom_timeline_source_new (helper method) + +2012-09-18 14:40:51 +0200 Thibault Saunier + + * bindings/python/examples/material.py: + * bindings/python/examples/simple.py: + bindings: Add simple python examples + +2012-09-14 01:05:45 +0200 Thibault Saunier + + * Makefile.am: + * bindings/Makefile.am: + * bindings/python/Makefile.am: + * bindings/python/examples/Makefile.am: + * bindings/python/gi/Makefile.am: + * bindings/python/gi/__init__.py: + * bindings/python/gi/overrides/GES.py: + * bindings/python/gi/overrides/Makefile.am: + * bindings/python/gi/overrides/__init__.py: + * configure.ac: + bindings: Start implementing overrides for python + +2012-09-09 21:26:49 -0300 Thibault Saunier + + * tests/examples/concatenate.c: + example: Port the concatenate example to assets + +2012-09-09 21:26:15 -0300 Volodymyr Rudyi + + * tests/examples/Makefile.am: + * tests/examples/assets.c: + examples: Add basic examples of asset + +2012-12-17 17:05:56 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline.c: + ges: Implement the ges_timeline_layer_add_asset method + + Remove GstDiscoverer related code in GESTimeline as we do not need it anymore + + Refactor the ges_timeline_layer_add_object method to make sure it is still working as intended + API: + ges_timeline_layer_add_asset + +2012-09-09 21:21:21 -0300 Volodymyr Rudyi + + * ges/ges-timeline-file-source.c: + timelinefilesource: Override default GESExtractable interface implementation + +2012-09-09 21:20:46 -0300 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + timelineobject: Implement the GESExtractable interface + +2012-09-09 21:15:17 -0300 Volodymyr Rudyi + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-asset-file-source.c: + * ges/ges-asset-file-source.h: + * ges/ges-asset.c: + * ges/ges-internal.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + ges: Implement GESAssetFileSource + + Generate the documentation + + Make the new Asset infrastructure compile + Co-Authored-By: Thibault Saunier + +2012-09-09 21:12:06 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/ges-extractable.c: + * ges/ges-extractable.h: + * ges/ges-internal.h: + * ges/ges-types.h: + * ges/ges.h: + ges: Implement the GESExtractable interface + + Generate the documentation + Note: Do not compile (add to Makefile.am) for now as we are missing pieces at that point + Co-Authored-By: Volodymyr Rudyi + +2012-08-31 19:36:37 -0700 Volodymyr Rudyi + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-asset.c: + * ges/ges-asset.h: + * ges/ges-internal-enums.h: + * ges/ges-internal.h: + * ges/ges-types.h: + * ges/ges.h: + ges: Implement GESAsset + + Generate the documentation + Note: Do not compile (add to Makefile.am) for now as we are missing pieces at that point + Co-Authored-By: Thibault Saunier + +2012-12-17 15:27:52 -0300 Thibault Saunier + + * docs/design/asset.txt: + design: Add asset design document + Co-Authored-By: Volodymyr Rudyi + +2012-08-10 12:58:13 -0400 Thibault Saunier + + * ges/ges-timeline-file-source.c: + filesource: Make the uri property CONSTRUCT_ONLY + This is the way it should always have been. + +2012-07-21 17:12:08 +0200 Thibault Saunier + + * .gitignore: + gitignore: Ignore some more files + +2012-12-17 15:17:50 -0300 Thibault Saunier + + * tests/check/ges/layer.c: + tests: implement GESMetaContainer tests + Co-Authored-By: Paul Lange + +2012-12-17 15:24:52 -0300 Paul Lange + + * ges/ges-timeline-layer.c: + timeline-layer: implement the GESMetaContainer interface + +2012-12-17 15:23:39 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-meta-container.c: + * ges/ges-meta-container.h: + * ges/ges.c: + metacontainer: Finnish GESMetaContainer implementation + +2012-11-26 13:31:17 -0300 Paul Lange + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-meta-container.c: + * ges/ges-meta-container.h: + * ges/ges.c: + * ges/ges.h: + implement the GESMetaContainer interface + +2012-05-14 22:14:37 +0300 Thibault Saunier + + * docs/design/metadata.txt: + docs: Added metadata design doc + +2012-11-23 11:44:08 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + timeline-layer: Fix track-added Callback parametters + +2012-12-01 13:56:37 -0300 Thibault Saunier + + * tests/check/ges/test-utils.h: + test-utils: Add some more utilities + +2012-11-18 20:23:13 -0300 Thibault Saunier + + * tests/check/ges/test-utils.c: + Minor fixes to the test utils + +2012-12-01 13:51:33 -0300 Thibault Saunier + + * ges/ges-timeline-object.c: + timeline-object: Edit can only work work with GESTrackSource + +2012-11-23 23:52:32 -0300 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-pitivi-formatter.c: + formatter: Remove obselete APIs + Removed APIs: + ges_formatter_update_source_uri + GESFormatter::source-moved + ges_formatter_update_source_uri + ges_formatter_load + ges_formatter_save + ges_formatter_set_data + ges_formatter_clear_data + ges_formatter_get_data + GESFormatterLoadMethod + GESFormatterSaveMethod + This is now GESProject's role + +2012-11-23 23:51:17 -0300 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-keyfile-formatter.c: + * ges/ges-keyfile-formatter.h: + * ges/ges-timeline.c: + * ges/ges.c: + * ges/ges.h: + * tests/check/Makefile.am: + * tests/check/ges/save_and_load.c: + * tests/examples/ges-ui.c: + 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-11-19 14:19:17 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitiviformatter: Some minor restrtucturation + +2012-12-01 13:53:06 -0300 Thibault Saunier + + * ges/ges-track.c: + track: Force video/x-raw in raw gaps + +2012-12-17 12:27:54 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Keep track of GSequenceIter for each GESTrackObject + This way we do not have to look for them in the sequence itself, and + make things simpler + +2012-12-17 13:51:49 -0300 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + timelineobject: Give a direct access to the list of TrackObject + Avoid to have to copy the list each time we want to access it + +2012-12-19 10:37:02 -0300 Thibault Saunier + + * docs/design/effects.txt: + * docs/libs/ges-sections.txt: + * ges/ges-pitivi-formatter.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * tests/check/ges/effects.c: + 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-18 19:47:50 -0300 Thibault Saunier + + * ges/ges-track-object.c: + trackobject: Some GI annotation fix + +2012-11-25 16:11:17 -0300 Thibault Saunier + + * docs/Makefile.am: + docs: Add make upload + +2012-11-19 11:31:33 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 6bb6951 to a72faea + +2012-11-17 00:10:20 +0000 Tim-Philipp Müller + + * ges/ges-track-effect.c: + ges-track-effect: don't use deprecated API + +2012-11-04 00:25:20 +0000 Tim-Philipp Müller + + * COPYING: + * COPYING.LIB: + * docs/design/gstencodebin.h: + * docs/design/gstprofile.h: + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-internal.h: + * ges/ges-keyfile-formatter.c: + * ges/ges-keyfile-formatter.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + * ges/ges-screenshot.c: + * ges/ges-screenshot.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-effect.c: + * ges/ges-timeline-effect.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-operation.c: + * ges/ges-timeline-operation.h: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-overlay.h: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-timeline-parse-launch-effect.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + * ges/ges-timeline-standard-transition.c: + * ges/ges-timeline-standard-transition.h: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-test-source.h: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-test-source.h: + * ges/ges-track-audio-transition.c: + * ges/ges-track-audio-transition.h: + * ges/ges-track-effect.c: + * ges/ges-track-effect.h: + * ges/ges-track-filesource.c: + * ges/ges-track-filesource.h: + * ges/ges-track-image-source.c: + * ges/ges-track-image-source.h: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track-operation.c: + * ges/ges-track-operation.h: + * ges/ges-track-parse-launch-effect.c: + * ges/ges-track-parse-launch-effect.h: + * ges/ges-track-source.c: + * ges/ges-track-source.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-test-source.h: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + * ges/ges-track.c: + * ges/ges-track.h: + * ges/ges-types.h: + * ges/ges-utils.c: + * ges/ges-utils.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/effects.c: + * tests/check/ges/filesource.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/save_and_load.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineedition.c: + * tests/check/ges/timelineobject.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/examples/concatenate.c: + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Fix FSF address + +2012-10-31 14:49:44 -0300 Thibault Saunier + + * ges/Makefile.am: + ges: fix g-i search path for GstAudio GstVideo GstTag and GstBase + +2011-12-23 14:07:21 +0100 Xabier Rodriguez Calvar + + * ges/ges-timeline-pipeline.c: + timeline: Added timeline and mode as properties + +2011-11-11 17:29:20 +0100 Xabier Rodriguez Calvar + + * ges/ges-timeline-pipeline.c: + timeline: Adding GObject property API to get/set preview audio and video sinks + +2011-11-11 17:09:34 +0100 Xabier Rodriguez Calvar + + * ges/ges-timeline-pipeline.c: + timeline: Initialize as NULL the preview sinks when getting them. + This way, if there is a problem getting the properties from the + playsink, we do not return garbage. + +2012-10-06 15:02:54 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 6c0b52c to 6bb6951 + +2012-09-25 15:07:17 +0200 Thibault Saunier + + * ges/ges.h: + ges: Update reported version to 1.0 + +2012-07-20 14:11:56 +0300 Volodymyr Rudyi + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + timeline: Added 'const' modifier + +2012-09-09 21:27:08 -0300 Thibault Saunier + + * ges/ges-timeline-title-source.c: + titlesource: Use GST_DEBUG_OBJECT when appropriate + +2012-09-22 18:51:46 +0200 Thibault Saunier + + * ges/ges-formatter.h: + * ges/ges-timeline-object.h: + * ges/ges-track-object.h: + * ges/ges-types.h: + Reset ABI for 1.0 and ensure that extensible baseclasses are extensible enough + +2012-09-22 13:10:55 +0200 Thibault Saunier + + * tests/check/ges/backgroundsource.c: + * tests/check/ges/filesource.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/test-utils.h: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineobject.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + tests: Move common code to test-utils + +2012-09-23 02:24:14 +0200 Thibault Saunier + + * tests/check/ges/save_and_load.c: + * tests/check/ges/test.xptv: + * tests/check/ges/wrong_test.xptv: + tests: Implement tests for ges_formatter_can_load_uri + +2012-09-23 02:23:20 +0200 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/test-utils.c: + * tests/check/ges/test-utils.h: + tests: Add some utils for test writing + +2012-09-23 02:07:04 +0200 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitiviformatter: Implement can_load_uri vmethod + +2012-09-23 02:06:44 +0200 Thibault Saunier + + * ges/ges-formatter.c: + formatter: Implement a usefull version of ges_formatter_can_load_uri + +2012-09-23 02:05:42 +0200 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges.c: + * tests/check/ges/save_and_load.c: + * tests/examples/ges-ui.c: + * tools/ges-launch.c: + 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-22 13:27:20 +0200 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Plug a leak in the movecontext code + +2012-09-22 16:12:05 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 4f962f7 to 6c0b52c + +2012-09-07 12:58:19 -0400 Nicolas Dufresne + + * ges/ges-timeline-pipeline.c: + timeline-pipeline: use downstream block probe to avoid deadlock on duration query + +2012-09-06 16:58:21 -0400 Nicolas Dufresne + + * ges/ges-timeline-pipeline.c: + timeline-pipeline: Clean the blocked pad + We do need to cleanup the pad now, otherwise the probe will get remove a + second time in pad_removed_cb causing an assertion. + +2012-08-26 15:35:01 -0400 Thibault Saunier + + * tests/check/ges/save_and_load.c: + * tests/check/ges/titles.c: + 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-16 11:20:44 +0100 Matas Brazdeikis + + * docs/libs/ges-sections.txt: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + title-source: add background color option + +2012-08-13 16:00:28 +0100 Matas Brazdeikis + + * ges/ges-timeline-title-source.c: + timeline-title-source: remove audio-test-source + +2012-08-22 13:35:27 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From 668acee to 4f962f7 + +2012-08-10 12:39:10 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-formatter.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-effect.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-timeline-standard-transition.c: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline.c: + * ges/ges-track-effect.c: + * ges/ges-track-filesource.c: + * ges/ges-track-image-source.c: + * ges/ges-track-object.c: + * ges/ges-track-parse-launch-effect.c: + * ges/ges-track-video-transition.c: + * ges/ges-track.c: + Misc documentation fixing + +2012-08-14 20:33:57 -0400 Thibault Saunier + + * ges/ges-track-object.c: + GI: Fix some annotations in TrackObject + +2012-08-09 10:14:57 +0200 Sebastian Dröge + + * tests/examples/ges-ui.c: + * tests/examples/thumbnails.c: + examples: Use GRegex instead of POSIX regex + They are not available on Windows. + +2012-08-05 16:44:22 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 94ccf4c to 668acee + +2012-07-28 21:45:03 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-track-object.c: + * ges/ges-utils.c: + ges: Remove useless and error prone 'transfer full' annotations + transfer full is default and there is currently a bug in GES when constructor + are declared as transfer full + +2012-07-23 08:48:43 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 98e386f to 94ccf4c + +2012-07-01 20:54:42 -0400 Thibault Saunier + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + common + +2012-07-01 20:03:37 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + docs: Add the new ges_formatter_emit_loaded API to the docs + + Fix sections + +2012-07-01 19:57:30 -0400 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-pitivi-formatter.c: + formatter: Make the emit_loaded a real method and not a virtual method + + Modify formatter subclasses accordingly + API:ges_formatter_emit_loaded + This API wasn't released so it could still be changed + +2012-07-01 19:39:57 -0400 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitivi-formatter: Make use of the Formatter:timeline protected field + +2012-07-01 19:34:53 -0400 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + formatter: Add a timeline protected field + +2012-04-08 00:30:03 +0300 Volodymyr Rudyi + + * ges/ges-pitivi-formatter.c: + ges-pitivi-formatter: Fixed loading of projects with empty timeline + Because 'project-loaded' signal was triggered from track object loading + callback in case with projects that have empty timeline this signal was + never emitted. + +2012-04-08 00:08:43 +0300 Volodymyr Rudyi + + * ges/ges-formatter.c: + ges-formatter: Removed assert to allow saving projects with empty timeline + Removed assert in ges-formatter.c to allow saving projects with empty timeline. + +2012-06-25 10:32:36 +0200 Sebastian Dröge + + * ges/ges-timeline-pipeline.c: + gestimelinepipeline: Fix for gst_element_make_from_uri() API changes + +2012-06-08 15:07:15 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From 03a0e57 to 98e386f + +2012-06-08 14:27:34 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From b811047 to 3baf58a + +2012-06-06 18:20:59 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From 1fab359 to 03a0e57 + +2012-06-06 18:20:11 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From b098abb to b811047 + +2012-06-01 10:31:08 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From f1b5a96 to 1fab359 + +2012-06-01 10:23:17 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From 96f075b to b098abb + +2012-05-31 13:12:01 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 92b7266 to f1b5a96 + +2012-05-30 13:41:17 +0200 Sebastian Dröge + + * tests/examples/Makefile.am: + examples: Fix linking by passing -export-dynamic in the right variable + +2012-05-30 12:49:02 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From ec1c4a8 to 92b7266 + +2012-05-30 12:42:18 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 1e6c5ea to 96f075b + +2012-05-30 12:33:40 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From ff4cad1 to 1e6c5ea + +2012-05-30 11:27:44 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 3429ba6 to ec1c4a8 + +2012-05-30 11:27:43 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 11f0cd5 to ff4cad1 + +2012-05-30 11:24:29 +0200 Sebastian Dröge + + * configure.ac: + configure: Don't check for OBJC compiler + +2012-05-30 11:24:29 +0200 Sebastian Dröge + + * configure.ac: + configure: Don't check for OBJC compiler + +2012-05-27 22:55:12 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Make sure to remove the proper TrackObject from the GSequence + +2012-05-27 22:55:12 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Make sure to remove the proper TrackObject from the GSequence + +2012-05-26 17:41:43 -0400 Thibault Saunier + + * tests/check/ges/backgroundsource.c: + tests: Fix backgroundsource test + +2012-05-26 17:00:50 -0400 Thibault Saunier + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + bindings/python/ges.defs + ges/ges-screenshot.c + ges/ges-track-video-transition.c + +2012-05-21 19:38:10 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Do not use meaningless offset values when snapping + +2012-05-21 18:10:29 -0400 Thibault Saunier + + * ges/ges-formatter.c: + formatter: Disable updates when loading a project + +2012-05-21 12:45:00 -0400 Thibault Saunier + + * ges/ges-track-video-transition.c: + videotransition: Some explanations about the invert property + +2012-05-21 13:05:53 -0400 Thibault Saunier + + * ges/ges-track-video-transition.c: + videotransition: Misc cleanup in the smpte/crossfade transition type switches + +2012-05-21 13:05:14 -0400 Thibault Saunier + + * ges/ges-track-video-transition.c: + videotransition: Do not wait pad to be blocked before switching transitions + ... from smpte to crossfad and the other way around + This avoid useless async operations + +2012-05-18 13:17:17 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Move all callbacks to the callback section of the file + +2012-05-18 13:16:50 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Make the update property a GObject property + API: timeline::update property + +2012-05-18 11:13:11 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Try to resnap at same snapping point before calculating new value + +2012-05-18 10:33:44 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Avoid to recalculate the moving context unecessarly + +2012-05-18 10:28:26 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Create a debug logging category for the timeline + +2012-05-16 15:53:07 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Properly set TimelineFileSource-s duration and max duration + When we get the information of duration of files after discoverying them, + use that information to set the values on the TimelineFileSource-s + +2012-05-15 14:38:38 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + timeline-layer: Rework the way we calculate in which layer a TrackObject is + +2012-05-09 12:12:38 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + * ges/ges-screenshot.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + * ges/ges-track-video-transition.c: + docs: Misc documentation fixing + +2012-05-09 11:51:33 -0400 Thibault Saunier + + * tests/check/ges/backgroundsource.c: + tests: Add basic gaps tests + +2012-05-09 11:45:02 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-track.c: + * ges/ges-track.h: + track: Properly fill gaps + API: GESCreateElementForGapFunc Virtual method type + API: ges_track_set_create_element_for_gap_func + +2012-05-09 11:20:24 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Restructurate file so we have private method and API properly separeted + +2012-05-16 12:23:52 -0400 Thibault Saunier + + * ges/ges-track.c: + track: Use a GSequence to keep the sorted list of TrackObject-s + Use a GSequence instead of a GList to optimise the process. + Conflicts: + ges/ges-track.c + +2012-05-16 12:59:33 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Make use of our own knowledge of the timeline duration + Do not use each Track durations as it end going in loop as we have the Tracks + that need to know about timeline's duration to create or not gaps in the end and + then the timeline references on Tracks duration for its duration. We have this + information locally so just make proper use of it. + +2012-05-17 20:49:01 -0400 Thibault Saunier + + * bindings/python/ges.defs: + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: Add a method to get the timeline duration + + Bind it in python + API: ges_timeline_get_duration + +2012-05-13 15:59:21 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From dc70203 to 3429ba6 + +2012-05-10 14:56:34 -0400 Thibault Saunier + + Merge remote-tracking branch 'origin/0.10' + +2012-05-10 12:40:23 -0400 Thibault Saunier + + * ges/ges-track-object.c: + * ges/ges-track.c: + track-object: Keep a reference to our gnlobject + Avoid refering to an object that doesn't exists and segfault in some cases. + We do not need to increase the reference to the gnlobj when the trackobject + is removed from a track because the TrackObject as its own reference and will + handle the disposal gracefully. + Add some guard around related APIs + +2012-05-08 19:34:48 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Avoid segfault when debug logging + +2012-05-07 16:11:26 +0100 Tim-Philipp Müller + + * ges/ges-track-video-transition.c: + ges: fix printf arguments in debug message + https://bugzilla.gnome.org/show_bug.cgi?id=675547 + +2012-05-06 18:52:25 +0200 Mathieu Duponchelle + + * ges/ges-track-video-transition.c: + track-video-transition: Make the invert property management coherent + +2012-05-06 04:52:40 +0200 Mathieu Duponchelle + + * ges/ges-track-video-transition.c: + track-video-transition: Fix set_inverted + +2012-05-05 13:00:49 -0400 Thibault Saunier + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + bindings/python/ges.defs + ges/ges-track-video-transition.c + +2012-05-05 12:31:28 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + track-object: Set minimum value of max-duration to 0 + GST_CLOCK_TIME_NONE was nonsense + Minor documentation fixing on the way + +2012-05-03 15:41:08 +0200 Edward Hervey + + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + ges: Remove invalid ' < 0' checks + It's an unsigned value, it will never be < 0. + +2012-05-02 23:56:35 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + * ges/ges-track.c: + Do no check if GLib >2.26 as we depend on GLib 2.28 + +2012-05-02 23:44:31 -0400 Thibault Saunier + + * ges/ges-track-video-transition.c: + track-video-transition: Properly emit notify for the invert and border properties + +2012-05-02 23:43:50 -0400 Thibault Saunier + + * ges/ges-track-video-transition.c: + track-video-transition: Expose the transition type as a GObject property + API: GESTrackVideoTransition::transition-type property + +2012-05-03 03:35:16 +0200 Mathieu Duponchelle + + * ges/ges-track-video-transition.c: + track-video-transition: expose border and inverted as GObject properties + +2012-05-03 02:44:00 +0200 Mathieu Duponchelle + + * bindings/python/ges.defs: + python : binds the getter and setter for the "inverted" property + +2012-05-03 02:28:41 +0200 Mathieu Duponchelle + + * docs/libs/ges-sections.txt: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + track-video-transition: Expose the invert property from smpte + Also, add/fixup some doc + API: ges_track_video_transition_get_inverted + API: ges_track_video_transition_set_inverted + +2012-05-02 22:03:51 -0400 Thibault Saunier + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + bindings/python/ges.defs + ges/ges-track-video-transition.c + +2012-05-02 18:38:42 -0400 Thibault Saunier + + * ges/ges-track-video-transition.c: + track-video-transition: Reuse interpollation setting functions when possible + +2012-05-02 18:07:01 -0400 Thibault Saunier + + * ges/ges-track-video-transition.h: + track-video-transition: Reindent header + +2012-05-02 18:04:54 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + track-video-transition: Add a way to get current border value + Add some documentation for the border property + Change the border value in set_border to a guint as the value can be negative + API: ges_track_video_transition_get_border + +2012-05-02 00:27:31 +0200 Mathieu Duponchelle + + * docs/libs/Makefile.am: + build: Fixes distclean + +2012-05-01 23:42:47 +0200 Mathieu Duponchelle + + * ges/ges-track-video-transition.c: + track-video-transition: Return pending type in transition_get_type when needed + +2012-05-01 16:01:39 +0200 Mathieu Duponchelle + + * bindings/python/ges.defs: + python: Binds the "set_border" function + +2012-05-02 01:09:07 +0200 Mathieu Duponchelle + + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + track-video-transition: expose the border property of smptealpha + API: ges_track_video_transition_set_border + +2012-05-02 01:08:08 +0200 Mathieu Duponchelle + + * ges/ges-track-video-transition.c: + * tests/check/ges/transition.c: + ges-track-video-transition: Enables switching from crossfade to smpte and vice versa + Fix the tests properly + +2012-05-02 08:44:25 +0100 Tim-Philipp Müller + + * tools/ges-launch.c: + ges-launch: replace home-grown version of gst_filename_to_uri() + and remove superfluous check if file is readable with + fopen. Code appears to also want to accept URIs, so this + doesn't work so well, and should probably be done differently + anyway if required. + https://bugzilla.gnome.org/show_bug.cgi?id=674296 + +2012-04-17 19:18:44 +0400 Руслан Ижбулатов + + * tools/ges-launch.c: + ges-launch: use GRegex instead of POSIX regex + http://bugzilla-attachments.gnome.org/attachment.cgi?id=212249 + +2012-04-17 19:18:21 +0400 Руслан Ижбулатов + + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-track-title-source.c: + ges: fix some format strings in debug messages + https://bugzilla.gnome.org/show_bug.cgi?id=674265 + +2012-05-01 19:16:42 +0100 Tim-Philipp Müller + + * ges/ges-timeline-pipeline.c: + * ges/ges-track-text-overlay.c: + * ges/ges-track-title-source.c: + ges: fix some not entirely correct casts for vararg function arguments + +2012-05-01 19:06:20 +0100 Tim-Philipp Müller + + * ges/ges-track-video-transition.c: + track-video-transition: update for videomixer pad template name change + +2012-05-01 19:05:51 +0100 Tim-Philipp Müller + + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/test2.c: + * tests/examples/test3.c: + * tests/examples/test4.c: + * tests/examples/text_properties.c: + * tests/examples/transition.c: + examples: create URIs properly from filenames + +2012-05-01 18:50:34 +0100 Tim-Philipp Müller + + * .gitignore: + * tests/check/ges/.gitignore: + * tools/.gitignore: + .gitignore: ignore more + +2012-05-01 18:48:57 +0100 Tim-Philipp Müller + + * ges/ges.c: + ges: fix gnonlin version check + +2012-05-01 18:43:02 +0100 Tim-Philipp Müller + + * ges/ges-track-audio-transition.c: + track-audio-transition: fix adder sink pad template name + +2012-04-18 18:34:01 +0400 Руслан Ижбулатов + + * ges/ges-timeline-pipeline.c: + timeline-pipeline: fix src pad request template for tee + https://bugzilla.gnome.org/show_bug.cgi?id=674339 + +2012-04-25 17:53:38 -0400 Thibault Saunier + + 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:09:19 -0400 Thibault Saunier + + * ges/ges-enums.c: + * ges/ges-enums.h: + docs: Add some more docs about editing mode + Also add the documentation "Section" into ges-enum.c so the file documentation ar + actualy taken into account in the final generated documentation. + +2012-04-25 14:55:46 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Rework snapping signaling so it is easier to use + API: GESTimeline::snap-started signal + API: GESTimeline::snap-ended signal + (This code has not been released so we can still change the API) + +2012-04-23 20:17:42 -0400 Thibault Saunier + + * ges/ges-timeline-file-source.c: + * ges/ges-track-object.c: + trackobject: Take into account the max duration when trying to set a new duration + Change its default value to GST_CLOCK_TIME_NONE instead of 0. + (unreleased code so it still can be changed) + +2012-04-23 19:20:18 -0400 Thibault Saunier + + * ges/ges-track-object.c: + trackobject: Add API guards all around + +2012-04-23 19:17:51 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-internal.h: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + trackobject: Add the copy method to the API + Add documentation and plug a leak at the same time. + API: ges_track_object_copy + +2012-04-23 19:10:16 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + timelineobject: Ignore notifies when needed + +2012-04-22 15:24:25 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + timelineobject: Fix wrong naming when connection to in-point notify + inpoint -> in-point + +2012-02-10 16:58:14 -0300 Thibault Saunier + + * bindings/python/ges-types.defs: + * bindings/python/ges.defs: + * bindings/python/ges.override: + python: Bind the new Timeline editing mode API + +2012-04-22 13:09:11 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-source.c: + timelineobject: Make changing start/duration sensible to snapping + Adapt the documentation so users are aware of the behaviour + Conflicts: + ges/ges-timeline-object.c + +2012-04-23 20:55:27 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Minor documentations fixes + +2012-04-23 20:54:15 -0400 Thibault Saunier + + * tests/check/Makefile.am: + * tests/check/ges/timelineedition.c: + tests: Add a testsuite for the new timeline edition API + +2012-04-23 20:52:45 -0400 Thibault Saunier + + * configure.ac: + * docs/libs/ges-sections.txt: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-internal.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * tests/check/ges/basic.c: + 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-20 20:05:46 -0400 Thibault Saunier + + * tests/check/ges/timelineobject.c: + tests: Add a basic test for the timeline_object_split method + +2012-04-20 19:22:56 -0400 Thibault Saunier + + * bindings/python/ges.defs: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + timelineobject: Make the 'position' argument of the split method a guint64 not gin64 + This makes more sense to be a guint64 as it actually is a GstClockTime, + and this way we keep the API concistent. + (This code has not been release so we can still change the API.) + +2012-04-20 19:19:49 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + timelineobject: Reimplement properly the splitting method + +2012-04-20 19:02:19 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + timelineobject: Misc API guard fixes + +2012-04-19 00:34:59 -0400 Thibault Saunier + + * ges/ges-internal.h: + * ges/ges-track-object.c: + track-object: Add method to copy a TrackObject + API: ges_track_object_copy + +2012-04-17 18:42:41 -0400 Thibault Saunier + + * ges/ges-track-object.c: + * ges/ges-track.c: + ges-track-object: Make possible to add a track already containing a gnlobject to a track + +2012-04-23 14:40:26 -0300 Thiago Santos + + * ges/ges-timeline-pipeline.c: + ges-timeline-pipeline: add todo to remember to remove hack + Remove playsink hack once we depend on gst-plugins-base 0.10.37 + (next gst-plugins-base release) + +2012-04-23 14:38:31 -0300 Thiago Santos + + * ges/ges-timeline-pipeline.c: + Revert "ges: timeline-pipeline: Remove playsink send_event hack" + This reverts commit 54aac450dab9ac052f2c0a913bfba5f77c1670ba. + We need this hack until we depend on gst-p-base 0.10.36 + +2012-04-20 14:18:18 -0400 Thibault Saunier + + * ges/ges-timeline.c: + Port to the new GMutex API + +2012-04-16 09:12:06 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 6db25be to dc70203 + +2012-04-13 13:59:17 +0200 Sebastian Dröge + + * autogen.sh: + * configure.ac: + * ges/Makefile.am: + configure: Modernize autotools setup a bit + Also we now only create tar.bz2 and tar.xz tarballs. + +2012-04-13 13:39:50 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 464fe15 to 6db25be + +2012-04-07 22:31:23 -0400 Thibault Saunier + + Merge branch '0.10' + Conflicts: + bindings/python/ges.defs + +2012-03-29 18:57:47 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + timeline-object: Add TrackObject to the Track after the TimelineObject + This way, the Track::track-object-added is emited after the TrackObject is ready to be used, and it make the API easier to use. + +2012-04-07 21:40:07 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + timeline-layer: Factor out a method to start observing timeline for auto-transitions + +2012-04-07 21:24:18 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + timeline-layer: Reorganize file + +2012-04-07 21:04:21 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + timeline-layer: Rework auto transition callbacks management + We now have a GESTrack::track-object-added signal so we now depend on it rather than on each GESTimelineObject::track-object-added signal. + +2012-03-30 03:40:50 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + timeline-object: Properly reflect contained TrackObject duration and inpoint properties changes + +2012-01-30 22:55:59 +0100 Thibault Saunier + + * ges/ges-track-object.c: + trackobject: Some documentation fixing + +2012-01-27 16:04:00 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + docs: Add ges_timeline_object_release_track_object + We need it especially in the case of effects + +2012-04-04 20:47:04 -0400 Thibault Saunier + + * ges/ges-track-object.c: + trackobject: Add API documentation + +2012-02-02 15:29:30 -0300 Thibault Saunier + + * ges/ges-timeline-standard-transition.c: + * ges/ges-timeline.c: + ges: Calm logging when not created TrackObject on purpose + +2012-03-31 13:57:04 -0400 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Restructurate the file separting methods/callbacks/API + +2012-01-25 15:12:05 +0100 Thibault Saunier + + * ges/ges-timeline-object.c: + timelineobject: Emit effect-added when adding any kind of TrackEffect + We were only emitting it when working with TrackParseLaunch effects + +2012-02-01 20:25:35 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + docs: Tell users that adding an object to a timeline layer creates media related objects + +2012-01-20 17:03:58 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + ges: Misc debug loggin cleanup + +2012-01-20 16:37:28 -0300 Thibault Saunier + + * ges/ges-timeline.c: + timeline: Plug a leak when calling enable_update + +2012-01-22 23:03:22 -0300 Thibault Saunier + + * ges/ges-timeline.c: + * ges/ges-timeline.h: + timeline: Rework the append_layer method + ges_timeline_append_layer now creates a new layer, adds it to the timeline + and returns it + This code has not been released yet so we can break this API. + +2012-01-20 14:36:36 -0300 Thibault Saunier + + * bindings/python/ges.defs: + * docs/libs/ges-sections.txt: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + layer: Add a method to check if a layer is empty or not + API: ges_timeline_layer_is_empty + +2012-01-16 09:37:22 -0300 Thibault Saunier + + * bindings/python/ges.defs: + * docs/libs/ges-sections.txt: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-track-filesource.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * tests/check/ges/save_and_load.c: + 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-05 18:45:53 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 7fda524 to 464fe15 + +2012-03-30 03:36:27 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + timeline-layer: Do not call track_get_by_layer when track == NULL + +2012-04-04 14:02:43 -0300 Thiago Santos + + Merge branch '0.10' + +2012-03-30 19:10:33 -0300 Thiago Santos + + * ges/ges-timeline-pipeline.c: + ges: timeline-pipeline: Remove playsink send_event hack + This is fixed now in upstream playsink, remove the hack + https://bugzilla.gnome.org/show_bug.cgi?id=673211 + +2012-04-04 14:50:23 +0200 Sebastian Dröge + + * configure.ac: + * docs/libs/Makefile.am: + * docs/libs/ges-docs.sgml: + * docs/version.entities.in: + * ges/Makefile.am: + * gst-editing-services.spec.in: + * pkgconfig/Makefile.am: + * pkgconfig/gst-editing-services-uninstalled.pc.in: + * pkgconfig/gst-editing-services.pc.in: + * tests/check/Makefile.am: + * tests/examples/Makefile.am: + * tools/Makefile.am: + ges: Update versioning + +2012-04-04 12:08:06 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + bindings/python/Makefile.am + ges/Makefile.am + +2012-04-03 19:25:18 -0400 Thibault Saunier + + * bindings/python/Makefile.am: + * configure.ac: + * docs/libs/Makefile.am: + * ges/Makefile.am: + * ges/ges-formatter.c: + * tools/Makefile.am: + formatter: Try to figure out new paths when media files have moved + Introduces a dependency to GIO + +2012-03-29 12:55:44 -0400 Thibault Saunier + + Merge branch '0.10' + Conflicts: + bindings/python/ges.defs + +2012-03-29 15:10:09 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + +2012-01-30 17:47:42 +0100 Thibault Saunier + + * ges/ges-timeline-object.c: + timelineobject: Set TrackObject's TimelineObject only when calling the add function + ges_timeline_object_add_track_object actually calls + ges_track_object_set_timeline_object so do not do it once more ourself. + Especially since it results in having a TrackObject.timeline_object refering + to a TimelineObject it is not actually in yet. + +2012-03-28 02:53:50 +0300 Volodymyr Rudyi + + * ges/ges-track.c: + ges-track: Set gnlobject state to NULL before disposing it + Work around a deadlock if setting state to NULL right before removing the + gnlobject from the composition. + https://bugzilla.gnome.org/show_bug.cgi?id=672751 + +2012-01-27 17:09:08 +0100 Thibault Saunier + + * ges/ges-timeline-object.c: + timelineobject: Update the nb_effect when releasing a TrackEffect + +2012-01-22 22:50:24 -0300 Thibault Saunier + + * bindings/python/ges.defs: + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track.c: + * ges/ges-track.h: + ges: Add a way to know whether a timeline is updating on each changes + + Bind the new API in python + API: ges_timeline_is_updating + API: ges_track_is_updating + +2012-01-26 11:53:54 +0100 Thibault Saunier + + * ges/ges-track-object.c: + trackobject: Enable adding a TrackObject in a Track before a TimelineObject + We were requiring it only for GESCustomTimelineSource, but it is not actually + necessary so, we can just check if the TrackObject is in a TimelineObject or + not, and react accordingly. + +2012-01-25 12:47:24 +0100 Thibault Saunier + + * bindings/python/ges.defs: + * docs/libs/ges-sections.txt: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + timeline-layer: Add a method to get the timeline it is currently in + API: ges_timeline_layer_get_timeline + Bind it in python + +2012-03-28 02:53:50 +0300 Volodymyr Rudyi + + * ges/ges-track.c: + ges-track: Set gnlobject state to NULL before disposing it + Work around a deadlock if setting state to NULL right before removing the + gnlobject from the composition. + https://bugzilla.gnome.org/show_bug.cgi?id=672751 + +2012-03-26 12:43:30 +0200 Wim Taymans + + Replace master with 0.11 + +2012-03-19 10:56:53 +0000 Tim-Philipp Müller + + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + ges-pitivi-formatter: add copyright/license headers + https://bugzilla.gnome.org/show_bug.cgi?id=644943 + +2012-03-13 13:52:32 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2012-03-13 11:36:15 +0000 Tim-Philipp Müller + + * tests/check/ges/save_and_load.c: + tests: fix weird windowsy code in save_and_load unit test + Fixes compiler error about FILENAME_MAX in 0.11 + +2012-03-12 16:22:22 +0000 Tim-Philipp Müller + + * ges/ges-timeline-pipeline.c: + ges-timeline-pipeline: port to 0.11 + +2012-03-12 15:46:42 +0000 Tim-Philipp Müller + + * ges/Makefile.am: + * ges/ges-formatter.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + * ges/ges-track.c: + * ges/ges-utils.c: + Remove ges-marshal.[ch] and use the generic marshaller + +2012-03-12 15:37:33 +0000 Tim-Philipp Müller + + * configure.ac: + configure: bump GLib requirement in line with core and other libs + +2012-03-12 15:25:49 +0000 Tim-Philipp Müller + + 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:15:22 +0000 Tim-Philipp Müller + + * configure.ac: + * ges/Makefile.am: + configure: check for libxml2 explicitly + GStreamer may be built without the libxml2 dependency. + +2012-03-12 15:09:39 +0000 Tim-Philipp Müller + + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + ges-pitivi-formatter: move libxml includes into .c file + There's no need to have them in the header file. + +2012-03-06 15:37:18 +0100 Sebastian Dröge + + * ges/ges-timeline-title-source.c: + ges: Fix 'implicit conversion from enumeration type 'GESTextHAlign' to different enumeration type 'GESTextVAlign'' and similar compiler warnings + +2012-03-06 15:35:51 +0100 Sebastian Dröge + + * ges/ges-timeline-object.c: + ges: Fix 'comparison of unsigned expression < 0 is always false' + +2012-02-17 13:46:36 +0000 Tim-Philipp Müller + + * bindings/python/Makefile.am: + bindings: don't link to libges four times + And even less different versions of it. + +2012-02-10 19:44:49 +0000 Tim-Philipp Müller + + * tests/check/ges/simplelayer.c: + tests: ges_track_new() takes ownership of caps, so can't use GST_CAPS_ANY + +2012-02-10 19:42:16 +0000 Tim-Philipp Müller + + * tests/check/ges/save_and_load.c: + tests: port tests to new raw caps + +2012-02-10 19:36:49 +0000 Tim-Philipp Müller + + * ges/ges-track.c: + track: add g-i annotation that ges_track_new() takes ownership of caps passed + +2012-02-10 19:35:28 +0000 Tim-Philipp Müller + + * ges/ges-timeline-pipeline.c: + * ges/ges-track-video-transition.c: + * ges/ges-track.c: + ges: port to new raw audio/video caps + Completely untested, but more likely to work than the + existing code. + +2012-02-10 19:17:38 +0000 Tim-Philipp Müller + + * tests/examples/ges-ui.c: + * tests/examples/overlays.c: + * tests/examples/simple1.c: + * tests/examples/text_properties.c: + * tests/examples/thumbnails.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + examples, ges-launch: remove deprecated g_thread_init() + Not needed any more with recent glib versions + +2012-02-10 19:13:44 +0000 Tim-Philipp Müller + + * ges/Makefile.am: + g-i: need to call gst_init() before ges_init() so GST_TYPE_CAPS is set + Fixes "g_param_spec_boxed: assertion `G_TYPE_IS_BOXED (boxed_type)' failed" + warnings when running g-ir-scanner. + +2012-02-10 19:01:03 +0000 Tim-Philipp Müller + + * ges/ges-track-audio-transition.c: + * ges/ges-track-video-transition.c: + track-{audio,video}-transition: update for controller API changes + +2012-02-10 18:43:51 +0000 Tim-Philipp Müller + + * ges/ges-timeline-pipeline.c: + timeline-pipeline: use standard GLib API to save thumbnail data to file + +2012-02-10 18:35:07 +0000 Tim-Philipp Müller + + * ges/ges-timeline-pipeline.c: + timeline-pipeline: update for new gst_buffer_map() API + +2012-01-30 11:34:09 +0100 Mark Nauwelaerts + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline.c: + ges: support and handle no-more-pads in GESTimeline(Pipeline) + ... to arrange for a clean READY to PAUSED state change transition. + Not doing so might have playsink reaching PAUSED prematurely + as one track prerolls, only to lose this state again (temporarily) + when the other track needs to preroll. + This is generally not nice or convenient, and particularly nasty + when trying to perform seek in PAUSED. + +2012-01-25 14:13:02 +0100 Thomas Vander Stichele + + * common: + Automatic update of common submodule + From c463bc0 to 7fda524 + +2012-01-25 11:41:15 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From 2a59016 to c463bc0 + +2012-01-18 16:48:52 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From 0807187 to 2a59016 + +2012-01-12 16:34:13 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline.c: + * ges/ges-track.c: + * tests/check/ges/layer.c: + * tests/check/ges/save_and_load.c: + ges: Various doc fixups and cleanups + +2012-01-12 15:12:14 +0100 Mark Nauwelaerts + + * ges/ges-pitivi-formatter.c: + * ges/ges-timeline-layer.c: + ges: only use glib constructs as required in configure.ac + +2012-01-12 15:11:10 +0100 Mark Nauwelaerts + + * pkgconfig/gst-editing-services-uninstalled.pc.in: + pkgconfig: fix uninstalled pkgconfig to handle out-of-source build case + +2012-01-07 13:36:33 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + pitivi-formatter: Use the new Formatter->project_loaded vmethod + +2012-01-07 13:28:15 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + formatter: Add a "loaded" signal + API: GESFormatter::loaded signal + API: GESFormatter->project_loaded VMethod + +2011-12-22 17:11:34 +0100 Thibault Saunier + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + docs: Add a pitivi-formatter documentation + Move the API to the API section of the pitivi-formatter file + +2012-01-05 13:21:40 -0300 Thibault Saunier + + * ges/ges-formatter.c: + formatter: Enhance some debug logging + +2012-01-04 19:04:53 -0300 Thibault Saunier + + * bindings/python/ges.defs: + * bindings/python/ges.override: + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + ges: Rework the ges_pitivi_get_sources method + + Remove the URI parameter of ges_pitivi_get_sources + + Rework how we handle the PitiviFormatterPrivate.source_table HashTable + rename it to sources_table to make a difference between it and the + source_table(s) it containes + +2012-01-04 18:06:37 -0300 Thibault Saunier + + * bindings/python/ges.defs: + * bindings/python/ges.override: + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + ges: Let user set a source list on the PitiviFormatter + API: ges_pitivi_formatter_set_sources + Bind it in python + +2012-01-04 15:06:11 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + ges: Handle the new SourceMoved API in PitiviFormatter + +2012-01-04 15:05:15 -0300 Thibault Saunier + + * bindings/python/ges.defs: + bindings: Bind the new formatter API + +2012-01-04 14:59:21 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + ges: Add an API to Formatter to be able to handle moved sources + API: GESFormatter::source-moved signal + API: GESFormatter::update_source_uri virtual method + Conflicts: + ges/ges-formatter.h + +2012-01-04 14:46:54 -0300 Thibault Saunier + + * ges/ges-timeline.c: + ges: Add a "discovery-error" signal to GESTimeline + API: GESTimeline::discovery-error signal + +2012-01-04 14:24:05 -0300 Thibault Saunier + + * ges/ges-timeline-file-source.c: + ges: Let user set TimelineObject URI while not containing any TrackObject + In the case of not properly set uri, we can keep using the same + TimelineFileSource changing its URI until its TrackObject could be created. + This is particularly usefull in the case of formatter trying to load filesource + when the file has been moved + +2012-01-03 11:59:29 +0100 mathieu duponchelle + + * bindings/python/ges.defs: + * bindings/python/ges.override: + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + Add API to get all sources from xptv project + +2011-12-23 17:16:20 +0100 mathieu duponchelle + + * ges/ges-timeline-layer.c: + Disconnect handlers when object is removed from layer + +2011-12-22 21:21:37 +0100 mathieu duponchelle + + * ges/ges-timeline-layer.c: + Edit : typos + +2011-08-24 12:04:32 +0200 Mathieu Duponchelle + + * ges/ges-timeline-layer.c: + * ges/ges-timeline.c: + GES : remove transitions when needed + Conflicts: + ges/ges-timeline.c + +2011-12-21 19:48:22 +0100 mathieu duponchelle + + * ges/ges-timeline-layer.c: + Fixes auto transitions on layers + n. + +2011-12-29 13:56:08 +0100 Thibault Saunier + + * ges/ges-timeline-file-source.c: + * ges/ges-timeline.c: + * ges/ges-track-filesource.c: + ges: Add a maxduration property to TrackFileSource + API: GESTrackFileSource::maxduration property + +2011-12-23 19:23:31 +0100 Thibault Saunier + + * ges/ges-track.c: + ges: Disconnect the TrackObject when removed from a Track + +2011-12-26 02:54:29 +0100 Thibault Saunier + + * bindings/python/ges.defs: + * bindings/python/ges.override: + * docs/libs/ges-sections.txt: + * ges/ges.c: + * ges/ges.h: + ges: Add a runtime version checking function + Bind it in python + API: ges_version + +2011-12-22 15:59:51 +0100 Thibault Saunier + + * ges/ges-track-object.h: + ges: Reindent ges-track-object.h + +2011-12-22 14:41:39 +0100 Thibault Saunier + + * bindings/python/gesmodule.c: + bindings: Register the various enums/flags in python + +2011-12-19 11:21:18 +0100 Thibault Saunier + + * ges/ges-track-object.c: + ges: Make TrackObject:locked a GObject property + +2011-12-18 01:49:24 +0100 Thibault Saunier + + * ges/ges-timeline-object.c: + ges: Fix the TimelineObject::effect-added signal emission timing + We were emitting it before it gets added to the track_object list, + so the list we were getting with get_top_effects was containing + a TrackObject that wasen't a TrackEffect + + A bit of refactoring + +2011-12-16 09:56:08 +0100 Thibault Saunier + + * ges/ges-track.h: + ges: Reindent ges-track.h + +2011-12-16 09:54:58 +0100 Thibault Saunier + + * ges/ges-timeline.c: + * ges/ges-track-object.c: + ges: Some debug logging enhancements + +2011-12-16 09:52:35 +0100 Thibault Saunier + + * ges/ges-track.c: + ges: Expand track background duration equal to timeline duration + +2011-12-16 09:35:31 +0100 Thibault Saunier + + * ges/ges-timeline.c: + ges: Add a duration property to GESTimeline + API: GESTimeline:duration property + +2011-12-16 04:23:58 -0300 Thibault Saunier + + * ges/ges-timeline-object.c: + ges: Fix TimelineObject movement that contains unlocked and relocked objects + Record the TrackObject that initiated a TimelineObject movement so we don't + get inifite loops. + Also fix the new TrackObject calculation: + child.start = time - offset (not time + offset) + +2011-06-17 14:29:52 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + * tests/check/ges/layer.c: + ges: Bump layer height from 10 to 1000 + +2011-12-07 20:17:55 -0300 Thibault Saunier + + * bindings/python/ges.defs: + * ges/ges-timeline-object.c: + ges: Little fixes to timeline_object_g(s)et_supprted_formats + +2011-12-07 20:50:13 -0300 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + ges: Add guards to all API calls in GESTimelineObject + And reindent the .h file + +2011-12-07 20:36:24 -0300 Thibault Saunier + + * bindings/python/ges.defs: + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + ges: Add a method to TimelineObject to set contained TrackObject-s locked state + API: ges_timeline_object_objects_set_locked + +2011-12-06 23:11:25 -0300 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-formatter.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline.c: + * ges/ges-track.c: + docs: Update documentation + +2011-12-06 14:11:21 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + ges: Remove transitions properly + +2011-12-06 14:10:14 -0300 Thibault Saunier + + * ges/ges-timeline-object.c: + ges: Add a TimelineObject::track-object-removed signal + API: TimelineObject::track-object + +2011-11-30 21:47:54 -0300 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-track.c: + ges: Enhance some debug logging + Also make sure not to warn when it shouldn't + +2011-11-30 21:46:21 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + ges: Misc fixes in ges-timeline-layer + Put the comment where they are meant to be + Make static functions static + Use LAYER_HEIGHT where needed + +2011-11-02 13:51:36 -0300 Thibault Saunier + + * ges/ges-timeline-layer.c: + ges: Auto transition cleanup + +2011-11-30 20:13:09 -0300 Thibault Saunier + + * ges/ges-timeline-file-source.c: + * tests/check/ges/filesource.c: + 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 + +2011-11-16 15:22:33 -0300 Thibault Saunier + + * ges/ges-track-object.c: + ges: Fix debugging symbol to avoid segfaults + +2011-11-02 13:52:16 -0300 Thibault Saunier + + * ges/ges-pitivi-formatter.c: + ges: Big PiTiVi formatter cleanup + Also set the version to 0.2 + +2011-10-09 12:28:39 -0400 Stéphane Maniaci + + * ges/ges-pitivi-formatter.c: + ges: Don't release unexisting sources when destroying the formatter + This happens in case of an empty project. + +2011-10-20 16:16:30 +0200 Thibault Saunier + + * ges/ges-track.c: + ges: Add a gnl background object to tracks + This is in order to support gaps in the timeline. + This is not the proper solution, we should make sure to fill gaps properly, + but for the time being, it makes the trick + +2011-12-06 18:04:11 -0300 Thibault Saunier + + * ges/ges-simple-timeline-layer.c: + ges: Make sure not to set transition start to negative + gnlobject.start is a guint64, we can not set it to a negative value + +2011-09-14 14:58:01 +0200 Mathieu Duponchelle + + * ges/ges-timeline-layer.c: + ges: makes "pass over" accurate and reset priority when transition is removed + +2011-08-28 01:13:20 +0200 Mathieu Duponchelle + + * ges/ges-timeline.c: + ges: don't reset the supported formats in the timeline when they're already set + My mom never told me goto was evil + +2011-08-26 18:39:39 +0200 Mathieu Duponchelle + + * ges/ges-timeline-object.c: + ges: make the offset positive as it should have been + Took me two days to figure that out :/ I'm pretty sure it's the way things are supposed to be + +2011-08-24 12:06:22 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + ges: modifies emission of the track/object-removed signal + Make it be emitted right before the track objects is removed so we don't end up + with a TrackObject that has already been freed + +2011-08-24 11:48:14 +0200 Mathieu Duponchelle + + * bindings/python/ges.defs: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + ges: adds a ges_timeline_object_split method + Slightly improves the copy function to do so. + API: ges_timeline_object_split + +2011-06-08 20:36:58 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + ges: add a timeline_object copy function + +2011-08-09 15:56:56 +0200 Mathieu Duponchelle + + * bindings/python/ges.defs: + python : bind the new timeline_object functions + + move_to_layer + + is_moving_from_layer + + set_moving_from_layer + +2011-08-03 02:33:10 +0200 Mathieu Duponchelle + + * bindings/python/ges.defs: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track.c: + * ges/ges-track.h: + ges: adds an enable_update function to the GESTimeline + Binds it in python + API: ges_timeline_enable_update + +2011-07-28 18:49:04 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + ges : add a track-object(removed signal to the track + API: GESTrack::track-object-removed signal + +2011-12-01 00:33:38 -0300 Thibault Saunier + + * ges/ges-timeline-standard-transition.c: + ges: Handle supported formats in TimelineStandardTransition + +2011-07-24 02:49:36 +0200 Mathieu Duponchelle + + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * tests/check/ges/layer.c: + ges: add an auto-transition to the layer + API: GESTimelineLayer.auto_transition property + +2011-07-27 02:04:48 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + ges: Keep the track object list sorted in track + +2011-07-27 02:02:20 +0200 Mathieu Duponchelle + + * bindings/python/testsuite/test_textoverlay.py: + * ges/ges-timeline-object.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/filesource.c: + * tests/check/ges/overlays.c: + * tests/check/ges/timelineobject.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + 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 + +2011-07-13 18:30:06 +0200 Mathieu Duponchelle + + * bindings/python/ges.defs: + * bindings/python/ges.override: + python: bind and override the ges_track_get_objects method + +2011-07-08 03:37:28 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + * ges/ges-track.h: + ges: Add API to get the TrackObject-s contained in a Track + Sort the track_objects list + API: ges_track_get_objects + +2011-08-28 03:59:19 +0200 Mathieu Duponchelle + + * bindings/python/ges-types.defs: + * bindings/python/ges.defs: + python: binds the PiTiVi formatter + +2011-08-28 03:58:21 +0200 Mathieu Duponchelle + + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + examples: Add a load project option to ges-ui + +2011-08-28 03:57:13 +0200 Mathieu Duponchelle + + * tools/ges-launch.c: + tools: Add a -y option to ges-launch to launch pitivi projects + +2011-08-28 03:56:26 +0200 Mathieu Duponchelle + + * tests/check/ges/save_and_load.c: + 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. + +2011-08-28 03:55:46 +0200 Mathieu Duponchelle + + * ges/Makefile.am: + * ges/ges-pitivi-formatter.c: + * ges/ges-pitivi-formatter.h: + * ges/ges-types.h: + * ges/ges.h: + ges: Implement a Pitivi Formatter + API: ges_pitivi_formatter_new + +2011-08-28 03:48:36 +0200 Mathieu Duponchelle + + * ges/ges-track.c: + ges: add a track-object-added signal to GESTrack + API: GESTrack::track-object-added signal + +2011-08-28 06:25:37 +0200 Mathieu Duponchelle + + * ges/ges-timeline-object.c: + ges: Add a track-object-added signal to GESTimelineObject + API: GESTimelineObject::track-object-added signal + +2011-12-01 00:18:30 -0300 Thibault Saunier + + * bindings/python/ges.defs: + * docs/libs/ges-sections.txt: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * tests/check/ges/save_and_load.c: + 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 + +2011-06-07 12:54:06 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + ges: Add a ges_timeline_append_layer convenience method + API: ges_timeline_append_layer + +2011-06-06 15:56:23 -0400 Thibault Saunier + + * tests/check/ges/layer.c: + 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 + +2011-06-06 15:55:47 -0400 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline.c: + ges: add a function to move TimelineObject from a layer to another + API: ges_timeline_object_move_to_layer + API: ges_timeline_object_is_moving_from_layer + API: ges_timeline_object_set_moving_from_layer + +2011-06-02 22:03:19 -0400 Thibault Saunier + + * ges/ges-timeline.c: + ges: Keep layers sorted by priorities in the timeline + +2011-06-02 22:01:43 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + ges: Add some debugging symbols + +2011-04-15 19:34:28 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * tests/check/ges/layer.c: + * tests/check/ges/save_and_load.c: + 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. + +2011-06-02 21:35:59 -0400 Thibault Saunier + + * ges/ges-timeline-layer.c: + ges: Define a LAYER_HEIGHT constant in the normal layer + +2012-01-11 15:31:41 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + docs: Add pipeline {get|set}_{audio|video}_sink() docs + +2012-01-06 09:16:09 -0300 Robert Swain + + * ges/ges-timeline.c: + timeline: simplify code to remove an object from the pendingobjects list + g_list_remove_all () can be used as a simplification as the private data to ges + timeline object are 1:1. + +2012-01-04 17:24:16 +0100 Robert Swain + + * ges/ges-timeline.c: + GESTimeline: Lock object discovery list + TimelineFileSource objects are asynchronously discovered with discoverer + with such objects being added to a pendingobjects list. If one were to + remove a layer before an object in said layer had been discovered, a + segfault could occur. + As such, management of the list has been made more robust with the + addition of a mutex and removal of the object from the pendingobjects + list upon layer removal. + +2011-11-08 17:29:38 -0500 Mateu Batle + + * ges/ges-timeline-object.c: + GESTimelineObject: fix trigger notify changing props + Notify signal was not triggered when changing properties through + ges_timeline_object_set_* functions, only when done through g_object_set + +2012-01-04 19:56:19 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 710d453 to 0807187 + +2012-01-02 15:58:17 +0100 Edward Hervey + + * ges/ges.c: + ges: Update for registry API change + +2011-12-30 17:24:37 +0100 Edward Hervey + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + bindings/python/Makefile.am + bindings/python/ges.override + bindings/python/gesmodule.c + configure.ac + +2011-12-30 17:18:18 +0100 Edward Hervey + + * tests/examples/ges-ui.c: + * tools/ges-launch.c: + tools: Add proper include for g_printf + +2011-12-30 17:18:40 +0100 Edward Hervey + + * tests/examples/thumbnails.c: + tests/thumbnails: Updates + +2011-12-30 17:18:18 +0100 Edward Hervey + + * tests/examples/ges-ui.c: + * tools/ges-launch.c: + tools: Add proper include for g_printf + +2011-12-30 17:17:11 +0100 Edward Hervey + + * tests/check/ges/save_and_load.c: + tests/save_and_load: Cleanups and leak fixing + +2011-12-30 17:16:29 +0100 Edward Hervey + + * tests/check/ges/effects.c: + tests/effects: Update for new 'parent' property in objects + +2011-12-30 17:15:07 +0100 Edward Hervey + + * ges/ges-enums.c: + * ges/ges-screenshot.c: + * ges/ges-screenshot.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + * ges/ges-track-audio-transition.c: + * ges/ges-track-transition.h: + * ges/ges-track-video-transition.c: + * ges/ges.c: + ges: Update for 0.11 changes + * Changes with controller API + * Use new GstSample for screenshot API + +2011-11-30 16:15:35 +0100 Mark Nauwelaerts + + * tools/ges-launch.c: + ges-launch: allow for optional audio or video track + +2011-11-30 15:44:45 +0100 Mark Nauwelaerts + + * tools/ges-launch.c: + ges-launch: port over gst-launch verbose setting + ... as it is useful for a quick peek as to what is going on. + +2011-11-07 15:08:34 +0100 Robert Swain + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + GESTimelinePipeline: Add API to get/set audio sink + +2011-10-12 12:49:32 +0100 Tim-Philipp Müller + + * docs/libs/Makefile.am: + docs: link against libgstreamer for gst_init() and fix order in GTKDOC_CFLAGS + Add missing backslash so we link against libgstreamer. + +2011-10-12 12:37:54 +0100 Tim-Philipp Müller + + * bindings/python/ges.override: + * bindings/python/gesmodule.c: + bindings: fix up pygst includes for new install directory + Changes from pygst/pygst.h to gst/pygst.h to match the source + code layout, which makes things easier in an uninstalled setup. + https://bugzilla.gnome.org/show_bug.cgi?id=657435 + https://bugzilla.gnome.org/show_bug.cgi?id=657436 + +2011-10-12 12:32:16 +0100 Tim-Philipp Müller + + * configure.ac: + configure: require pygst from git for the headers + +2011-08-26 15:21:25 +0200 Sebastian Dröge + + * bindings/python/Makefile.am: + python: Add $(PYGST_CFLAGS) to CFLAGS to fix the build + https://bugzilla.gnome.org/show_bug.cgi?id=657436 + +2011-10-11 10:12:05 +0200 Edward Hervey + + * docs/libs/ges-sections.txt: + docs: Add new API + +2011-10-11 10:08:47 +0200 Edward Hervey + + * Makefile.am: + * bindings/Makefile.am: + * bindings/python/Makefile.am: + * bindings/python/arg-types.py: + * bindings/python/codegen/Makefile.am: + * bindings/python/codegen/__init__.py: + * bindings/python/codegen/argtypes.py: + * bindings/python/codegen/code-coverage.py: + * bindings/python/codegen/codegen.py: + * bindings/python/codegen/definitions.py: + * bindings/python/codegen/defsparser.py: + * bindings/python/codegen/docextract.py: + * bindings/python/codegen/docgen.py: + * bindings/python/codegen/h2def.py: + * bindings/python/codegen/mergedefs.py: + * bindings/python/codegen/mkskel.py: + * bindings/python/codegen/override.py: + * bindings/python/codegen/reversewrapper.py: + * bindings/python/codegen/scmexpr.py: + * bindings/python/examples/Makefile.am: + * bindings/python/examples/effect.py: + * bindings/python/examples/simple.py: + * bindings/python/ges-types.defs: + * bindings/python/ges.defs: + * bindings/python/ges.override: + * bindings/python/gesmodule.c: + * bindings/python/testsuite/Makefile.am: + * bindings/python/testsuite/common.py: + * bindings/python/testsuite/runtests.py: + * bindings/python/testsuite/test_global_functions.py: + * bindings/python/testsuite/test_layer.py: + * bindings/python/testsuite/test_simple_layer.py: + * bindings/python/testsuite/test_textoverlay.py: + * bindings/python/testsuite/test_timeline.py: + * bindings/python/testsuite/test_timeline_file_source.py: + * bindings/python/testsuite/test_timeline_parse_launch_effect.py: + * bindings/python/testsuite/test_timeline_pipeline.py: + * bindings/python/testsuite/test_timeline_test_source.py: + * bindings/python/testsuite/test_timeline_title_source.py: + * bindings/python/testsuite/test_track.py: + * bindings/python/testsuite/test_transition.py: + * configure.ac: + bindings: We no longer use static bindings in 0.11 + +2011-10-11 10:02:11 +0200 Edward Hervey + + * ges/ges-track-video-transition.c: + TrackVideoTransition: Fix after merge + +2011-10-11 09:58:46 +0200 Edward Hervey + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-10-11 09:54:56 +0200 Edward Hervey + + * common: + common: Update to tip of 0.11 branch + +2011-10-11 09:51:43 +0200 Edward Hervey + + * ges/ges-track-image-source.c: + * ges/ges-track-parse-launch-effect.c: + * ges/ges-track-text-overlay.c: + * ges/ges-track-video-transition.c: + ges: ffmpegcolorspace is dead, long live videoconvert + +2011-10-11 09:51:35 +0200 Edward Hervey + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline.c: + * ges/ges-track-effect.c: + ges: Port to 0.11 API + +2011-10-11 09:50:30 +0200 Edward Hervey + + * ges/ges-screenshot.c: + screenshot: Use new 0.11 API + FIXME : Need to figure out how to get the buffer caps. + +2011-10-05 12:24:36 +0200 Robert Swain + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: API documentation improvements + Added notes for refcounts and transference to API documentation for the + video sink getter/setter. + +2011-10-04 16:25:22 +0200 Robert Swain + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + GESTimelinePipeline: Add video sink get/set API + This new API allows getting/setting of the preview mode's video sink + element through playsink's video-sink property. + +2011-09-07 15:51:36 +0200 Stefan Sauer + + * docs/libs/Makefile.am: + docs: cleanup makefiles + Remove commented out parts that we don't need. Remove "the wingo addition" - no + so useful after all. Narrow down file-globs for plugin docs. + +2011-09-06 21:53:57 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From a39eb83 to 11f0cd5 + +2011-09-06 16:07:30 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From 605cd9a to a39eb83 + +2011-09-02 19:26:43 +0200 Edward Hervey + + * docs/random/design: + docs: clarify sentence a bit + +2011-09-02 18:20:00 +0200 Edward Hervey + + * docs/random/design: + design: More specifications of compositing and material handling + Doing it this way will enable us to handle: + * Output conforming (proper scaling/conversion at the right place) + * Compositing in an easy way at the layer level + * Avoid having too many transformation elements + +2011-09-02 17:45:52 +0200 Edward Hervey + + * docs/random/design: + design: Re-order items by importance + Plugins, templates and so-forth are not top priorities. + Also update the index + +2011-09-02 16:57:37 +0200 Edward Hervey + + * docs/libs/ges-sections.txt: + docs: Remove duplicate symbol + +2011-09-02 16:43:13 +0200 Edward Hervey + + * docs/random/design: + docs: Add note about merging GNonLin and GES + +2011-08-30 16:03:22 +0200 Andoni Morales Alastruey + + * tests/Makefile.am: + Don't build the examples if it's disabled in configure + Fixes: #657707. + +2011-08-30 16:40:03 +0200 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Return before the error labels + Avoids a warning for no reason + +2011-08-29 12:00:06 +0200 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Handle some trivial error cases + Avoids ending up calling potentially NULL variables + +2011-08-29 11:47:01 +0200 Edward Hervey + + * docs/random/design: + docs/design: Add section on compositing and mixing + +2011-08-29 09:51:10 +0200 Edward Hervey + + * docs/random/design: + docs/design: updates on effects and conforming materials + +2011-08-17 12:24:48 +0200 Luis de Bethencourt + + * bindings/python/examples/simple.py: + pyges: updating copyright of simple example + Signed-off-by: Thibault Saunier + +2011-08-14 20:27:08 +0200 Luis de Bethencourt + + * ges/ges-track-video-transition.c: + ges/ges-track-video-transition.c: fix transition of different video sizes + +2011-08-14 00:52:23 +0200 Luis de Bethencourt + + * ges/ges-track-object.c: + GESTrackObject: missing Since tag and typo fixes + +2011-08-13 19:34:55 +0200 Luis de Bethencourt + + * docs/libs/ges-sections.txt: + docs: adding GESPipelineFlags to docs + +2011-08-13 18:38:31 +0200 Luis de Bethencourt + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-text-overlay.c: + * ges/ges-track-text-overlay.c: + docs: add Since tag to new TextOverlay functions + And add them to the GES API doc + +2011-08-13 17:51:48 +0200 Luis de Bethencourt + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-title-source.c: + * ges/ges-track-title-source.c: + docs: add Since tag to new TitleSource functions + And add them to the GES API doc + +2011-08-12 23:32:52 +0200 Luis de Bethencourt + + * bindings/python/examples/Makefile.am: + * bindings/python/examples/effect.py: + pyges: Add an effect example + +2011-08-11 18:26:08 +0200 Luis de Bethencourt + + * bindings/python/examples/simple.py: + pyges: fix and clean examples/simple.py + +2011-08-11 16:35:11 +0200 Edward Hervey + + * .gitignore: + bindings: Ignore more files + +2011-08-11 16:32:51 +0200 Edward Hervey + + * bindings/Makefile.am: + * configure.ac: + bindings: makefile => Makefile + More in sync with all other Makefiles + +2011-08-11 16:28:14 +0200 Edward Hervey + + * bindings/python/testsuite/common.py: + * bindings/python/testsuite/runtests.py: + testsuite: Remove print statements + +2011-08-11 14:31:47 +0200 Thibault Saunier + + * bindings/python/testsuite/test_timeline_file_source.py: + pyges: Fix the timeline_file_source test suite + Can't create a GESTimelineFileSource if you don't have the protocol in the uri + +2011-08-11 14:27:31 +0200 Thibault Saunier + + * bindings/python/Makefile.am: + * bindings/python/testsuite/test_global_functions.py: + * bindings/python/testsuite/test_layer.py: + * bindings/python/testsuite/test_simple_layer.py: + * bindings/python/testsuite/test_textoverlay.py: + * bindings/python/testsuite/test_timeline.py: + * bindings/python/testsuite/test_timeline_file_source.py: + * bindings/python/testsuite/test_timeline_parse_launch_effect.py: + * bindings/python/testsuite/test_timeline_pipeline.py: + * bindings/python/testsuite/test_timeline_test_source.py: + * bindings/python/testsuite/test_timeline_title_source.py: + * bindings/python/testsuite/test_track.py: + * bindings/python/testsuite/test_transition.py: + pyges: Install it so we now use import ges + Using from gst import ges did not make much sense + +2011-08-11 14:22:50 +0200 Thibault Saunier + + * bindings/makefile.am: + pyges: Do not try to build the bindings if no python found + +2011-08-11 14:21:18 +0200 Thibault Saunier + + * bindings/python/Makefile.am: + * bindings/python/examples/Makefile.am: + * bindings/python/testsuite/Makefile.am: + * configure.ac: + pyges: Install files from the examples and testsuite + +2011-05-06 19:39:56 -0300 Thibault Saunier + + * bindings/python/examples/simple.py: + pyges: Add a PyGes example + +2011-08-09 22:11:03 +0200 Thibault Saunier + + * bindings/python/Makefile.am: + * bindings/python/arg-types.py: + pyges: Add the GstArgtypes, get all the functions binded + +2011-08-09 17:16:44 +0200 Thibault Saunier + + * bindings/python/ges.override: + * bindings/python/gesmodule.c: + pyges: link against pygst and use GstMiniObject + +2011-06-10 16:58:55 +0200 Mathieu Duponchelle + + * bindings/python/testsuite/test_global_functions.py: + * bindings/python/testsuite/test_layer.py: + * bindings/python/testsuite/test_simple_layer.py: + * bindings/python/testsuite/test_textoverlay.py: + * bindings/python/testsuite/test_timeline.py: + * bindings/python/testsuite/test_timeline_file_source.py: + * bindings/python/testsuite/test_timeline_parse_launch_effect.py: + * bindings/python/testsuite/test_timeline_pipeline.py: + * bindings/python/testsuite/test_timeline_test_source.py: + * bindings/python/testsuite/test_timeline_title_source.py: + * bindings/python/testsuite/test_track.py: + pyges : Improve the test suite + +2011-06-08 03:23:17 +0200 Mathieu Duponchelle + + * bindings/python/ges.defs: + pyges : correct the defs for ges_track_audio_raw_new and ges_track_video_raw_new + +2011-06-07 01:43:42 +0200 Mathieu Duponchelle + + * bindings/python/codegen/argtypes.py: + * bindings/python/ges.override: + * bindings/python/testsuite/test_timeline.py: + pyges : Add overrides + +2011-06-06 01:02:17 +0200 Mathieu Duponchelle + + * bindings/python/ges.override: + pyges : Add *_valist and *_by_pspec to the ignore-glob + +2011-06-06 00:59:41 +0200 Mathieu Duponchelle + + * ges/ges.h: + Add ges-screenshot.h to ges.h + This is to make ges_play_sink_convert_frame available to the bindings. + +2011-06-08 03:50:51 +0200 Mathieu Duponchelle + + * bindings/python/ges.override: + pyges : override unhandled methods + +2011-06-08 03:50:25 +0200 Mathieu Duponchelle + + * bindings/python/codegen/argtypes.py: + pyges : add argtypes + +2011-06-07 19:59:16 +0200 Mathieu Duponchelle + + * bindings/python/ges.defs: + * bindings/python/ges.override: + pyges : Remove ges_formatter_set_data and get_data from the .defs + +2011-05-14 04:32:45 +0200 Mathieu Duponchelle + + * bindings/python/ges.override: + pyges : Override ges_timeline_parse_launch_effect_new to make it accept None + +2011-06-07 18:38:37 -0400 Thibault Saunier + + * bindings/python/ges-types.defs: + * bindings/python/ges.defs: + pyges: Update ges.defs and ges-types.defs with the new effect API + +2011-06-07 19:44:40 +0200 Mathieu Duponchelle + + * bindings/python/testsuite/test_textoverlay.py: + pyges : Add a text overlay test + +2011-06-07 18:09:35 -0400 Thibault Saunier + + * bindings/python/testsuite/test_timeline.py: + * bindings/python/testsuite/test_transition.py: + pyges : Add actual testing to the testcases + +2011-06-07 18:05:43 -0400 Thibault Saunier + + * bindings/python/ges.override: + pyges: add get_type method to the ignore_blob list + +2011-06-07 19:35:00 +0200 Mathieu Duponchelle + + * bindings/python/ges.override: + pyges: Override methods using GList + +2011-05-12 02:27:12 +0200 Mathieu Duponchelle + + * bindings/python/Makefile.am: + * bindings/python/testsuite/common.py: + * bindings/python/testsuite/runtests.py: + * bindings/python/testsuite/test_timeline.py: + * bindings/python/testsuite/test_transition.py: + pyges : Add a test suite with three test cases for the bindings + +2011-05-06 23:56:16 -0300 Thibault Saunier + + * bindings/python/ges-types.defs: + * bindings/python/ges.defs: + pyges: Regenerate ges.def and ges-types.def so the contructors are detected properly + +2011-05-06 18:11:11 -0300 Thibault Saunier + + * bindings/python/codegen/h2def.py: + pyges: Make use of the namespace for the constructor classnames in codegen + +2011-06-07 15:20:46 -0400 Thibault Saunier + + * bindings/python/codegen/__init__.py: + * bindings/python/codegen/argtypes.py: + * bindings/python/codegen/code-coverage.py: + * bindings/python/codegen/codegen.py: + * bindings/python/codegen/definitions.py: + * bindings/python/codegen/defsparser.py: + * bindings/python/codegen/docextract.py: + * bindings/python/codegen/docgen.py: + * bindings/python/codegen/h2def.py: + * bindings/python/codegen/override.py: + * bindings/python/codegen/reversewrapper.py: + * bindings/python/codegen/scmexpr.py: + pyges: Sync codegen with upstream + +2011-04-27 08:56:29 -0300 Thibault Saunier + + * bindings/python/ges.override: + pyges: override ges_track_get_timeline + This make the bindings compiling without warning + +2011-06-07 19:18:27 -0400 Thibault Saunier + + * Makefile.am: + * acinclude.m4: + * bindings/makefile.am: + * bindings/python/Makefile.am: + * bindings/python/codegen/Makefile.am: + * configure.ac: + building: add python bindings + +2011-06-07 19:17:10 -0400 Thibault Saunier + + * bindings/python/ges-types.defs: + * bindings/python/ges.defs: + * bindings/python/gesmodule.c: + pyges: Add the necessary file to compile the bindings + defs files have been generated with the h2defs.py script + +2011-06-07 16:55:41 -0400 Thibault Saunier + + * bindings/python/ges.override: + pyges: add registering functions prototypes to ges.override + +2011-04-25 19:13:38 -0400 Thibault Saunier + + * bindings/python/ges.override: + pyges: Define missing types + +2011-04-25 19:12:38 -0400 Thibault Saunier + + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-timeline-pipeline.h: + GESTimeleinePipeline: Create a flag type instead of a simple enum + Make it binding friendly + +2011-06-07 03:37:50 +0200 Mathieu Duponchelle + + * bindings/python/ges.override: + pyges: Add ges.override + +2011-06-07 02:26:20 +0200 Mathieu Duponchelle + + * bindings/python/codegen/__init__.py: + * bindings/python/codegen/argtypes.py: + * bindings/python/codegen/code-coverage.py: + * bindings/python/codegen/codegen.py: + * bindings/python/codegen/definitions.py: + * bindings/python/codegen/defsparser.py: + * bindings/python/codegen/docextract.py: + * bindings/python/codegen/docgen.py: + * bindings/python/codegen/h2def.py: + * bindings/python/codegen/mergedefs.py: + * bindings/python/codegen/mkskel.py: + * bindings/python/codegen/override.py: + * bindings/python/codegen/reversewrapper.py: + * bindings/python/codegen/scmexpr.py: + Add codegen to the tracked files + +2011-08-09 19:15:18 +0200 Luis de Bethencourt + + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * tests/check/ges/save_and_load.c: + * tests/check/ges/titles.c: + GESTimelineTitleSource/TrackTitleSource: add xpos/ypos setting + Vertical and horizontal position properties of the title source + can be set and get. + +2011-08-09 19:13:37 +0200 Luis de Bethencourt + + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * tests/check/ges/save_and_load.c: + * tests/check/ges/titles.c: + GESTimelineTitleSource/TrackTitleSource: add color setting + Color property of the text overlay can be set and get. + +2011-08-09 17:39:02 +0200 Luis de Bethencourt + + * tests/examples/transition.c: + examples: add file inpoints and summary to overlay example + +2011-08-08 18:57:37 +0200 Luis de Bethencourt + + * tests/examples/overlays.c: + examples: add xpos and ypos options to overlay example + +2011-08-08 18:44:57 +0200 Luis de Bethencourt + + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * tests/check/ges/overlays.c: + GESTimelineTextOverlay/TrackTextOverlay: add xpos/ypos setting + Vertical and horizontal position properties of the text overlay + can be set and get. + +2011-08-08 18:30:42 +0200 Luis de Bethencourt + + * ges/ges-enums.c: + * ges/ges-enums.h: + ges-enums: completed support for all options in TextAlign + Added the center and position options to the vertical, and horizontal + properties of text alignment. + +2011-08-05 13:24:17 +0200 Edward Hervey + + * common: + * configure.ac: + * ges/Makefile.am: + * gst-editing-services.spec.in: + * tools/.gitignore: + Opening the 0.11 branch + +2011-08-03 12:37:14 +0200 Luis de Bethencourt + + * tests/examples/overlays.c: + examples: add color option to overlay example + +2011-08-03 12:27:04 +0200 Luis de Bethencourt + + * ges/ges-timeline-text-overlay.h: + * ges/ges-track-text-overlay.h: + ges: include indentation fixes + run gst-indent through ges-timeline-text-overlay.h and + ges-track-text-overlay.h + +2011-08-03 12:20:27 +0200 Luis de Bethencourt + + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * tests/check/ges/overlays.c: + GESTimelineTextOverlay/TrackTextOverlay: add color setting + Color property of the text overlay can be set and get. + +2011-08-01 13:42:17 +0200 Luis de Bethencourt + + * tools/ges-launch.c: + ges: easier to understand ges-launch summary + +2011-08-01 13:40:48 +0200 Luis de Bethencourt + + * tools/ges-launch.c: + ges: audio and video preset options in ges-launch + +2011-06-21 20:35:47 +0200 Mathieu Duponchelle + + * ges/ges-track-parse-launch-effect.c: + effects: implement the TrackParseLaunch get_property method properly + +2011-06-07 00:49:58 +0200 Mathieu Duponchelle + + * ges/ges-track-object.c: + GES : make sure to set n_properties to 0 when needed + +2011-07-01 19:30:01 +0200 Luis de Bethencourt + + * tests/examples/test4.c: + 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-06-30 18:13:15 +0200 Luis de Bethencourt + + * tests/check/ges/filesource.c: + tests: fix TEST_URI for filesource tests + +2011-06-27 21:22:48 +0200 Luis de Bethencourt + + * tests/examples/test4.c: + 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-27 20:39:42 +0200 Luis de Bethencourt + + * tests/examples/test2.c: + * tests/examples/test3.c: + examples: remove extra second in test2 and test3 + remove unnecessary sources GList. + and fix comment typos as well. + +2011-06-25 20:12:46 +0200 Luis de Bethencourt + + * ges/ges-timeline-file-source.c: + GESTimelineFileSource: Check uri at _new() + Check if uri is valid before creating a new object in + ges_timeline_filesource_new() + +2011-06-25 19:42:29 +0200 Luis de Bethencourt + + * ges/ges-timeline-file-source.c: + GESTimelineFileSource: Fix documentation + +2011-06-23 11:30:24 -0700 David Schleef + + * common: + Automatic update of common submodule + From 69b981f to 605cd9a + +2011-05-26 09:15:29 -0700 Edward Hervey + + * ges/ges-formatter.c: + GESFormatter: Plug a leak + And make the two save methods have the same code/look + +2011-05-20 16:45:25 +0200 Edward Hervey + + * ges/ges-formatter.h: + GESFormatter: Move comments out of the way + Avoids having them appear in gtk-doc + +2011-05-20 16:03:30 +0200 Edward Hervey + + * ges/ges-timeline-object.h: + * ges/ges-track-object.h: + GESTimelineObject/TrackObject: Don't break ABI for the Class + New addition go at the end, and the _reserved pointer gets reduced + accordingly + +2011-05-20 16:02:58 +0200 Edward Hervey + + * ges/ges-timeline-effect.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-track-effect.c: + * ges/ges-track-effect.h: + * ges/ges-track-object.c: + * ges/ges-track-parse-launch-effect.c: + ges: More "Since: 0.10.2" doc markers + +2011-05-20 15:51:33 +0200 Edward Hervey + + * configure.ac: + configure.ac: Require core/base 0.10.34 + +2011-05-18 10:46:34 -0400 Thibault Saunier + + * ges/ges.c: + doc: Update the ges_init documentation + +2011-05-09 15:15:27 -0400 Thibault Saunier + + * docs/random/design: + design: Update effect statuts + +2011-05-09 13:33:53 -0400 Thibault Saunier + + * ges/ges-formatter.c: + ges: Fix introspection annotations + +2011-05-05 15:02:28 -0300 Thibault Saunier + + * tools/ges-launch.c: + ges-launch: Add a proper error message on errors + +2011-04-27 10:11:44 -0300 Thibault Saunier + + * ges/ges-timeline-standard-transition.c: + GESTimelineStandardTransition: keep track of TrackVideoTransition + Use the new track_object_added/release vfunc to get cleaner code + +2011-04-27 08:47:02 -0300 Thibault Saunier + + * ges/ges-timeline-title-source.c: + GESTimelineTitleSource: Keep track of contained TrackTitleSource objects + We use the new track_object_added and track_object_released vfunc to keep track + of the TrackObject we might be interested in. Makes cleaner code + +2011-04-26 19:39:56 -0400 Thibault Saunier + + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + GESTimelineObject: add track_object_added and track_object_removed virtual methods + Those methods are meant to be used in sublassed when needed. They are not doing + anything at this time, but will be used to clean some code in GESTimelineObject + sublcasses. + +2011-04-25 17:01:48 -0400 Thibault Saunier + + * ges/ges-track.c: + GESTrack: add a duration property + User can connect to the notify::duration signal if needed + +2011-04-25 17:00:10 -0400 Thibault Saunier + + * ges/ges-track.c: + GESTrack: keep track of the properties GParamSpecs + +2011-05-19 23:01:16 +0300 Stefan Kost + + * common: + Automatic update of common submodule + From 9e5bbd5 to 69b981f + +2011-05-18 16:14:35 +0300 Stefan Kost + + * common: + Automatic update of common submodule + From fd35073 to 9e5bbd5 + +2011-05-18 12:27:56 +0300 Stefan Kost + + * common: + Automatic update of common submodule + From 46dfcea to fd35073 + +2011-05-09 14:26:53 +0200 Edward Hervey + + * ges/Makefile.am: + ges: Initialize GES when building the gir/typelib + +2011-05-09 14:25:50 +0200 Edward Hervey + + * docs/libs/ges-sections.txt: + docs: Move TimelineTestSource symbols to the proper section + +2011-05-09 14:25:32 +0200 Edward Hervey + + * docs/libs/ges.types: + docs: Comment enum types in ges.types + Not supported yet + +2011-05-09 14:24:26 +0200 Edward Hervey + + * ges/ges-timeline-object.c: + * ges/ges-timeline.c: + ges: Use %NULL instead of #NULL + Reported by Stefan Kost: + "% is for constants, # is for objects/structs/types, @ is for parameters." + +2011-05-07 16:59:06 +0200 Edward Hervey + + * ges/ges-custom-timeline-source.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-track-object.c: + * ges/ges-track-parse-launch-effect.h: + ges: Fix docs for alignment and introspection annotations + gtk-doc comments need to have a space before the '*' of each line else + they won't be picked up by gtk-doc. + +2011-05-07 13:42:24 +0200 Edward Hervey + + * ges/ges-track.c: + GESTrack: Make debug statement more useful + +2011-05-07 13:41:11 +0200 Edward Hervey + + * ges/ges-track-parse-launch-effect.c: + GESTrackParseLaunchEffect: Name the convert elements better + And bump a DEBUG to an ERROR + +2011-05-07 13:40:11 +0200 Edward Hervey + + * ges/ges-track-effect.c: + GESTrackEffect: Cleanup of the property lookup code + +2011-05-07 13:26:01 +0200 Edward Hervey + + * ges/ges-track-effect.c: + GESTrackObject: Fix leak when iterating elements + We *always* need to unref elements and not just when they're effects + +2011-05-07 13:25:06 +0200 Edward Hervey + + * ges/ges-track-effect.c: + GESTrackObject: use gst_object_ref + +2011-05-07 13:22:50 +0200 Edward Hervey + + * ges/ges-track-effect.c: + GESTrackEffect: Use gst_object_unref for the hash value destroyfunc + The values are GstObjects and it makes it easier to track in debug logs + when they are being unreffed. + +2011-05-06 17:21:22 -0300 Thibault Saunier + + * ges/ges-track-effect.c: + * tests/check/ges/effects.c: + GESTrackkEffect: Fix Leaks + +2011-05-06 17:18:58 -0300 Thibault Saunier + + * ges/ges-timeline-parse-launch-effect.c: + GESTimelineParseLaunchEffect: finalize to avoid leaks + +2011-05-06 14:55:31 -0300 Thibault Saunier + + * ges/ges-timeline-effect.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-track-effect.c: + * ges/ges-track-parse-launch-effect.c: + ges: Add 'Since 0.10.2' to the new effects related API + +2011-05-06 19:41:38 +0200 Edward Hervey + + * ges/ges-track-object.c: + GESTrackObject: Check for valid argument + +2011-05-06 19:41:16 +0200 Edward Hervey + + * ges/ges-track-object.c: + GESTrackObject: Make a local function static + +2011-05-06 19:40:22 +0200 Edward Hervey + + * ges/ges-timeline-object.c: + GESTimelineObject: Check for valid arguments + and minor indentation fix + +2011-05-06 19:39:26 +0200 Edward Hervey -2017-12-13 12:06:40 +0000 Julien Isorce + * ges/ges-track-parse-launch-effect.c: + ges: Debug statement fixups - * omx/gstomxvideodec.c: - omxvideodec: consolidate the decision to try UseBuffer - The tee element can call gst_query_add_allocation_pool with pool as NULL. - Checking nth > 0 is not enough so we need to verify if there is a pool. - https://bugzilla.gnome.org/show_bug.cgi?id=730758 - https://bugzilla.gnome.org/show_bug.cgi?id=784069 +2011-05-06 19:38:26 +0200 Edward Hervey -2017-12-12 14:45:30 +0000 Julien Isorce + * ges/ges-timeline-object.c: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-track-object.c: + * ges/ges-track-parse-launch-effect.c: + ges: Doc fixes - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - gstomxvideodec: fix framerate overflow - Some live streams can set the framerate to 50000/1677 (=29.81). - GstVideoInfo.fps_n << 16 is wrong if the fps_n is 50000 - (i.e. greater than 32767). - https://bugzilla.gnome.org/show_bug.cgi?id=759043 +2011-05-06 19:36:35 +0200 Edward Hervey -2017-08-22 13:48:26 +0100 Julien Isorce + * ges/ges-timeline-object.h: + * ges/ges-timeline-parse-launch-effect.h: + * ges/ges-track-object.h: + ges: Include indentation fixes - * configure.ac: - * examples/egl/Makefile.am: - * examples/egl/meson.build: - * examples/egl/testegl.c: - * meson.build: - example: port testegl.c to desktop - Will be easier to maintain. - Also uniformize autotool build with meson build which is - already retrieving the gl libs. - https://bugzilla.gnome.org/show_bug.cgi?id=781606 +2011-05-06 19:35:13 +0200 Edward Hervey -2017-12-11 15:55:44 +0000 Julien Isorce + * ges/ges-timeline-effect.h: + * ges/ges-timeline-parse-launch-effect.h: + * ges/ges-timeline-standard-transition.h: + * ges/ges-timeline-transition.h: + * ges/ges.h: + ges: Fix include orders - * meson.build: - meson: move omx features check after target selection - And uses gst_omx_args instead of add_global_arguments. - Similar to c69232852120d064c689caef07b3c68ad8fe6288 - which was only for configure.ac - Useful to get omxvp8dec with meson too: - meson . buildtmp -D with_omx_target=tizonia - https://bugzilla.gnome.org/show_bug.cgi?id=782800 - -2017-12-04 17:11:04 +0000 Julien Isorce - - * config/tizonia/gstomx.conf.in: - config: add OMX.Aratelia.audio_decoder.aac to Tizonia config - Useful mostly for testing/debugging purpose as this is a software - based decoder (libfaad) for which GStreamer provides a direct - wrapper. - https://bugzilla.gnome.org/show_bug.cgi?id=791482 - -2017-11-29 14:18:41 +0100 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: retrieve OMX_IndexParamVideoPortFormat before setting it - The usual pattern when setting OMX params is to first get the struct - param, override the values we want to set and then set the updated - param. - We were not doing this with OMX_IndexParamVideoPortFormat and so were - resetting some fields such as OMX_VIDEO_PARAM_PORTFORMATTYPE.xFramerate - https://bugzilla.gnome.org/show_bug.cgi?id=790979 - -2017-05-21 17:34:51 +0100 Julien Isorce - - * omx/gstomxaacenc.c: - omxaacenc: also set 'profile' if mpegversion is 4 - Like done by gst_codec_utils_aac_caps_set_level_and_profile - which is called by avenc_aac, ffaac and voaacenc. - https://bugzilla.gnome.org/show_bug.cgi?id=735208 - -2017-10-24 12:19:50 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: wait for flush complete and buffers being released when flushing - As stated in the existing comment, when flusing we should wait for OMX - to send the flush command complete event AND all ports being released. - We were stopping as soon as one of those condition was met. - Fix a race between FillThisBufferDone/EmptyBufferDone and the flush - EventCmdComplete messages. The OMX implementation is supposed to release - its buffers before posting the EventCmdComplete event but the ordering - isn't guaranteed as the FillThisBufferDone/EmptyBufferDone and - EventHandler callbacks can be called from different threads (cf 2.7 - 'Thread Safety' in the spec). - https://bugzilla.gnome.org/show_bug.cgi?id=789475 - -2017-10-24 11:45:20 +0200 Guillaume Desmottes - - * omx/gstomx.c: - gst_omx_port_set_flushing: simplify waiting loop - No semantic change so far, I just made the 'while' end condition easier - to understand as a first step before changing it. - - move error/time out checks inside the loop to make it clearer on what - we are actually waiting for. - - group port->buffers checks together with parenthesis as they are part - of the same conceptual check: waiting for all buffers to be released. - https://bugzilla.gnome.org/show_bug.cgi?id=789475 - -2017-11-27 20:17:17 +1100 Matthew Waters +2011-05-06 11:58:02 +0200 Edward Hervey - * common: - Automatic update of common submodule - From 3f4aa96 to e8c7a71 + * tests/check/ges/.gitignore: + tests: Add effects to ignored files -2017-11-23 15:03:48 +0100 Guillaume Desmottes +2011-05-06 11:56:30 +0200 Edward Hervey - * omx/gstomxh264enc.c: - * omx/gstomxh264utils.c: - zynqultrascaleplus: add support for extra AVC levels - The Zynqultrascaleplus has support for extra AVC levels not defined in - the OMX spec as a customer extension. - https://bugzilla.gnome.org/show_bug.cgi?id=790758 + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-track-object.c: + ges: Don't break debug lines -2017-10-16 14:47:07 +0200 Guillaume Desmottes +2011-05-06 11:54:41 +0200 Edward Hervey - * .gitignore: - * Makefile.am: - * config/meson.build: - * configure.ac: - * meson.build: - * tests/Makefile.am: - * tests/check/.gitignore: - * tests/check/Makefile.am: - * tests/check/generic/.gitignore: - * tests/check/generic/states.c: - * tests/check/meson.build: - * tests/meson.build: - add test support - Most of the boilerplate and the states test has been copied from - gst-plugins-good. - https://bugzilla.gnome.org/show_bug.cgi?id=789094 + * docs/libs/ges-sections.txt: + docs: Add missing symbol to ges-sections -2017-10-17 13:07:05 +0200 Guillaume Desmottes +2011-05-06 11:54:19 +0200 Edward Hervey - * meson.build: - * tools/meson.build: - meson: add tools support - Looks like the tools directory was left out during the initial port to - meson. - https://bugzilla.gnome.org/show_bug.cgi?id=789090 + * ges/ges-track-parse-launch-effect.h: + TrackLaunchEffect: Fix macros -2017-10-16 14:24:50 +0200 Guillaume Desmottes +2011-03-17 11:38:38 -0400 Thibault Saunier - * omx/gstomx.c: - omx: fix build on rpi - The nTimeStamp field is a OMX_TICKS struct on the rpi so use the proper - macro to set it. - Fix build on the build which has been broken by - b3173144b7c1b12c9e1b7571f78659be45d813f6 - https://bugzilla.gnome.org/show_bug.cgi?id=789052 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + ges-ui: add effects -2017-10-17 12:11:04 +0200 Guillaume Desmottes +2011-03-16 17:06:08 -0400 Thibault Saunier - * configure.ac: - * meson.build: - check if Allegro headers are present when building zynqultrascaleplus - The Zynq UltraScale+ uses a custom version of OMX implementing several - 3rd party extensions. Make sure those are present when building this - target. - https://bugzilla.gnome.org/show_bug.cgi?id=788064 + * ges/ges-track-parse-launch-effect.c: + GESTrackParseLaunchEffect: better create_element implementation -2017-10-16 12:42:44 +0200 Guillaume Desmottes +2011-03-16 16:23:53 -0400 Thibault Saunier - * omx/gstomxvideodec.c: - omxvideodec: remove redundant debug message - We have already a debug message right after. - https://bugzilla.gnome.org/show_bug.cgi?id=789058 + * ges/ges-track-object.c: + TrackObject: fixe a crash in connect_signal -2017-10-16 13:26:38 +0200 Guillaume Desmottes +2011-02-25 17:10:00 +0100 Thibault Saunier - * omx/gstomxh265enc.c: - * omx/gstomxh265utils.c: - omxh265: fix enum casting when using Allegro HEVC extensions - Allegro's HEVC implementation defines a superset of the profiles and - enums from the Android implementation. - Properly cast to fix -Wenum-conversion warnings from clang. - https://bugzilla.gnome.org/show_bug.cgi?id=789057 + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * tests/check/ges/effects.c: + GESTrackObject: add a ges_track_object_list_children_properties method + test: Test the new method, and also set/get_child_property_by_spec -2017-10-16 13:08:12 +0200 Guillaume Desmottes +2011-02-25 12:13:03 +0100 Thibault Saunier - * omx/gstomxh265enc.c: - * omx/gstomxvp8dec.c: - properly cast extension enums - OMX's allow 3rds party to define extensions using their own enums - (like OMX_VIDEO_CODINGEXTTYPE) and to be used as the general - ones (like OMX_VIDEO_CODINGTYPE). - Properly cast those to fix -Wenum-conversion warnings from some - compilers such as clang. - https://bugzilla.gnome.org/show_bug.cgi?id=789057 + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * tests/check/ges/effects.c: + GESTrackObject: Implement a get/set_child_property_by_spec and get/set_child_property_valist methods + Reimplement the get/set_property accordingly -2017-10-09 13:12:35 +0200 Guillaume Desmottes +2011-02-25 11:32:44 +0100 Thibault Saunier - * omx/gstomx.c: - omx: also reset nTimeStamp when re-using buffers - Some OMX implementations may check if the timestamp of the output buffers - they receive is actually not set. - https://bugzilla.gnome.org/show_bug.cgi?id=788711 + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: add a ges_track_object_lookup_child method -2017-10-04 17:11:55 +0200 Guillaume Desmottes +2011-02-25 10:54:55 +0100 Thibault Saunier - * omx/gstomx.c: - omx: factor out gst_omx_buffer_reset() - https://bugzilla.gnome.org/show_bug.cgi?id=788711 + * ges/ges-track-object.c: + GESTrackObject: fixe the connect_properties_signals -2017-10-09 17:27:22 +0200 Guillaume Desmottes +2011-02-23 20:30:04 +0100 Thibault Saunier - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - add gst_omx_buffer_flags_to_string() - Make debug logs more readable so users don't have to manually figure out - the meaning of flags. - https://bugzilla.gnome.org/show_bug.cgi?id=788767 + * ges/ges-track-effect.c: + * ges/ges-track-object.c: + GESTrackObject: Change properties_hashtable format to GParamSpec->GstElement + It used to be 'ClassName-property-name' -> GstElement -2017-09-27 19:47:29 +0530 Ponnam Srinivas +2011-02-16 18:35:02 +0100 Thibault Saunier - * omx/gstomxh263enc.c: - h263enc: fix caps leak in error code path - https://bugzilla.gnome.org/show_bug.cgi?id=788245 + * ges/ges-track-effect.c: + * ges/ges-track-parse-launch-effect.c: + GESTrackEffect: move get_props_hastable implementation from GESTackParseLaunchEffect -2017-09-21 15:21:36 +0530 Ponnam Srinivas +2011-02-16 17:51:21 +0100 Thibault Saunier - * omx/gstomxh264enc.c: - omxh264enc: fix caps leak - https://bugzilla.gnome.org/show_bug.cgi?id=787711 + * ges/ges-timeline-object.c: + GESTimelineObject: set_top_effect_priority refactoring -2017-09-21 11:36:46 +0530 Ponnam Srinivas +2011-02-16 17:45:05 +0100 Thibault Saunier - * omx/gstomxh265enc.c: - omxh265enc: fix caps leak - https://bugzilla.gnome.org/show_bug.cgi?id=787714 + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * tests/check/ges/effects.c: + GESTimelineObject: Change the get_effects method to get_top_effects. -2017-09-13 15:32:51 +0200 Guillaume Desmottes +2011-02-16 15:51:20 +0100 Thibault Saunier - * omx/gstomxvideodec.c: - omxvideodec: log info about frame before releasing it - gst_video_decoder_release_frame() takes ownership of the frame and will - destroy it. So we should no longer use it after calling it. - https://bugzilla.gnome.org/show_bug.cgi?id=787628 + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: fixe a few issues with the get_props_hastable vmethod -2017-08-20 20:19:33 +0530 Gurkirpal Singh +2011-02-16 14:30:22 +0100 Thibault Saunier - * configure.ac: - configure: Show tizonia target in help - https://bugzilla.gnome.org/show_bug.cgi?id=786544 + * ges/ges-timeline-object.c: + GESTimelineEffect: keep the list of TrackObjects always sorted + Make sort_track_effects function static -2017-07-12 14:35:10 +0200 Guillaume Desmottes +2011-02-16 14:05:14 +0100 Thibault Saunier - * config/zynqultrascaleplus/gstomx.conf: - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxh265dec.c: - * omx/gstomxh265dec.h: - * omx/meson.build: - omxh265dec: add H265 decoder - Add HEVC decoder for the zynqultrascaleplus platform. - I used the H264 decoder code as a template. - https://bugzilla.gnome.org/show_bug.cgi?id=785434 + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * tests/check/ges/effects.c: + GESTimelineObject: use GESTrackEffect as base classe for effects and not GESTrackOperation. -2017-07-12 11:01:15 +0200 Guillaume Desmottes +2011-02-11 09:17:58 +0100 Thibault Saunier - * config/zynqultrascaleplus/gstomx.conf: - * configure.ac: - * meson.build: - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxh265enc.c: - * omx/gstomxh265enc.h: - * omx/gstomxh265utils.c: - * omx/gstomxh265utils.h: - * omx/meson.build: - omxh265enc: add H265 encoder - The OMX spec doesn't support HEVC but the OMX stack of the - zynqultrascaleplus adds it as a custom extension. - It uses the same API as the one of Android's OMX stack. - I used the H264 encoder code as a template. - https://bugzilla.gnome.org/show_bug.cgi?id=785434 - -2017-08-28 13:56:22 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: use caps from query in propose_allocation - Prevent crash by not deferencing a NULL pointer if self->input_state - isn't defined when propose_allocation() is called. - https://bugzilla.gnome.org/show_bug.cgi?id=786442 - -2017-09-04 09:34:03 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: display states as string if changing failed - Improve the error message by displaying the states in their string - representation rather than their numerical value. - https://bugzilla.gnome.org/show_bug.cgi?id=787235 - -2017-08-22 10:22:45 +0100 Julien Isorce - - * omx/gstomxvideodec.c: - omxvideodec: EGLDisplay is not indirectly defined by gstgl headers inclusion - Just use gpointer as done in GstGL to not include - EGL/egl.h just for EGLDisplay. - https://bugzilla.gnome.org/show_bug.cgi?id=784779 - -2017-07-14 16:34:04 +0530 Gurkirpal Singh - - * config/tizonia/gstomx.conf.in: - config: expose OMX.mesa h264 decoder and encoder in Tizonia config - https://bugzilla.gnome.org/show_bug.cgi?id=783976 - -2017-08-11 07:48:37 -0700 Julien Isorce - - * omx/gstomxvideodec.c: - omxvideodec: remove wrong SettingsChanged ack - Partially revert 1b7d0b8: - omxvideodec: handle IL 1.2 behavior for OMX_SetParameter - It turned out it was a problem in the decoder which was - not updating some local variables upon SetParameter. - https://bugzilla.gnome.org/show_bug.cgi?id=783976 - -2017-07-20 09:43:19 +0100 Julien Isorce - - * omx/gstomxaudiodec.c: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx{audio,video}{dec,enc}: sequentially disable ports because buffers are not shared - For the history, the parallel disable port has been introduced by: - "00be69f omxvideodec: Disable output port when setting a new format" - and then replicated to videoenc, audiodec and audioenc. - This is only required to do 'parallel' if buffers are shared between ports. - But for decoders and encoders the input and output buffer are of different - nature by definition (bitstream vs images). So they cannot be shared. - Also starting from IL 1.2.0 it is written in the spec that the parallel - disable is not allowed and will return an error. Except when buffers are - shared. - Again here we know in advance that they are not shared so let's always - do a sequential disable. - Tested on Desktop, rpi and zynqultrascaleplus. - https://bugzilla.gnome.org/show_bug.cgi?id=786348 - -2017-08-17 12:26:05 +0100 Tim-Philipp Müller + * ges/ges-timeline-parse-launch-effect.c: + GESTimelineParseLaunchEffect: documentation fixing - * common: - Automatic update of common submodule - From 48a5d85 to 3f4aa96 +2011-02-11 09:14:33 +0100 Thibault Saunier -2017-08-10 12:16:53 -0400 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: use the decoder API to set latency - https://bugzilla.gnome.org/show_bug.cgi?id=785125 - -2017-07-06 14:19:19 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideoenc/dec: declare latency on zynqultrascaleplus - The OMX specification doesn't provide any API to expose the latency - introduced by encoders and decoders. We implemented this as a custom - extension as declaring the latency is needed for live pipelines like - video conferencing. - https://bugzilla.gnome.org/show_bug.cgi?id=785125 - -2017-08-07 13:16:01 -0400 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: adjust stride and slice height from input - Use the stride and slice height information from the first buffer meta - data to adjust the settings of the input port. - This will ensure that the OMX input buffers match the GStreamer ones - and so will save us from having to copy line-by-line each one. - This is also the first step to allow the OMX encoder to receive dmabuf. - Tested on rpi and zynqultrascaleplus. - https://bugzilla.gnome.org/show_bug.cgi?id=785967 - -2017-08-07 11:45:29 -0400 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: delay buffer configuration until component is enabled - No significant change for now. Just delay the input port configuration - of the buffer size related fields (stride, slice height, buffer size) - until the component is activated. - This will allow us to use the actual stride/height of the first input - and so avoid the buffer copying code path in most cases. - Tested on rpi and zynqultrascaleplus. - https://bugzilla.gnome.org/show_bug.cgi?id=785967 - -2017-07-24 13:52:35 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideodec/enc: delay allocation after the allocation query - Allocating OMX components buffers in set_format() is too early. - Doing it when receiving the first buffers will allow the element to use - the information from the allocation query and/or the first incoming - buffer to pick to best allocation mode. - Tested on raspberry pi with dynamic resolution changes on decoder and - encoder input. - https://bugzilla.gnome.org/show_bug.cgi?id=785967 - -2017-07-25 14:27:45 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: start src thread in handle_frame() - Makes the code simpler as we no longer need to restart the thread in - gst_omx_video_enc_flush() and It's more symetric which the omxvideodec - implementation. - I'm also going to move the enabling of the OMX component in - handle_frame() and the src pad thread needs to be started after it. - https://bugzilla.gnome.org/show_bug.cgi?id=785967 - -2017-07-25 14:07:30 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: earlier return if downstream_flow_ret is not OK - There is no point to (re)start the src thread if, for example, we are - flushing. - https://bugzilla.gnome.org/show_bug.cgi?id=785967 - -2017-07-24 12:31:37 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: factor out enable and disable code - No semantic change, just factor out the code enabling and disabling the - component to their own functions. - Makes the code easier to read as the set_format() method was already - pretty big. Will also allow us to easily change the enabling logic. - https://bugzilla.gnome.org/show_bug.cgi?id=785967 - -2017-07-24 12:31:37 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: factor out enable and disable code - No semantic change, just factor out the code enabling and disabling the - component to their own functions. - Makes the code easier to read as the set_format() method was already - pretty big. Will also allow us to easily change the enabling logic. - https://bugzilla.gnome.org/show_bug.cgi?id=785967 - -2017-07-27 12:12:01 +0200 Guillaume Desmottes - - * omx/gstomx.c: - omx: also reset nFilledLen before calling OMX_FillThisBuffer() - The spec states that the buffer passed to OMX_FillThisBuffer() needs to be - empty. Some implementation may check it actually is by checking its - nFilledLen field, so best to reset it as well. - https://bugzilla.gnome.org/show_bug.cgi?id=785623 - -2017-07-17 21:06:47 +0100 Julien Isorce - - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: make generic the OMX_UseEGLImage code path - Will be easier to maintain and to make enhancements. - Tested with Tizonia on Desktop. - Also tested with Bellagio to make sure it does not crash when - calling OMX_UseEGLImage and indeed it returns NotImplemented. - Then gst-omx fallback to OMX_UseBuffer if it can and so on. - Also tested on rpi to make sure there is no regression. - https://bugzilla.gnome.org/show_bug.cgi?id=784365 - -2017-07-21 11:52:00 -0400 Nicolas Dufresne - - * omx/gstomxvideodec.c: - omxvideodec: Fix segment seek - On segment seek, unlike EOS, we drain, but we cannot expect a flush - later to reset the decoder state. As a side effect, the decoder would - remain in EOS state and ignore any new incoming buffers. - To fix this, we call _flush() inside the _drain() function, and - _finish() becomes what _drain() was before. This way, for _finish() (the - eos case) we only drain, for _drain() triggered by segment seek or new - caps, we also reset the decoder state so it's ready to accept buffers. - https://bugzilla.gnome.org/show_bug.cgi?id=785237 - -2017-07-10 15:00:58 +0200 Guillaume Desmottes - - * omx/gstomxvideoenc.c: - omxvideoenc: ensure enough buffers are allocated in the pool - Handle allocation query and ensure enough buffers are allocated in - the negotiated pool. This help preventing buffer starvation in the pipeline. - https://bugzilla.gnome.org/show_bug.cgi?id=785122 - -2017-07-04 12:16:39 +0200 Guillaume Desmottes + * docs/libs/ges-sections.txt: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-track-parse-launch-effect.c: + * ges/ges-track-parse-launch-effect.h: + * tests/check/ges/effects.c: + TrackParseLaunchEffect: rename ges_track_parse_launch_effect_new_from_bin_desc method to ges_track_parse_launch_effect_new - * configure.ac: - * meson.build: - * omx/Makefile.am: - * omx/gstomxbufferpool.c: - * omx/gstomxbufferpool.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - * omx/meson.build: - omxvideodec: add dmabuf support for output - The zynqultrascaleplus OMX implementation has a custom extension - allowing decoders to output dmabuf and so avoid buffers copy between OMX - and GStreamer. - Make use of this extension when built on the zynqultrascaleplus. The - buffer pool code should be re-usable for other platforms as well. - https://bugzilla.gnome.org/show_bug.cgi?id=784847 +2011-02-10 16:33:16 +0100 Thibault Saunier -2017-06-20 00:13:33 +0100 Julien Isorce + * docs/design/effects.txt: + design: Update effect implementation doc - * config/tizonia/gstomx.conf.in: - config: add OMX.Aratelia.video_decoder.vp8 to Tizonia config - Useful mostly for testing/debugging purpose as this is a software - based encoder (libvpxdec) for which GStreamer provides a direct - wrapper. - https://bugzilla.gnome.org/show_bug.cgi?id=783976 +2011-02-10 16:15:50 +0100 Thibault Saunier -2017-06-19 23:56:02 +0100 Julien Isorce + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-timeline-effect.c: + * ges/ges-timeline-effect.h: + * ges/ges-timeline-parse-launch-effect.c: + * ges/ges-timeline-parse-launch-effect.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/effects.c: + Make GESTimelineEffect abstract and move its implementation to GESTimelineParseLaunchEffect + test: Adapte the test suite to suite the new API - * omx/gstomxvideodec.c: - omxvideodec: handle IL 1.2 behavior for OMX_SetParameter - It triggers SettingsChanged on the other port and it is up to - the client to decide if it should lead to a port reconfiguration. - Settings are propagated to the other port for fields they have - in common. But this event is only triggered on the other port - if it actually change a setting. - https://bugzilla.gnome.org/show_bug.cgi?id=783976 +2011-02-10 12:17:50 +0100 Thibault Saunier -2017-07-18 23:41:17 +0100 Julien Isorce + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-timeline-effect.c: + * ges/ges-track-effect.c: + * ges/ges-track-effect.h: + * ges/ges-track-parse-launch-effect.c: + * ges/ges-track-parse-launch-effect.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/effects.c: + Make GESTrackEffect abstract and move its implementation to GESTrackParseLaunchEffect + test: update the effect test suite - * config/tizonia/gstomx.conf.in: - config: set rank to 0 for Tizonia's mp3 decoder - Should have been 0 from the initial commit - eed49b4231a063639f90279c8044404c2149902a +2011-02-08 16:08:28 +0100 Thibault Saunier -2017-07-17 21:03:55 +0100 Julien Isorce + * docs/libs/ges.types: + docs: Add missing symbols in docs/libs/ges.types so the class hierarchy is well generated - * omx/gstomxvideodec.c: - omxvideodec: fix file permissions - Introduced by ebc9b4903cbdac2793c24b05a1bb7acc3b67fae5 +2011-02-08 11:21:41 +0100 Thibault Saunier -2017-06-29 23:17:26 +0100 Julien Isorce + * docs/design/effects.txt: + design: update effect implementation progress - * omx/gstomxvideodec.c: - omxvideodec: fix buffer leak when eglimage setup fails - Can happen if gst_buffer_pool_acquire_buffer succeeds but - gst_buffer_n_memory (buffer) is not exactly 1. - In theory this should not happen because the decoder requests - EGLImage(RGBA) but better to fix any leak on corner cases. - https://bugzilla.gnome.org/show_bug.cgi?id=784365 +2011-02-08 15:29:21 +0100 Thibault Saunier -2017-07-17 18:36:36 +0530 Satya Prakash Gupta + * ges/ges-track-object.c: + * tests/check/ges/effects.c: + GESTrackObject: add the deep-notify signal + tests: test the new signal - * omx/gstomx.c: - omx: Possible Memory leak in gst_caps_from_string - https://bugzilla.gnome.org/show_bug.cgi?id=784978 +2011-02-08 14:04:39 +0100 Thibault Saunier -2017-07-17 15:48:44 +0530 Satya Prakash Gupta + * ges/ges-timeline-object.c: + * tests/check/ges/effects.c: + GESTimelineObject: Emit signal when adding and removing effects + tests: test that those signals are actually well sent - * omx/gstomxvideoenc.c: - omxvideoenc: Fix deadlock in error case when draining - https://bugzilla.gnome.org/show_bug.cgi?id=784972 +2011-02-08 11:10:31 +0100 Thibault Saunier -2017-07-17 13:44:54 +0530 Satya Prakash Gupta + * ges/ges-timeline-object.c: + docs: fixe the GESTimelineObject documentation - * omx/gstomxaudioenc.c: - omxaudioenc: Fix deadlock in error case when draining - https://bugzilla.gnome.org/show_bug.cgi?id=784967 +2011-02-08 11:06:57 +0100 Thibault Saunier -2017-06-02 12:36:30 +0200 Guillaume Desmottes + * docs/design/effects.txt: + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * tests/check/ges/effects.c: + GesTrackObject: add the ges_track_object_get_child_property method + test: Test this new method + design: change the design file to fit the implementation - * configure.ac: - * meson.build: - * omx/gstomx.h: - build: include OMX_IndexExt and OMX_ComponentExt if present - These files may be used by OMX implementation to define custom extensions. - Include them if present as we are already doing with OMX_VideoExt.h - https://bugzilla.gnome.org/show_bug.cgi?id=784847 - -2017-07-13 16:40:26 +1000 Jan Schmidt - - * omx/gstomxh264enc.c: - omxh264enc: Re-add periodicty-idr property for backward compat - Retain backwards compatibility by adding a duplicate - property for periodicty-idr - https://bugzilla.gnome.org/show_bug.cgi?id=784370 - -2017-06-30 15:15:06 +0200 Guillaume Desmottes - - * omx/gstomxh264enc.c: - omxh264enc: fix typo in "periodicty-idr" property name - Also fix the 'nick' of the property. - https://bugzilla.gnome.org/show_bug.cgi?id=784370 - -2017-06-29 22:48:47 +0100 Julien Isorce - - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: use OMX_UseBuffer - For example this allows the omx decoder to directly fill the - pixmaps coming from the video sink. - It only avoids a buffer copy when the decoder uses a pool provided - by a downstream element. So let's restrict this usage to situations - where the decoder decides to use a downstream buffer pool. - Tested with Tizonia/OMX.Aratelia.video_decoder.vp8 - and with Bellagio/OMX.mesa.video_decoder.avc. - If it fails to setup buffers with OMX_UseBuffer the decoders - fallbacks to usual OMX_AllocateBuffer. - Also it allows to test on desktop the GstOMXBufferPool->other_pool - management which was previously only used in the OMX_UseEGLImage - case, i.e. on Rpi. - https://bugzilla.gnome.org/show_bug.cgi?id=784069 - -2017-07-12 10:29:16 +0100 Julien Isorce - - * omx/gstomx.c: - omx: do not always print an error if OMX_{UseBuffer,EGLImage} fails - Let the caller decide to print an error. Because it can be part of - a normal trial path. - https://bugzilla.gnome.org/show_bug.cgi?id=784069 - -2017-07-12 16:00:53 +0200 Guillaume Desmottes - - * omx/meson.build: - meson: add gstomxmp3enc - Commit 02d493e85921596f7cac7ef4af02fde500e9a5d8 didn't add - gstomxmp3enc.c to meson. - https://bugzilla.gnome.org/show_bug.cgi?id=784848 - -2017-05-23 10:32:58 +0100 Julien Isorce - - * config/tizonia/gstomx.conf.in: - config: add OMX.Aratelia.audio_encoder.mp3 to Tizonia config - Useful mostly for testing/debugging purpose as this is a software - based encoder (libmp3lame) for which GStreamer provides a direct - wrapper. - https://bugzilla.gnome.org/show_bug.cgi?id=782988 - -2017-05-23 10:32:06 +0100 Julien Isorce - - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxmp3enc.c: - * omx/gstomxmp3enc.h: - omx: add gstomxmp3enc - Initial support and only tested with the software based - encoder OMX.Aratelia.audio_encoder.mp3 from Tizonia which - internally uses libmp3lame. - https://bugzilla.gnome.org/show_bug.cgi?id=782988 - -2017-03-28 16:27:10 +0200 Guillaume Desmottes - - * config/zynqultrascaleplus/gstomx.conf: - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxh264dec.c: - h264dec: add hack to pass profile and level to OMX - This information can be useful to zynqultrascaleplus decoders. They may - use this information to reduce startup latency by configuring itself - before receiving the first frames. - We also have a custom OMX extension allowing the decoder to report the - latency. The profile/level information helps it reporting a more - accurate latency earlier. - https://bugzilla.gnome.org/show_bug.cgi?id=783114 - -2017-07-03 13:17:11 +0200 Guillaume Desmottes - - * omx/Makefile.am: - * omx/gstomxh264enc.c: - * omx/gstomxh264utils.c: - * omx/gstomxh264utils.h: - * omx/meson.build: - omxh264enc: move profile and level parsing functions to their own files - Will allow to re-use them in the decoder element. - https://bugzilla.gnome.org/show_bug.cgi?id=783114 - -2017-07-04 03:15:00 +0530 Gurkirpal Singh - - * config/meson.build: - * config/tizonia/meson.build: - * meson.build: - * meson_options.txt: - meson: Add tizonia option - https://bugzilla.gnome.org/show_bug.cgi?id=782800 +2011-02-08 10:25:41 +0100 Thibault Saunier -2017-04-29 02:56:59 +0530 Gurkirpal Singh + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * tests/check/ges/effects.c: + GESTrackObject: add a ges_track_object_set_child_property_method + test: Test the new method - * .gitignore: - * config/tizonia/Makefile.am: - * config/tizonia/gstomx.conf.in: - * config/tizonia/meson.build: - * configure.ac: - config: add omxmp3dec config for tizonia - GST_OMX_CONFIG_DIR=$HOME/gst/master/gst-omx/config/tizonia/ \ - gst-launch-1.0 filesrc location=mpthreetest.mp3 ! id3demux ! \ - mpegaudioparse ! omxmp3dec ! audioconvert ! pulsesink - v2: [Nicolas] Use template to create gstomx.conf using pkg-config - v3: [Nicolas] Ignore only config/tizonia/gstomx.conf - v4: [Nicolas] Add "/" for single occurence - https://bugzilla.gnome.org/show_bug.cgi?id=782800 - -2017-05-07 20:09:54 +0530 Gurkirpal Singh - - * omx/gstomx.c: - omx: always ignore OMX_ErrorPortUnpopulated - It is safe to ignore it always. Tizonia notifies this error to pass - some khronos conformance tests. Problem is that gst-omx saves this - error in comp->last_error and then gst_omx_port_set_enabled early - error out which fails the pipeline. - https://bugzilla.gnome.org/show_bug.cgi?id=782800 - -2017-04-29 02:53:26 +0530 Gurkirpal Singh - - * omx/gstomx.c: - * omx/gstomx.h: - omx: guard some omx enums with IL version - Some enums that existed in 1.1.2 just do not exit in 1.2.0 - See https://www.khronos.org/registry/OpenMAX-IL/specs/OpenMAX_IL_1_2_0_Specification_redline.pdf - https://bugzilla.gnome.org/show_bug.cgi?id=782800 - -2017-04-29 01:56:01 +0530 Gurkirpal Singh - - * configure.ac: - configure.ac: add tizonia target for --with-omx-target flag. - This will check for tizilheaders.pc which adds path to omx-il - headers its cflags. Can be installed all together with the 1.2 headers - with package tizilheaders if not building from sources: - https://github.com/tizonia/tizonia-openmax-il - It is also adviced to remove libomxil-bellagio-dev package because - it installs headers /usr/include directly, ex: /usr/include/OMX_Video.h. - https://bugzilla.gnome.org/show_bug.cgi?id=782800 - -2017-07-05 10:47:41 +0100 Julien Isorce - - * omx/gstomxaudioenc.c: - omxaudioenc: update local port_def after reopening the component - gst_omx_audio_enc_open will only update GstOMXAudioEnc->port->port_def. - Note that the component is reopen only if the flag - GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set. - https://bugzilla.gnome.org/show_bug.cgi?id=782418 - -2017-07-05 10:48:52 +0100 Julien Isorce - - * omx/gstomxvideoenc.c: - omxvideoenc: update local port_def after reopening the component - gst_omx_video_enc_open will only update GstOMXVideoEnc->port->port_def. - Note that the component is reopen only if the flag - GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set. - https://bugzilla.gnome.org/show_bug.cgi?id=782418 - -2017-05-10 12:38:39 +0900 Sejun Park - - * omx/gstomxvideodec.c: - omxvideodec: update local port_def after reopening the component - gst_omx_video_dec_open will only update GstOMXVideoDec->port->port_def. - Note that the component is reopen only if the flag - GST_OMX_HACK_NO_COMPONENT_RECONFIGURE is set. - https://bugzilla.gnome.org/show_bug.cgi?id=782418 - -2017-07-03 16:33:06 +0200 Guillaume Desmottes - - * omx/gstomxvideodec.c: - omxvideodec: increase the minimum number of allocated buffers - Ensure that enough buffers are allocated by adding up component's own - minimal plus the number of buffers requested by downstream. - This should prevent buffers starvation problem if downstream elements - are holding some of the buffers they required. - Also simplify the check on the maximum on buffers. What we actually care - about is to make sure the pool can hold the minimum of required buffers. - https://bugzilla.gnome.org/show_bug.cgi?id=784479 - -2017-07-03 10:54:50 +0200 Guillaume Desmottes - - * omx/gstomxh264enc.c: - omxh264enc: raise a warning if AVCIntraPeriod is not supported - Some platforms may not implement OMX_IndexConfigVideoAVCIntraPeriod and - use OMX_IndexParamVideoAvc instead to configure the GOP pattern. - So raise a warning instead of an error if this API is not implemented. - https://bugzilla.gnome.org/show_bug.cgi?id=784379 - -2017-06-29 14:16:19 +0200 Guillaume Desmottes - - * omx/gstomxh264enc.c: - * omx/gstomxh264enc.h: - omxh264enc: add 'b-frames' property - Add a property to control the number of B-frames produced by the - encoder using the OMX_VIDEO_PARAM_AVCTYPE OMX API. - https://bugzilla.gnome.org/show_bug.cgi?id=784379 - -2017-06-30 14:18:35 +0200 Guillaume Desmottes - - * omx/gstomxh264enc.c: - omxh264enc: fix typo in 'set_avc_intra_period' - https://bugzilla.gnome.org/show_bug.cgi?id=784379 - -2017-05-22 11:23:33 +0200 Guillaume Desmottes - - * config/Makefile.am: - * config/meson.build: - * config/zynqultrascaleplus/Makefile.am: - * config/zynqultrascaleplus/gstomx.conf: - * config/zynqultrascaleplus/meson.build: - * configure.ac: - * meson.build: - * meson_options.txt: - add 'zynqultrascaleplus' as OMX target - Adding support for the 'Zynq UltraScale+' as a new OMX target. - See https://www.xilinx.com/products/silicon-devices/soc/zynq-ultrascale-mpsoc.html - for details about the platform. - https://bugzilla.gnome.org/show_bug.cgi?id=783097 +2011-02-08 09:02:56 +0100 Thibault Saunier -2017-05-21 15:23:09 +0100 Julien Isorce + * tests/check/ges/effects.c: + tests: use the AgingTv as testing effects instead of identity + Lets us try the new property handling implementation in TrackObject - * config/bellagio/gstomx.conf: - config: add OMX.mesa.video_decoder.{avc,mpeg2} for Bellagio config - Install libomxil-bellagio0 and make sure mesa has been built with - --enable-omx. Check there is /usr/lib/libomxil-bellagio0/libomx_mesa.so - then run omxregister-bellagio to regenerate $XDG_DATA_HOME/.omxregister - Then omxh264dec and omxmpeg2dec should load. - https://bugzilla.gnome.org/show_bug.cgi?id=782926 +2011-02-08 08:57:11 +0100 Thibault Saunier -2017-05-18 13:50:56 +0100 Julien Isorce + * ges/ges-track-effect.c: + GESTrackEffect: add the get_props_hastable virtual method + Implements this virtual method for bin described effects. - * configure.ac: - configure.ac: move omx features check after target selection - Does not change anything, except this will be useful for future commits. - Indeed some targets provide a .pc file where to look for the omx headers. - https://bugzilla.gnome.org/show_bug.cgi?id=782800 +2011-02-07 17:06:01 +0100 Thibault Saunier -2017-06-29 16:48:07 +0200 Guillaume Desmottes + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: add an hashtable linking childs properityName -> GstElement + We also add a Virtual method that should be implementented in subclasses to generate the new GHasTable - * omx/gstomxh264dec.c: - omxh264dec: remove 'parsed=true' from sink pad - The decoder only requires to receive one frame per buffer which is - already enforced with 'alignment=au'. There is no need to require to - have a parser upstream. - Allow to run "encode ! decode" pipeline without having a parser. - https://bugzilla.gnome.org/show_bug.cgi?id=784344 +2011-02-04 11:44:19 +0100 Thibault Saunier -2017-06-16 13:28:33 +0200 Guillaume Desmottes + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * tests/check/ges/effects.c: + GESTimelineObject: add a ges_timeline_object_set_top_effect_priority method + Lets the user have a minimum of control over effects priorities - * omx/gstomxh264enc.c: - omxh264enc: set profile/level using OMX_VIDEO_PARAM_AVCTYPE as well - The OMX specification defines two API to set the AVC profile and level: - using OMX_VIDEO_PARAM_PROFILELEVELTYPE and OMX_VIDEO_PARAM_AVCTYPE. - We were already supporting the former but not the latter. We are now - setting both so implementation don't have to rely on a specific one. - https://bugzilla.gnome.org/show_bug.cgi?id=783862 +2011-02-04 11:26:11 +0100 Thibault Saunier -2017-06-16 13:19:33 +0200 Guillaume Desmottes + * ges/ges-timeline-object.c: + GESTimelineObject: Do not rely on the fact that the trackobject list is sorted - * omx/gstomxh264enc.c: - omxh264enc: factor out update_param_profile_level() - https://bugzilla.gnome.org/show_bug.cgi?id=783862 +2011-02-03 16:03:10 +0100 Thibault Saunier -2017-06-16 12:53:15 +0200 Guillaume Desmottes + * tests/check/ges/effects.c: + test: Better priorities height setting testing - * omx/gstomxh264enc.c: - omxh264enc: factor out string to profile/level enum conversion - https://bugzilla.gnome.org/show_bug.cgi?id=783862 +2011-02-03 15:40:05 +0100 Thibault Saunier -2017-06-28 15:06:10 +0200 Guillaume Desmottes + * ges/ges-timeline-object.c: + GESTimelineObject: Update TrackObject priorities handling + make use of the new TrackObject getters - * omx/gstomxh264enc.c: - omxh264enc: use OMX_IndexConfigBrcmVideoIntraPeriod on pi - The OMX_VIDEO_CONFIG_AVCINTRAPERIOD.nPFrames setting isn't of any use on - the raspbery pi. Instead it uses a custom extension to define the I - frame period. - https://bugzilla.gnome.org/show_bug.cgi?id=783829 +2011-02-03 15:30:30 +0100 Thibault Saunier -2017-06-28 15:03:52 +0200 Guillaume Desmottes + * ges/ges-timeline-object.c: + GESTimelineObject: make debugging symbols more usefull - * omx/gstomxh264enc.c: - omxh264enc: factor out set_avc_intra_perdiod() - https://bugzilla.gnome.org/show_bug.cgi?id=783829 +2011-02-03 15:11:54 +0100 Thibault Saunier -2017-06-02 12:48:57 +0200 Guillaume Desmottes + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackEffect: add getters for the: start, inpoint, duration, priority, active properties + docs: add new symbols - * meson.build: - meson: define HAVE_VIDEO_EXT if OMX_VideoExt.h is present - Meson build wasn't defining the HAVE_VIDEO_EXT like configure.ac does. - https://bugzilla.gnome.org/show_bug.cgi?id=783346 - -2017-06-11 12:32:01 +0000 Graham Leggett - - * omx/gstomxvideoenc.c: - omxvideoenc: Improve debug output when setting codec state due to new codec_data fails - https://bugzilla.gnome.org/show_bug.cgi?id=783657 - -2017-05-20 14:49:20 +0100 Julien Isorce - - * omx/gstomx.c: - omx: allow 0 feature - Previously the omx plugin was blacklisted if GST_OMX_CONFIG_DIR - points to an invalid path or if the gstomx.conf contains 0 valid - component. - Problem is that once the plugin is blacklisted, a rescan is not - triggered upon changes of the env var or the gstomx.conf file - despite being setup with gst_plugin_add_dependency. - This also makes it more consistent with other plugins that auto - generate features. For example gst-{ffmeg,libav}, gstreamer-vaapi, - v4l2 video dec. - To clarify the diff, the plugin_init func will return TRUE even if - g_key_file_get_groups returns 0 element and even if - g_key_file_load_from_dirs fails. - https://bugzilla.gnome.org/show_bug.cgi?id=782867 - -2017-04-26 22:52:17 +0530 Gurkirpal Singh - - * config/bellagio/gstomx.conf: - config: add OMX.st.audio_decoder.mp3.mad for Bellagio config - MP3 Software decoder (libmad based) but useful for testing - and to compare with other targets. - GST_OMX_CONFIG_DIR=$HOME/gst/master/gst-omx/config/bellagio/ \ - gst-launch-1.0 filesrc location=mpthreetest.mp3 ! id3demux ! \ - mpegaudioparse ! omxmp3dec ! audioconvert ! pulsesink - Didn't add 'local' in core-name path compared to other components - in that same gstomx.conf file because OMX.st.audio_decoder.mp3.mad - comes with the Ubuntu package 'libomxil-bellagio0-components-mad'. - All other components listed in this gstomx.conf for Bellagio, are - not provided by any Ubuntu packages. It could explain the 'local', - i.e. requiring to build them from source. - dpkg -L libomxil-bellagio0 - /usr/lib/libomxil-bellagio.so.0 - https://bugzilla.gnome.org/show_bug.cgi?id=781786 - Signed-off-by: Gurkirpal Singh - Signed-off-by: Julien Isorce - -2017-05-16 14:39:04 -0400 Nicolas Dufresne +2011-02-01 21:22:04 +0100 Thibault Saunier - * configure.ac: - Remove plugin specific static build option - Static and dynamic plugins now have the same interface. The standard - --enable-static/--enable-shared toggle are sufficient. + * ges/ges-timeline-effect.c: + * tests/check/ges/effects.c: + TimelineEffect: implement the create_track_object vmethod + tests: test the new vmethod -2017-05-10 12:10:10 +0900 Sejun Park +2011-02-01 21:14:29 +0100 Thibault Saunier - * omx/gstomxvideodec.c: - omxvideodec: Removed unreachable code - https://bugzilla.gnome.org/show_bug.cgi?id=782416 + * ges/ges-timeline-object.c: + TimelineObject: take a private update_height method out of priority_update_cb -2017-05-09 16:26:44 +0200 Guillaume Desmottes +2011-02-01 18:47:09 +0100 Thibault Saunier - * omx/meson.build: - meson: add dep on GModule - libgstomx uses the GModule API and so needs it in its dependencies list. - https://bugzilla.gnome.org/show_bug.cgi?id=782387 + * ges/ges-timeline-effect.c: + * ges/ges-timeline-effect.h: + TimelineEffect: create 2 properties for bin_descrption, one for the audio track, another for the video one + This is more for testing purposes since in the long run we should use Materials -2017-05-09 13:27:28 +0000 Tim-Philipp Müller +2011-02-01 18:02:23 +0100 Thibault Saunier - * meson.build: - meson: fix config.h generation - "No such input file config.h.meson", but it's not needed anyway. - https://bugzilla.gnome.org/show_bug.cgi?id=782382 + * tests/check/ges/effects.c: + test: check the height of a TimelineObject when adding effects to it -2017-05-04 18:59:33 +0300 Sebastian Dröge +2011-01-31 13:28:44 +0100 Thibault Saunier - * configure.ac: - * meson.build: - Back to development + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-effect.c: + * ges/ges-timeline-effect.h: + * ges/ges-types.h: + * ges/ges.h: + TimelineEffect: Add the basis for GESTimelineEffect implementation -=== release 1.12.0 === +2011-01-31 13:26:50 +0100 Thibault Saunier -2017-05-04 15:48:56 +0300 Sebastian Dröge + * docs/libs/ges-docs.sgml: + * ges/ges-track-effect.c: + TrackEffect: Fixe the documentation - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.12.0 +2011-01-31 11:53:38 +0100 Thibault Saunier -=== release 1.11.91 === + * ges/ges-timeline-object.c: + TimelineObject: fixe new API documentation -2017-04-27 17:53:50 +0300 Sebastian Dröge +2011-01-31 11:41:37 +0100 Thibault Saunier - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.11.91 + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * tests/check/ges/effects.c: + 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 -2017-04-17 17:02:48 +0200 Guillaume Desmottes +2011-01-31 11:33:56 +0100 Thibault Saunier - * omx/gstomxvideoenc.c: - videoenc: use GST_ROUND_UP_N() macro - Makes the code much easier to read and understand. - https://bugzilla.gnome.org/show_bug.cgi?id=781409 + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + TimelineObject: remove trailling spaces -2017-04-24 20:30:21 +0100 Tim-Philipp Müller +2011-01-31 11:32:14 +0100 Thibault Saunier - * common: - Automatic update of common submodule - From 60aeef6 to 48a5d85 + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * tests/check/ges/effects.c: + TimelineObject: add ges_timeline_object_get_effects API + tests: Test the new TimelineObject API + docs: add the corresponding fonction -2017-04-10 23:51:00 +0100 Tim-Philipp Müller +2011-01-31 11:22:31 +0100 Thibault Saunier - * autogen.sh: - * common: - Automatic update of common submodule - From 39ac2f5 to 60aeef6 + * ges/ges-timeline-object.c: + TimelineObject: adapt the add_track_object so we can add effects to it. + We keep the list of contained TrackObject-s order by priority -=== release 1.11.90 === +2011-01-31 11:15:33 +0100 Thibault Saunier -2017-04-07 16:36:45 +0300 Sebastian Dröge + * ges/ges-timeline-object.c: + TimelineObject: add a function to sort list of applied effects - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * meson.build: - Release 1.11.90 +2011-01-31 11:10:35 +0100 Thibault Saunier -2017-04-07 14:27:23 +0300 Sebastian Dröge + * ges/ges-timeline-object.c: + TimelineObject: add a property to count the number of effects applied on it - * omx/gstomxvideoenc.c: - omxvideoenc: Fix compiler warning - gstomxvideoenc.c: In function ‘gst_omx_video_enc_fill_buffer’: - CC libgstomx_la-gstomxaacdec.lo - gstomxvideoenc.c:1316:27: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 8 has type ‘OMX_U32 {aka long unsigned int}’ [-Wformat=] - GST_LOG_OBJECT (self, "Matched strides - direct copy %u bytes", - ^ - outbuf->omx_buf->nFilledLen); - ~~~~~~~~~~~~~~~~~~ +2011-02-01 21:23:22 +0100 Thibault Saunier -2017-03-22 17:18:09 +0530 Gurkirpal Singh + * ges/ges-track-effect.h: + TrackEffect: add padding to give a margin for API expension without breaking ABI - * meson.build: - meson: fix logic to set HAVE_THEORA - https://bugzilla.gnome.org/show_bug.cgi?id=780392 +2011-01-31 11:43:04 +0100 Thibault Saunier -2017-03-14 03:02:06 +1100 Jan Schmidt + * ges/ges-track-effect.c: + TrackEffect: change the create_element function arguments to fit what is expected - * omx/gstomxvideoenc.c: - omxvideoenc: Add an unimplemented mapping for RGBA formats - Add some pixel formats mappings for 2 RGBA formats. Not yet - implemented in the buffer input code though, so no effect for now. +2011-01-31 11:09:47 +0100 Thibault Saunier -2017-03-14 03:00:49 +1100 Jan Schmidt + * docs/design/effects.txt: + design: spelling correction in the effect design document - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideoenc.c: - omxvideoenc: Add GST_OMX_HACK_HEIGHT_MULTIPLE_16 for Rpi - The Raspberry Pi encoder produces corrupt output unless - the input height is a multiple of 16. Add a hack that adds - zero padding when needed. +2011-01-31 11:05:10 +0100 Thibault Saunier -2017-03-14 02:42:15 +1100 Jan Schmidt + * docs/design/effects.txt: + design: add a description of the ges_timeline_object_get_top_effect_postion method - * omx/gstomxvideoenc.c: - omxvideoenc: Add a mapping for OMX_COLOR_FormatYUV420PackedSemiPlanar - The RaspberryPi +2011-01-25 19:53:36 +0100 Thibault Saunier -2017-03-14 02:40:24 +1100 Jan Schmidt + * docs/design/effects.txt: + Specs: Add a description of the GESEffect class - * omx/gstomxvideoenc.c: - omxvideoenc: Filter out unimplemented formats - Don't announce pixel formats in the caps if they've not been - implemented. +2011-01-21 11:11:12 +0100 Thibault Saunier -2017-03-14 02:34:36 +1100 Jan Schmidt + * ges/ges-track-effect.h: + TrackEffect: Change copyright - * omx/gstomxvideodec.c: - omxvideodec: demote ERROR message - There's no need to warn about failing to negotiate EGL output - - that can be perfectly normal. +2011-01-21 10:43:09 +0100 Thibault Saunier -2017-02-24 16:00:29 +0200 Sebastian Dröge + * docs/design/effects.txt: + design: fixe effects API after Edward review - * meson.build: - meson: Update version +2011-01-18 20:03:42 +0100 Edward Hervey -2017-02-24 15:38:17 +0200 Sebastian Dröge + * docs/design/effects.txt: + pending fixups/comments - * configure.ac: - Back to development +2011-01-18 20:05:54 +0100 Thibault Saunier -=== release 1.11.2 === + * docs/libs/ges-sections.txt: + * ges/ges-track-effect.c: + * ges/ges-track-effect.h: + * ges/ges.h: + * tests/check/ges/effects.c: + 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 -2017-02-24 15:10:17 +0200 Sebastian Dröge +2011-01-18 20:03:51 +0100 Thibault Saunier - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - Release 1.11.2 + * docs/design/effects.txt: + design: move GESTimlineSource new API to GESTimelineObject -2017-02-15 18:22:53 +0000 Tim-Philipp Müller +2011-01-12 11:47:30 +0100 Thibault Saunier - * Makefile.am: - meson: dist meson build files - Ship meson build files in tarballs, so people who use tarballs - in their builds can start playing with meson already. + * docs/design/effects.txt: + design: Effect API draft V2 -2017-01-13 16:23:12 +0000 Vincent Penquerc'h +2010-12-09 16:01:02 +0100 Thibault Saunier - * omx/gstomxaacenc.c: - omxaacenc: let encoder know about incoming rate/channels - https://bugzilla.gnome.org/show_bug.cgi?id=777223 + * docs/design/effects.txt: + Specs: review effect API Draft -2017-01-18 02:43:44 +1100 Matthew Waters +2010-12-07 13:47:47 +0100 Thibault Saunier - * config/bellagio/meson.build: - * config/meson.build: - * config/rpi/meson.build: - * examples/egl/meson.build: - * examples/meson.build: - * hooks/pre-commit.hook: - * meson.build: - * meson_options.txt: - * omx/meson.build: - build: add meson build definition - Currently only been tested on the RPi within gst-build. + * docs/design/effects.txt: + Specs: Add effect API Draft -2017-01-18 15:21:35 +1100 Matthew Waters +2010-12-04 12:22:54 +0100 Thibault Saunier - * examples/egl/testegl.c: - examples/testegl: update for libgstgl changes + * docs/design/effects.txt: + Specs: Review design of effect implementation proposal -2017-01-12 16:33:09 +0200 Sebastian Dröge +2010-11-15 23:32:23 +0100 Thibault Saunier - * configure.ac: - Back to development + * docs/libs/ges-sections.txt: + * ges/ges-track-effect.c: + * ges/ges-track-effect.h: + * tests/check/ges/effects.c: + GESTrackEffect: add private struct -=== release 1.11.1 === +2010-11-08 21:53:26 +0100 Thibault Saunier -2017-01-12 16:26:55 +0200 Sebastian Dröge + * docs/design/effects.txt: + Specs: proposal for effects implementation - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - Release 1.11.1 +2010-11-05 12:12:24 +0100 Thibault Saunier -2017-01-10 15:29:08 +0000 Vincent Penquerc'h + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-track-effect.c: + * ges/ges-track-effect.h: + * ges/ges-types.h: + * tests/check/Makefile.am: + * tests/check/ges/effects.c: + GESTrackEffect: implementation of this new class + +2011-01-17 16:46:15 +0100 Edward Hervey - * omx/gstomxaudioenc.c: - omxaudioenc: set base class format instead of just source pad caps + * tools/ges-launch.c: + ges-launch-0.10: Cleanup for error cases and print statements + * Use g_error for fatal errors + * Don't exit the application from the middle of nowhere + * Properly cleanup even in error cases + * Don't print out things which aren't needed -2016-12-18 19:46:55 +0000 Graham Leggett +2011-04-24 14:07:33 +0100 Tim-Philipp Müller - * omx/gstomxaudiodec.c: - * omx/gstomxvideodec.c: - omx*dec: Flush before we stop the srcpad loop - Flushing could otherwise hang if output port queue of pending buffers was empty - https://bugzilla.gnome.org/show_bug.cgi?id=774654 + * common: + Automatic update of common submodule + From c3cafe1 to 46dfcea -2016-12-14 13:29:08 -0800 Reynaldo H. Verdejo Pinochet +2011-01-27 17:47:25 +0100 Alessandro Decina - * omx/gstomx.c: - Fix broken build due to syntax error - Problem was introduced by 8716c23e2b0553db2982eb84c437f493c974385e + * Android.mk: + * android/ges-launch.mk: + * android/ges.mk: + * ges/Makefile.am: + * tools/Makefile.am: + android: make it ready for androgenizer + Remove the android/ top dir + Fixe the Makefile.am to be androgenized + To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files. + Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git -2016-12-12 11:12:48 +0000 Graham Leggett +2011-04-04 16:00:37 +0300 Stefan Kost - * omx/gstomx.c: - Prevent early EOS by resetting eos flag once GST_OMX_ACQUIRE_BUFFER_EOS is triggered - https://bugzilla.gnome.org/show_bug.cgi?id=774600 + * common: + Automatic update of common submodule + From 1ccbe09 to c3cafe1 -2016-12-12 11:09:15 +0000 Graham Leggett +2011-03-25 22:39:04 +0100 Sebastian Dröge - * omx/gstomx.c: - Add clear debug logging on all the paths out of gst_omx_port_acquire_buffer() - https://bugzilla.gnome.org/show_bug.cgi?id=774600 + * common: + Automatic update of common submodule + From 193b717 to 1ccbe09 -2016-12-01 18:23:50 +0100 George Kiagiadakis +2011-03-25 14:58:45 +0200 Stefan Kost - * config/rpi/gstomx.conf: - * omx/gstomx.c: - * omx/gstomx.h: - Add a signals-premature-eos hack for egl_render - egl_render seems to have a bug and signals EOS before it has finished - pushing out all data; this hack simply makes acquire_buffer() wait - a bit more before signalling EOS, in case egl_render decides to spit - out some more data. - https://bugzilla.gnome.org/show_bug.cgi?id=741856 + * common: + Automatic update of common submodule + From b77e2bf to 193b717 -2016-12-11 19:52:37 +0000 Graham Leggett +2011-03-25 10:01:45 +0100 Sebastian Dröge - * omx/gstomxvideo.c: - Add support for OMX_COLOR_FormatYUV420PackedSemiPlanar and OMX_COLOR_Format24bitBGR888 - https://bugzilla.gnome.org/show_bug.cgi?id=775959 + * Makefile.am: + build: Include lcov.mak to allow tests coverage report generation -2016-12-03 08:20:46 +0100 Edward Hervey +2011-03-25 09:35:38 +0100 Sebastian Dröge * common: Automatic update of common submodule - From ac2f647 to 39ac2f5 + From d8814b6 to b77e2bf -2016-11-26 11:27:58 +0000 Tim-Philipp Müller +2011-03-25 09:12:04 +0100 Sebastian Dröge - * .gitmodules: - common: use https protocol for common submodule - https://bugzilla.gnome.org/show_bug.cgi?id=775110 + * common: + Automatic update of common submodule + From 6aaa286 to d8814b6 -2016-11-25 23:56:06 +0200 Sebastian Dröge +2011-03-24 18:51:48 +0200 Stefan Kost - * omx/gstomx.c: - omx: Fix compiler warning with latest clang - gstomx.c:1376:42: error: implicit conversion from enumeration type 'GstOMXAcquireBufferReturn' to different enumeration type 'OMX_ERRORTYPE' - (aka 'enum OMX_ERRORTYPE') [-Werror,-Wenum-conversion] - g_return_val_if_fail (!port->tunneled, GST_OMX_ACQUIRE_BUFFER_ERROR); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - https://bugzilla.gnome.org/show_bug.cgi?id=775112 + * common: + Automatic update of common submodule + From 6aec6b9 to 6aaa286 -2016-11-17 19:56:35 +1100 Matthew Waters +2011-03-16 19:58:54 -0400 Thibault Saunier - * omx/gstomxvideodec.c: - videodecoder: remove use of EGLImage orientation - New code should use GstVideoTransformationMeta - (The defaults do the right thing here though). + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: the _init_ method shouldn't return before the end + Fixes #644939 -=== release 1.11.0 === +2011-03-18 19:34:57 +0100 Luis de Bethencourt -2016-11-01 18:53:25 +0200 Sebastian Dröge + * autogen.sh: + autogen: wingo signed comment - * configure.ac: - Back to development +2011-03-15 14:05:07 +0100 Edward Hervey -=== release 1.10.0 === + * tests/examples/transition.c: + examples: Make sure we don't end up using NULL values -2016-11-01 18:20:48 +0200 Sebastian Dröge +2011-03-15 14:04:49 +0100 Edward Hervey - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - Release 1.10.0 + * tests/examples/overlays.c: + * tests/examples/text_properties.c: + examples: Remove unused code -=== release 1.9.90 === +2011-03-15 14:02:14 +0100 Edward Hervey -2016-09-30 13:04:51 +0300 Sebastian Dröge + * tools/ges-launch.c: + ges-launch: Handle return value of regcomp() - * ChangeLog: - * NEWS: - * RELEASE: - * common: - * configure.ac: - * gst-omx.doap: - Release 1.9.90 +2011-03-15 14:01:41 +0100 Edward Hervey -2016-09-14 11:33:13 +0200 Sebastian Dröge + * ges/ges-keyfile-formatter.c: + KeyFileFormatter: Handle return value of gst_value_deserialize() - * configure.ac: - configure: Depend on gstreamer 1.9.2.1 +2011-03-01 17:38:52 +0100 Alessandro Decina -2016-09-12 14:09:46 +0200 Sebastian Dröge + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + ges: fix compiler warnings - * configure.ac: - * omx/gstomx.c: - omx: Also search for gstomx.conf in the autoconf --sysconfdir - https://bugzilla.gnome.org/show_bug.cgi?id=770743 +2011-02-16 15:21:48 +0000 Vincent Penquerc'h -2016-09-10 20:52:10 +1000 Jan Schmidt + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + ges: make uri strings const + +2011-02-28 18:35:14 +0100 Mark Nauwelaerts - * autogen.sh: * common: Automatic update of common submodule - From b18d820 to f980fd9 + From 1de7f6a to 6aec6b9 -2016-09-10 09:58:16 +1000 Jan Schmidt +2011-02-14 12:57:00 +0200 Stefan Kost - * autogen.sh: * common: Automatic update of common submodule - From ac2f647 to b18d820 + From f94d739 to 1de7f6a -2016-09-01 12:36:09 +0300 Sebastian Dröge +2011-02-09 11:21:02 +0100 Edward Hervey - * configure.ac: - Back to development + * ges/ges-timeline-object.c: + TimelineObject: Store GParamSpec for height and layer -=== release 1.9.2 === +2011-02-07 12:19:18 +0000 Vincent Penquerc'h -2016-09-01 12:35:58 +0300 Sebastian Dröge + * ges/ges.c: + * ges/ges.h: + * tools/ges-launch.c: + ges: Check that the gnonlin elements are present at initialization time + This avoids hanging with no obvious cause later when they're not. + https://bugzilla.gnome.org/show_bug.cgi?id=641246 - * ChangeLog: - * NEWS: - * RELEASE: - * common: - * configure.ac: - * gst-omx.doap: - Release 1.9.2 +2011-01-31 19:01:46 +0000 Tim-Philipp Müller -2016-07-11 21:15:48 +0200 Stefan Sauer + * tools/.gitignore: + tools: ignore unversioned ges-launch as well - * common: - Automatic update of common submodule - From ac2f647 to f49c55e +2011-01-31 19:01:24 +0000 Tim-Philipp Müller + + * tools/ges-launch.c: + ges-launch: fix printf format issue + +2011-01-31 19:00:49 +0000 Tim-Philipp Müller + + * ges/ges-keyfile-formatter.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-layer.c: + ges: fix a couple of printf format warnings + +2011-01-27 17:46:19 +0100 Sebastian Dröge + + * tests/examples/concatenate.c: + examples: Fix uninitialized variable compiler warning with gcc 4.6 -2016-07-06 13:51:24 +0300 Sebastian Dröge +2011-01-27 17:43:47 +0100 Alessandro Decina + + * ges/ges-keyfile-formatter.c: + ges: fix compiler warnings + +2011-01-26 23:50:00 +0200 Stefan Kost + + * tools/ges-launch.c: + launch: fix typo in help output + +2011-01-25 11:21:06 +0100 Edward Hervey * configure.ac: - Back to development + configure.ac: And back to development we go -=== release 1.9.1 === +=== release 0.10.1 === -2016-07-06 13:48:45 +0300 Sebastian Dröge +2011-01-20 22:04:06 +0100 Edward Hervey * ChangeLog: + * Makefile.am: * NEWS: * RELEASE: - * common: * configure.ac: - * gst-omx.doap: - Release 1.9.1 - -2016-06-29 16:37:43 +0900 Kazunori Kobayashi + * gst-editing-services.doap: + Release 0.10.1 - * omx/gstomxvideodec.c: - omxvideodec: Use GST_VIDEO_FRAME_PLANE_STRIDE() to get output buffer's stride - GST_VIDEO_FRAME_PLANE_STRIDE() should be used to get the actual buffer stride, - as reported in the buffers's GstVideoMeta, when copying data to that buffer. - https://bugzilla.gnome.org/show_bug.cgi?id=768173 +2011-01-18 19:06:45 +0100 Edward Hervey -2016-06-21 11:48:40 -0400 Nicolas Dufresne - - * common: - Automatic update of common submodule - From ac2f647 to f363b32 + * docs/random/design: + random: Update goals/features document + So that everybody can know what features we want. -2016-06-21 11:43:13 +0200 Aurélien Zanelli +2011-01-17 14:01:28 +0100 Edward Hervey - * omx/gstomxaudioenc.c: - omxaudioenc: implement GstPreset interface - To allow user to use GstPreset to quickly save and load a set of - parameters. - https://bugzilla.gnome.org/show_bug.cgi?id=767907 + * configure.ac: + configure.ac: 0.10.0.4 pre-release -2016-06-21 11:41:15 +0200 Aurélien Zanelli +2011-01-17 13:59:44 +0100 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: implement GstPreset interface - To allow user to use GstPreset to quickly save and load a set of - parameters. - https://bugzilla.gnome.org/show_bug.cgi?id=767907 + * tools/ges-launch.c: + ges-launch: Set restriction on video profile if present -2016-06-17 12:06:48 +0300 Sebastian Dröge +2011-01-12 17:52:10 +0100 Edward Hervey - * configure.ac: - * omx/gstomx.h: - * omx/gstomxaudiodec.c: - * omx/gstomxaudioenc.c: - * omx/gstomxvideo.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: #define OMX_SKIP64BIT on the RPi as required by their API - Also add generic support for OMX_SKIP64BIT to gst-omx, in case other - implementations also #define that for whatever reason. - https://bugzilla.gnome.org/show_bug.cgi?id=766475 + * tools/ges-launch.c: + ges-launch: Remove dead code and make functions/variables static -2016-06-17 10:59:45 +0300 Sebastian Dröge +2011-01-12 17:45:23 +0100 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Implement ::drain() virtual method - https://bugzilla.gnome.org/show_bug.cgi?id=767641 + * tools/ges-launch.c: + ges-launch: Fix and cleanup enum listing + It wasn't displaying anything lately. -2016-06-04 19:31:45 +0100 Tim-Philipp Müller +2011-01-11 20:28:25 +0100 Edward Hervey * configure.ac: - configure: remove AG_GST_PARSE_SUBSYSTEM_DISABLES - This would check which subsystems are disabled in core by grepping - gstconfig.h. Only problem is: gstconfig.h has moved into libdir now - so we've been checking a non-existent file for a while now. The - macro would just sets GST_DISABLE_* for use in configure.ac and - Makefile.am, but we don't use that anywhere so just get rid of it - (the one place where we use GST_DISABLE_GST_DEBUG is in a .c file - which gets the define from the gstconfig.h include). - https://bugzilla.gnome.org/show_bug.cgi?id=750056 + 0.10.0.3 pre-release -2016-01-20 03:10:38 +0900 Gwang Yoon Hwang +2011-01-11 16:57:45 +0100 Sebastian Dröge - * examples/egl/testegl.c: - * omx/gstomxvideodec.c: - omxvideodec : Use gstglmemoryegl for the RPi - Modified to use gstglmemoryegl to avoid texture creation/copy operations - at the glupload. - [Matthew Waters]: gst-indent the sources and port testegl to GstGLMemoryEGL - https://bugzilla.gnome.org/show_bug.cgi?id=760918 - -2016-04-14 10:04:32 +0100 Julien Isorce - - * common: - Automatic update of common submodule - From 6f2d209 to ac2f647 + * tools/.gitignore: + * tools/Makefile.am: + ges-launch: Add GStreamer major/minor version to the executable filename + https://bugzilla.gnome.org/show_bug.cgi?id=639222 -2016-02-26 12:42:41 +0200 Sebastian Dröge +2011-01-11 18:14:41 +0100 Edward Hervey - * common: - Automatic update of common submodule - From b64f03f to 6f2d209 + * ges/ges-formatter.c: + * ges/ges-keyfile-formatter.c: + ges: Fix more ges_timeline_get_layers() usage memory leaks -2016-02-17 20:51:03 +1100 Matthew Waters +2011-01-11 17:19:54 +0100 Sebastian Dröge - * examples/egl/testegl.c: - examples: update egl example for gstgl API changes - https://bugzilla.gnome.org/show_bug.cgi?id=762053 - https://bugzilla.gnome.org/show_bug.cgi?id=753917 + * ges/Makefile.am: + * ges/ges-internal.h: + * ges/ges.c: + ges: Don't install ges-internal.h and hide the GES debug category symbols + Fixes bug #639219. -2016-02-05 18:11:06 -0300 Thiago Santos +2011-01-11 17:55:25 +0100 Edward Hervey - * autogen.sh: - * common: - Automatic update of common submodule - From 86e4663 to b64f03f + * ges/ges-utils.c: + ges-utils: minor doc update -2015-12-21 00:43:49 +0100 Koop Mast +2011-01-11 16:32:56 +0100 Sebastian Dröge - * configure.ac: - configure: Make -Bsymbolic check work with clang. - Update the -Bsymbolic check with the version glib has. This version - works with clang. - https://bugzilla.gnome.org/show_bug.cgi?id=759713 + * ges/Makefile.am: + ges: Only export symbols starting with ges_ or GES_ + https://bugzilla.gnome.org/show_bug.cgi?id=639218 -2015-12-07 09:11:32 -0500 Nicolas Dufresne +2011-01-11 16:35:05 +0100 Sebastian Dröge - * autogen.sh: - * common: - Automatic update of common submodule - From b319909 to 86e4663 + * ges/ges-timeline.c: + * ges/ges-track-object.c: + ges: Mark some private symbols static + https://bugzilla.gnome.org/show_bug.cgi?id=639218 -2015-11-18 13:00:28 +0000 Enrique Ocaña González +2011-01-11 15:32:51 +0100 Sebastian Dröge - * omx/gstomx.c: - Remember the last_error after a failed set state call to avoid blocking the next get state call - gst_omx_video_dec_flush() blocks forever in - http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomxvideodec.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n2110 - when the previous call to gst_omx_component_set_state() fails in - http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n827. - To mitigate that, I set "last_error" to true, so the code in - http://cgit.freedesktop.org/gstreamer/gst-omx/tree/omx/gstomx.c?id=9adf0ff82903cad5331e40975ae91ed5d11bc102#n862 - exits early and doesn't block. - https://bugzilla.gnome.org/show_bug.cgi?id=758274 + * configure.ac: + configure: Require G-I 0.9.6 for the --identifier-prefix parameter -2015-11-18 12:59:59 +0000 Enrique Ocaña González +2011-01-11 15:29:01 +0100 Sebastian Dröge - * omx/gstomxaudiodec.c: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - Properly handle drain requests while flushing - Without this commit the decoder streaming thread stops without ever attending - the drain request, leaving the decoder input thread waiting forever. - https://bugzilla.gnome.org/show_bug.cgi?id=758274 + * pkgconfig/gst-editing-services-uninstalled.pc.in: + * pkgconfig/gst-editing-services.pc.in: + pkg-config: Require gstreamer-controller and gstreamer-pbutils + Their headers are included by public GES headers -2015-11-10 10:42:35 +0100 Nicolas Huet +2011-01-11 15:26:08 +0100 Sebastian Dröge - * omx/gstomx.c: - omx: fix hacks leak on class init + * configure.ac: + configure: Add parameter to select GTK+ version to use and default to 2.0 -2015-10-21 14:37:13 +0100 Tim-Philipp Müller +2011-01-11 15:52:57 +0200 Stefan Kost * common: Automatic update of common submodule - From b99800a to b319909 + From e572c87 to f94d739 -2015-10-21 14:28:41 +0300 Sebastian Dröge +2011-01-10 16:40:02 +0000 Tim-Philipp Müller * common: Automatic update of common submodule - From 9aed1d7 to b99800a - -2015-09-01 16:08:11 -0300 Thiago Santos - - * omx/gstomxaacdec.c: - omxaacdec: Do not accept unknown layouts - It was defaulting to RAW when an unknown layout was received but - the caps template would actually forbid that on the caps query - or accept-caps anyway. + From 8b72fde to e572c87 -2015-09-01 08:59:54 -0300 Thiago Santos +2011-01-10 16:51:34 +0100 Edward Hervey - * omx/gstomxaudiodec.c: - omxaudiodec: use default pad accept-caps handling - Instead of the audiodecoder one. The OMX audioo decoders have their - valid input in the template pad, so just check against that to - avoid doing a query downstream. - -2015-08-28 12:57:33 -0300 Thiago Santos - - * omx/gstomxvideodec.c: - omxvideodec: use default pad accept-caps handling - Instead of the videodecoder one. The OMX video decoders have their - valid input in the template pad, so just check against that to - avoid doing a query downstream. + * common: + common: Update to current master -2015-08-22 15:54:55 +0000 Graham Leggett +2011-01-10 16:50:51 +0100 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Add keyframe support for the Rpi, using OMX_IndexConfigBrcmVideoRequestIFrame - https://bugzilla.gnome.org/show_bug.cgi?id=753085 + * ges/ges-timeline-pipeline.c: + TimelinePipeline: minor doc fix -2015-08-20 17:20:50 +0900 Vineeth TM +2011-01-10 16:50:41 +0100 Edward Hervey - * examples/egl/testegl.c: - gst-omx: Fix memory leaks when context parse fails - When g_option_context_parse fails, context and error variables are not getting free'd - which results in memory leaks. Free'ing the same. - And replacing g_error_free with g_clear_error, which checks if the error being passed - is not NULL and sets the variable to NULL on free'ing. - https://bugzilla.gnome.org/show_bug.cgi?id=753865 + * docs/libs/Makefile.am: + docs: Fix image inclusion -2015-08-16 14:53:42 +0200 Philippe Normand +2011-01-10 15:49:42 +0100 Edward Hervey - * omx/gstomxh264dec.c: - omxh264dec: implement is_format_change - The omxvideodecoder class only checks some of the caps parameters but if - other fields change such as h264 profile and/or level it wouldn't trigger a - reconfiguration. - https://bugzilla.gnome.org/show_bug.cgi?id=752376 + * configure.ac: + configure.ac: 0.10.0.2 pre-release + +2011-01-10 15:24:13 +0100 Edward Hervey + + * docs/libs/Makefile.am: + docs: Fix for uploading docs -2015-07-03 00:26:48 +0200 Aurélien Zanelli +2011-01-10 14:28:35 +0100 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-keyfile-formatter.c: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-standard-transition.c: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-transition.c: + * ges/ges-track-filesource.c: + * ges/ges-track-image-source.c: + * ges/ges-track-object.c: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * ges/ges-track-title-source.c: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-transition.c: + * ges/ges-track.c: + docs: Document all the undocumented public functions + +2011-01-10 15:10:01 +0100 Edward Hervey + + * ges/ges-track-object.c: + TrackObject: Small cleanup + +2011-01-10 15:09:40 +0100 Edward Hervey + + * ges/ges-track-object.c: + TrackObject: Remove deprecated FIXME + You just need to connect to the notify signal to get updates + +2011-01-10 11:18:27 +0100 Edward Hervey + + * tests/check/ges/basic.c: + tests: Unref the GList returned by ges_timeline_get_layers... + ... in addition to the content themselves + +2011-01-10 11:13:13 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + docs: Fixup the sections for missing/renamed/removed symbols + +2011-01-10 11:12:55 +0100 Edward Hervey + + * ges/ges-track.h: + Track: Mark as private the instance private structure + +2011-01-10 11:12:38 +0100 Edward Hervey + + * ges/ges-timeline.c: + Timeline: Fix documentation of return value + +2011-01-08 16:01:31 +0100 Thibault Saunier + + * ges/ges-formatter.c: + * ges/ges-formatter.h: + GESFormatter: Add private instance and move private variables to it + +2011-01-08 15:25:22 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline.c: + * tests/examples/ges-ui.c: + TimelineFileSource: Create instance private and move private variables to it + Fixe/Add getter and setters methods for those variables + Fixup documentation + +2011-01-08 11:22:36 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-formatter.c: + * ges/ges-keyfile-formatter.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * tests/check/ges/basic.c: + * tests/check/ges/save_and_load.c: + Timeline: Add instance private and Move private variables to it + Fixe/Add getter methods to get those variables + Fixup documentation + +2011-01-07 19:36:31 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-test-source.h: + * tests/check/ges/backgroundsource.c: + * tests/examples/ges-ui.c: + TimelineTestSource: Move private variables to instance private + Fixe/Add getter and setter methods for those variables + Fixup documentation + +2011-01-07 14:37:56 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-track-text-overlay.c: + TimelineTextOverlay: Move private variables to instance private + Fixe/Add getter and setter methods for those variables + Fixup documentation + +2011-01-07 13:48:53 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * tests/examples/ges-ui.c: + TimelineTitleSource: Move private variables to instance private + Fixe/Add getter and setters methods for those variables + Fixup documentation - * omx/gstomxvideodec.c: - omxvideodec: unref allocator after getting it from allocation query - Otherwise a reference will be leaked for each allocator. It only happens - when target platform is Raspberry Pi and when we have GL support. - https://bugzilla.gnome.org/show_bug.cgi?id=751867 +2011-01-06 16:59:52 +0100 Thibault Saunier -2015-07-03 21:59:54 +0200 Stefan Sauer + * docs/libs/ges-sections.txt: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-test-source.h: + * tests/check/ges/backgroundsource.c: + TrackAudioTestSource: Move private variables to instance private + Add getter methods to get those variables + Fixup documentation - * common: - Automatic update of common submodule - From f74b2df to 9aed1d7 +2011-01-06 16:35:20 +0100 Thibault Saunier -2015-06-16 17:50:14 -0400 Nicolas Dufresne + * ges/ges-track-audio-transition.c: + * ges/ges-track-audio-transition.h: + TrackAudioTransition: : Move private variables to instance private - * common: - Automatic update of common submodule - From 6015d26 to f74b2df +2011-01-06 15:35:42 +0100 Thibault Saunier -2015-06-09 11:30:49 +0200 Edward Hervey + * docs/libs/ges-sections.txt: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * tests/check/ges/overlays.c: + * tests/check/ges/text_properties.c: + TrackTextOverlay: Move private variables to instance private + Add getter methods to get those variables + Add/Fixup documentation + +2011-01-08 01:40:18 +0000 Tim-Philipp Müller - * common: - Automatic update of common submodule - From d9a3353 to 6015d26 + * tests/check/Makefile.am: + test: make unit tests compile and work in uninstalled setup -2015-06-08 23:08:28 +0200 Stefan Sauer +2011-01-08 01:36:13 +0000 Tim-Philipp Müller - * common: - Automatic update of common submodule - From d37af32 to d9a3353 + * configure.ac: + * ges/Makefile.am: + gobject-introspection: fix g-i build for uninstalled setup + Requires gst-plugins-base git (> 0.10.31.2) to actually work. -2015-06-07 23:07:22 +0200 Stefan Sauer +2011-01-06 12:06:24 +0100 Edward Hervey - * common: - Automatic update of common submodule - From 21ba2e5 to d37af32 + * ges/ges-enums.c: + * ges/ges-timeline-standard-transition.c: + enums: Fix transition enum + Leftovers from when we were using the old name -2015-06-07 17:32:25 +0200 Stefan Sauer +2011-01-06 12:04:53 +0100 Edward Hervey - * common: - Automatic update of common submodule - From c408583 to 21ba2e5 + * docs/libs/ges-sections.txt: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * tests/check/ges/titles.c: + TrackTitleSource: Move private variables to instance private + Add getter methods to get those variables + Add/Fixup documentation -2015-06-07 17:16:43 +0200 Stefan Sauer +2011-01-06 11:30:26 +0100 Edward Hervey - * autogen.sh: - * common: - Automatic update of common submodule - From c8fb372 to c408583 + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + TimelinePipeline: Fix thumbnail method docs and arguments + The provided gchar* aren't modified -2015-05-19 18:21:40 +0300 Sebastian Dröge +2011-01-06 11:29:44 +0100 Edward Hervey - * omx/gstomxaudiodec.c: - * omx/gstomxaudiodec.h: - omxaudiodec: Add an output adapter for chunking the output into codec frames - Otherwise the base class will be confused. - See https://bugzilla.gnome.org/show_bug.cgi?id=685730 + * docs/libs/ges-sections.txt: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-test-source.h: + * tests/check/ges/backgroundsource.c: + TrackVideoTestSource: Move private data to instance private + Add a getter for the pattern + Document methods -2015-04-26 18:24:13 +0100 Tim-Philipp Müller +2011-01-06 10:55:37 +0100 Edward Hervey - * Android.mk: - * omx/Makefile.am: - Remove obsolete Android build cruft - This is not needed any longer. + * docs/libs/ges-sections.txt: + * ges/ges-timeline-standard-transition.c: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + * tests/check/ges/transition.c: + TrackVideoTransition: Move private variable to instance private + Also add/fixup methods to get/set the transition type and document them. -2015-04-22 10:40:22 +0200 Sebastian Dröge +2011-01-06 10:55:06 +0100 Edward Hervey - * INSTALL: - Remove INSTALL file - autotools automatically generate this, and when using different versions - for autogen.sh there will always be changes to a file tracked by git. + * ges/ges-timeline-pipeline.c: + TimelinePipeline: Updates for pbutils API change -2015-04-08 15:57:59 +0100 Tim-Philipp Müller +2011-01-05 11:32:29 +0100 Edward Hervey - * .gitignore: - * Makefile.am: * configure.ac: - * m4/Makefile.am: - Add m4 directory so aclocal doesn't complain in autogen.sh - Might come in handy, and these warnings seem to be - fatal in some environments. - You may need to git clean -x -d -f your tree before - git pulling/merging. - -2015-04-07 22:25:57 +0100 Tim-Philipp Müller + configure.ac: Require core git - * INSTALL: - * autogen.sh: - Update autogen.sh to latest version +2010-12-21 15:24:26 +0100 Edward Hervey -2015-04-03 18:58:17 +0100 Tim-Philipp Müller + * ges/ges-track-audio-transition.c: + GESTrackAudioTransition: Fix empty if() body - * common: - Automatic update of common submodule - From bc76a8b to c8fb372 +2010-12-20 19:09:48 +0100 Edward Hervey -2015-03-06 12:12:49 +0000 Luis de Bethencourt - - * omx/gstomxaacdec.c: - omxaudiodec: add comment explaining duplicate code path - -2015-03-06 12:09:06 +0000 Luis de Bethencourt - - * omx/gstomxaacdec.c: - Revert "omxaudiodec: remove duplicate code path" - This reverts commit a8d26ff27a8b43f589424a59294f9057641b2a46. - -2015-03-06 12:03:56 +0000 Luis de Bethencourt - - * omx/gstomx.c: - omx: handle both errors in the two steps of update_port_definition - Also consider potential errors in the _get_parameter() in the return of the - update_port_definition function. - CID #1287052 - -2015-03-06 10:57:53 +0000 Luis de Bethencourt - - * omx/gstomxaudioenc.c: - omxaudioenc: impossible if statement - ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible - for it to be anything else at the if check. Remove the if check. - CID #1287053 - -2015-03-06 10:54:43 +0000 Luis de Bethencourt - - * omx/gstomxaudiodec.c: - omxaudiodec: impossible if statement - ret is set to GST_STATE_CHANGE_SUCCESS and never touched, so it is impossible - for it to be anything else at the if check. Remove it. - CID #1287054 - -2015-03-06 10:50:30 +0000 Luis de Bethencourt - - * omx/gstomxaacdec.c: - omxaudiodec: remove duplicate code path - -2014-12-19 11:19:55 +0200 George Kiagiadakis - - * omx/gstomx.c: - omx: call handle_messages() only once in acquire_buffer() to avoid potential deadlock - There is one rare case where calling handle_messages() more than once can cause a deadlock - in the video decoder element: - - sink pad thread starts the src pad task (gst_omx_video_dec_loop()) - - _video_dec_loop() calls gst_omx_port_acquire_buffer() on dec_out_port - - blocks in gst_omx_component_wait_message() releasing comp->lock and comp->messages_lock - (initially, there are no buffers configured on that port, so it waits for OMX_EventPortSettingsChanged) - - the sink pad thread pushes a buffer to the decoder with gst_omx_port_release_buffer() - - _release_buffer() grabs comp->lock and sends the buffer to OMX, which consumes it immediately - - EmptyBufferDone gets called at this point, which signals _wait_message() to unblock - - the message from EmptyBufferDone is processed in gst_omx_component_handle_messages() - called from gst_omx_port_release_buffer() - - gst_omx_port_release_buffer releases comp->lock - - the src pad thread now gets to run, grabbing comp->lock while it exits from _wait_message() - - _acquire_buffer() calls the _handle_messages() on the next line after _wait_message(), - which does nothing (no pending messages) - - then it goes to "retry:" and calls _handle_messages() again, which also does nothing - (still no pending messages) - - scheduler switches to a videocore thread that calls EventHandler, informing us about the - OMX_EventPortSettingsChanged event that just arrived - - EventHandler graps comp->messages_lock, but not comp->lock, so it can run in parallel at - this point just fine. - - scheduler switches back to the src pad thread (which is in the middle of _acquire_buffer()) - - the next _handle_messages() which is right before if (g_queue_is_empty (&port->pending_buffers)) - processes the OMX_EventPortSettingsChanged - - the buffer queue is still empty, so that thread blocks again in _wait_message() - - the sink pad thread tries to acquire the next input port buffer - - _acquire_buffer() also blocks this thread in: - if (comp->pending_reconfigure_outports) { ... _wait_message() ... } - - DEADLOCK. gstreamer is waiting for omx to do something, omx waits for gstreamer to do something. - By removing those extra _handle_messages() calls, we can ensure that all the checks of - _acquire_buffer() will re-run. In the above case, after the scheduler switches back to - the middle of _acquire_buffer(), the code will enter _wait_message(), which will see that - there are pending messages and will return immediately, going back to "retry:" and - re-doing all the checks properly. - https://bugzilla.gnome.org/show_bug.cgi?id=741854 - -2015-02-26 09:27:44 +0900 Wonchul Lee - - * omx/gstomx.c: - omx: cleanup code a bit to remove else statement - https://bugzilla.gnome.org/show_bug.cgi?id=745191 - -2015-01-12 16:13:35 +0100 Stefan Sauer + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Fix usage of encodebin + The property name is now avoid-reencoding - * common: - Automatic update of common submodule - From f2c6b95 to bc76a8b +2010-12-20 12:02:40 +0100 Edward Hervey -2014-12-18 10:56:15 +0100 Sebastian Dröge + * ges/ges-timeline.c: + GESTimeline: minor cleanup - * common: - Automatic update of common submodule - From ef1ffdc to f2c6b95 +2010-12-20 12:01:04 +0100 Edward Hervey -2014-11-27 17:12:42 +0100 Edward Hervey + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * tests/check/ges/basic.c: + * tests/check/ges/layer.c: + GESTimelineObject: Subclass from GInitiallyUnowned + The floating reference will be owned by the Layer - * common: - Automatic update of common submodule - From 7bb2bce to ef1ffdc +2010-12-20 12:00:06 +0100 Edward Hervey -2014-11-13 09:55:02 +0900 Jun Ji + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline.c: + * tests/check/ges/layer.c: + GESTimelineLayer: Subclass from GInitiallyUnowned + The floating reference will be owned by the Timeline - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxamrdec.c: - * omx/gstomxamrdec.h: - omx: Add omxamrdec - https://bugzilla.gnome.org/show_bug.cgi?id=739333 +2010-12-20 11:58:21 +0100 Edward Hervey -2014-10-27 18:00:50 +0100 Sebastian Dröge + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track.c: + GESTrackObject: Subclass from GInitiallyUnowned + The floating reference will be owned by the Track - * common: - Automatic update of common submodule - From 84d06cd to 7bb2bce +2010-12-20 11:56:37 +0100 Edward Hervey -2014-10-21 13:03:44 +0100 Tim-Philipp Müller + * ges/ges-timeline-object.c: + * tests/check/ges/basic.c: + * tests/check/ges/filesource.c: + TimelineObject: Hold a reference to the controlled TrackObject - * common: - Automatic update of common submodule - From a8c8939 to 84d06cd +2010-12-20 11:38:31 +0100 Edward Hervey -2014-10-21 13:00:10 +0200 Stefan Sauer + * tests/check/ges/backgroundsource.c: + * tests/check/ges/basic.c: + * tests/check/ges/filesource.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/save_and_load.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/text_properties.c: + * tests/check/ges/timelineobject.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + tests: Put clearer names on tests + Makes it easier to figure out which test failed :) + +2010-12-18 11:40:19 +0100 Edward Hervey * common: - Automatic update of common submodule - From 1f5d3c3 to a8c8939 + Update common submodule -2014-09-30 10:47:20 +0300 Sebastian Dröge +2010-12-17 11:27:37 +0100 Edward Hervey - * omx/gstomxaudiodec.c: - omxaudiodec: Clean up code a bit to get rid of useless NULL checks + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + GES*Object: only use g_object_notify_by_pspec if available -2014-09-30 10:50:07 +0900 junji +2010-12-17 11:27:23 +0100 Edward Hervey - * omx/gstomxaudiodec.c: - omxaudiodec: Unmap input buffers after usage - https://bugzilla.gnome.org/show_bug.cgi?id=736314 + * ges/ges-track-object.c: + GESTrackObject: Remove unused quarks -2014-08-31 20:30:13 +0000 Michal Lazo +2010-12-17 11:26:49 +0100 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Setup aspect ratio on RPi - Needs firmware from yesterday or newer to work with all possible - aspect ratios. Before that it only supported a fixed list. - https://bugzilla.gnome.org/show_bug.cgi?id=732533 + * configure.ac: + configure.ac: Require GLib 2.22 + Same requirement as for GStreamer + +2010-12-16 19:36:15 +0100 Edward Hervey + + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + GESSimpleTimelineLayer: reverting const-ification + +2010-12-16 16:47:54 +0000 Brandon Lewis + + * tests/check/ges/simplelayer.c: + GESSimpleTimelineLayer: add test for _index() method + +2010-12-16 16:50:35 +0000 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + GESSimpleTimelineLayer: add _index() method + +2010-12-16 19:29:14 +0100 Edward Hervey + + * ges/ges-timeline-object.c: + * ges/ges-timeline-pipeline.c: + * tests/check/ges/layer.c: + * tests/check/ges/timelineobject.c: + 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:24:52 +0100 Edward Hervey + + * docs/random/mapping.txt: + random: Add explanation about TimelineObject<=>TrackObject mapping + +2010-12-16 19:24:25 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: priority offset is handled by the TimelineObject + +2010-12-16 18:20:47 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: re-factor property setting code + And make sure notifications are emitted at the right time + +2010-12-16 16:27:26 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * tests/check/ges/timelineobject.c: + GESTrackObject: Add a 'locked' property for position synchronization + And update all code using it + +2010-12-16 15:05:29 +0100 Edward Hervey + + * docs/libs/#ges-sections.txt#: + * docs/libs/.#ges-sections.txt: + * docs/libs/ges-decl-list.txt.bak: + * docs/libs/ges-decl.txt.bak: + docs: Remove more bogus files + +2010-12-16 15:00:46 +0100 Edward Hervey + + * docs/libs/#ges-sections.txt#: + * docs/libs/.#ges-sections.txt: + * docs/libs/ges-decl-list.txt.bak: + * docs/libs/ges-decl.txt.bak: + * docs/libs/ges-sections.txt: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-transition.c: + * ges/ges-track-filesource.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-transition.c: + * ges/ges-track.c: + * tests/check/ges/backgroundsource.c: + * tests/check/ges/filesource.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/timelineobject.c: + * tests/check/ges/titles.c: + * tests/check/ges/transition.c: + * tests/examples/overlays.c: + * tests/examples/test1.c: + * tests/examples/text_properties.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + GESTrackObject: Hide more variables and provide accessors for them + +2010-12-16 12:46:48 +0100 Edward Hervey + + * ges/ges-timeline.c: + GESTimeline: Remove useless variable + +2010-12-16 12:41:26 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-keyfile-formatter.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-pipeline.c: + * tests/check/ges/layer.c: + GESTimelineLayer: Hide the object list and priority + Add needed setters/getters + +2010-12-15 19:40:11 +0100 Edward Hervey + + * docs/libs/ges-docs.sgml: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline.c: + ges: Add more documentation and annotations + This should make GES gobject-introspection compliant now. + +2010-12-15 19:18:42 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.h: + TimelineObject: Put more function name in sync with others + +2010-12-15 19:18:16 +0100 Edward Hervey + + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * tests/check/ges/simplelayer.c: + GESSimpleTimelineLayer: _nth() returns a const + The refcount isn't incremented. + +2010-12-15 19:05:48 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-keyfile-formatter.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track.c: + * ges/ges-track.h: + * tests/check/ges/basic.c: + * tests/check/ges/save_and_load.c: + GESTrack: Make more properties private + And ensure exported symbols are properly documented and have + argument checking. + +2010-12-15 15:50:44 +0000 Brandon Lewis + + * tests/check/ges/simplelayer.c: + GESSimpleTimelineLayer: add test for _nth() method + +2010-12-15 16:40:59 +0000 Brandon Lewis + + * ges/ges-simple-timeline-layer.c: + GESSimpleTimelineLayer: ensure the object can be located before "object-added" fires + +2010-12-15 15:51:23 +0000 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + GESSimpleTimelineLayer: add _nth() method + +2010-12-15 15:56:38 +0100 Edward Hervey + + * tests/check/ges/text_properties.c: + test: Disable the text_properties_in_layer test until it's properly implemented + +2010-12-15 15:52:03 +0100 Edward Hervey -2014-08-28 10:44:31 +0300 Sebastian Dröge + * .gitignore: + * ges/.gitignore: + * pkgconfig/.gitignore: + all: add/extend more .gitignore - * omx/gstomxaudioenc.c: - omxaudioenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE +2010-12-15 15:51:41 +0100 Edward Hervey -2014-08-28 10:43:22 +0300 Sebastian Dröge + * Makefile.am: + * configure.ac: + * pkgconfig/Makefile.am: + * pkgconfig/gst-editing-services-uninstalled.pc.in: + * pkgconfig/gst-editing-services.pc.in: + Add .pc files + +2010-12-15 13:29:53 +0100 Edward Hervey + + * docs/libs/ges-decl-list.txt.bak: + * docs/libs/ges-decl.txt.bak: + docs: Remove .bak files + Added by error when I added the doc system + +2010-12-15 13:27:39 +0100 Edward Hervey + + * docs/libs/ges-decl-list.txt.bak: + * docs/libs/ges-decl.txt.bak: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * ges/ges-track-video-transition.h: + 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 12:58:26 +0100 Edward Hervey - * omx/gstomxaudioenc.c: - omxaudioenc: Use the base class' open/close vfuncs instead of calling them ourselves + * configure.ac: + * ges/Makefile.am: + ges: Add gobject-introspection support -2014-08-26 22:13:53 -0500 Peng Liu +2010-12-15 12:36:25 +0100 Edward Hervey - * config/rpi/gstomx.conf: - * omx/gstomxvideoenc.c: - omxvideoenc: Implement the hack flag GST_OMX_HACK_NO_COMPONENT_RECONFIGURE - Fix a video encoder stall problem on RPi when changing the aspect ratio. - https://bugzilla.gnome.org/show_bug.cgi?id=732533 + * configure.ac: + * ges/Makefile.am: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + * tests/examples/Makefile.am: + * tests/examples/concatenate.c: + * tests/examples/test4.c: + * tests/examples/thumbnails.c: + * tools/Makefile.am: + * tools/ges-launch.c: + ges: Switch to encoding-profile API from base + Remove dependency on gst-convenience. + +2010-12-15 11:17:21 +0100 Edward Hervey + + * docs/random/mapping.txt: + random: Add notes about Track mapping + +2010-12-14 17:38:55 +0100 Edward Hervey + + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: Make base_priority/priority-offset a private field + +2010-12-14 17:37:13 +0100 Edward Hervey + + * docs/random/mapping.txt: + random: Add brainstorming about Timeline<=>Track object mapping + +2010-12-10 12:15:54 +0100 Edward Hervey + + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-transition.c: + * ges/ges-track-image-source.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track-operation.c: + * ges/ges-track-operation.h: + * ges/ges-track-source.c: + * ges/ges-track-source.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-title-source.c: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-transition.c: + 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:14:32 +0100 Edward Hervey + + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + GESTrackTransition: Make it a subclass of GESTrackOperation + +2010-12-09 19:36:44 +0100 Edward Hervey + + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + * tests/check/ges/layer.c: + * tests/check/ges/save_and_load.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/text_properties.c: + 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 18:53:29 +0100 Edward Hervey + + * docs/random/lifecycle: + random: Add lifecycle document + +2010-12-09 17:43:08 +0100 Edward Hervey + + * tests/check/ges/basic.c: + * tests/check/ges/layer.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/timelineobject.c: + 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:09:11 +0100 Edward Hervey + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-standard-transition.c: + * ges/ges-timeline-standard-transition.h: + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + * ges/ges-track-operation.c: + * ges/ges-track-transition.c: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + * tests/check/ges/save_and_load.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/transition.c: + * tests/examples/ges-ui.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + 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 15:21:10 +0100 Edward Hervey + + * ges/ges-formatter.c: + * ges/ges-timeline-object.c: + * ges/ges-track-object.c: + ges: Make some classes abstract with G_DEFINE_ABSTRACT_TYPE + +2010-12-09 15:13:27 +0100 Edward Hervey + + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-transition.c: + ges: Avoid leaking a GList of GESTrackObject + +2010-12-09 15:12:34 +0100 Edward Hervey + + * ges/ges-custom-timeline-source.c: + * ges/ges-keyfile-formatter.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-source.c: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-transition.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-filesource.c: + * ges/ges-track-image-source.c: + * ges/ges-track-operation.c: + * ges/ges-track-source.c: + * ges/ges-track-title-source.c: + * ges/ges-track-transition.c: + * ges/ges-track-video-test-source.c: + ges: Remove unused GObject vmethods + +2010-12-09 14:25:22 +0100 Edward Hervey + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-timeline-operation.c: + * ges/ges-timeline-operation.h: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-overlay.h: + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + * ges/ges-types.h: + * ges/ges.h: + 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 12:53:07 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + GESTimelineObject: Clarify usage of create_track_object(s) by subclasses + +2010-12-09 12:52:15 +0100 Edward Hervey + + * ges/ges-timeline-source.c: + 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 11:56:00 +0100 Edward Hervey + + * ges/ges-formatter.h: + GESFormatter: Hide the save/load vmethod from the docs + We need to deprecated them before API/ABI freeze + +2010-12-08 16:09:35 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-custom-timeline-source.c: + * ges/ges-timeline-source.c: + * ges/ges-track-operation.h: + * ges/ges-track-source.c: + * ges/ges-track-source.h: + ges: Remove creators for base classes + +2010-12-08 15:48:55 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + GESTimelineSource: Remove _new() since it's a base class + +2010-12-08 15:36:55 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-custom-timeline-source.h: + * ges/ges-formatter.c: + * ges/ges-keyfile-formatter.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-object.h: + * ges/ges-timeline-overlay.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline-source.h: + * ges/ges-timeline-test-source.h: + * ges/ges-timeline-text-overlay.h: + * ges/ges-timeline-title-source.h: + * ges/ges-timeline-transition.h: + * ges/ges-timeline.c: + * ges/ges-track-audio-test-source.h: + * ges/ges-track-audio-transition.h: + * ges/ges-track-filesource.h: + * ges/ges-track-image-source.h: + * ges/ges-track-object.h: + * ges/ges-track-operation.h: + * ges/ges-track-source.h: + * ges/ges-track-text-overlay.h: + * ges/ges-track-transition.h: + * ges/ges-track-video-test-source.h: + * ges/ges-track.h: + docs: A round of updates + +2010-12-08 15:36:00 +0100 Edward Hervey + + * docs/libs/ges-docs.sgml: + docs: expose the TrackImageSource docs + +2010-12-08 15:32:05 +0100 Edward Hervey + + * docs/libs/ges.types: + docs: Update ges.types with all types + +2010-11-28 13:24:07 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-source.c: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-transition.c: + * ges/ges-timeline.c: + * tests/check/ges/basic.c: + * tests/check/ges/save_and_load.c: + * tests/check/ges/simplelayer.c: + * tests/examples/overlays.c: + * tests/examples/text_properties.c: + * tests/examples/transition.c: + GESTimelineObject: add private structure + +2010-11-17 19:53:32 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * tests/examples/ges-ui.c: + GESSimpleTimelineLayer: add private structure + +2010-12-04 19:54:13 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-overlay.h: + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-test-source.h: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-test-source.h: + * ges/ges-track-audio-transition.c: + * ges/ges-track-audio-transition.h: + * ges/ges-track-filesource.c: + * ges/ges-track-filesource.h: + * ges/ges-track-image-source.c: + * ges/ges-track-image-source.h: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track-operation.c: + * ges/ges-track-operation.h: + * ges/ges-track-source.c: + * ges/ges-track-source.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-test-source.h: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + * ges/ges-track.c: + * ges/ges-track.h: + ges: Add instance private structures + +2010-11-28 16:40:15 +0100 Thibault Saunier + + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + GESTimelinePipeline: add a private structure + +2010-11-26 18:43:36 +0100 Thibault Saunier + + * docs/libs/ges-sections.txt: + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + GESCustomTimelineSource: add private structure + +2010-12-02 19:47:23 +0000 Brandon Lewis + + * tests/check/ges/save_and_load.c: + Tests: fix CMP_FAIL on 32-bit machines + +2010-11-10 19:52:16 +0100 Edward Hervey + + * docs/random/design: + docs: TODO idea dumping + Only the beginning + +2010-12-02 12:28:15 +0100 Edward Hervey + + * tests/check/ges/save_and_load.c: + tests: Make sure we specify guint64 with g_object_set arguments + Yup, had missed those because of weird macros :( + +2010-12-01 12:16:37 +0100 Thibault Saunier + + * ges/ges-simple-timeline-layer.c: + * tests/check/ges/simplelayer.c: + SimpleTimelineLayer: Remove bogus check and extend unit test to validate it + +2010-12-02 11:54:03 +0100 Edward Hervey + + * tests/check/ges/save_and_load.c: + tests: Make sure we specify guint64 with g_object_set arguments + Avoids crashers on 32bit machines + +2010-11-29 13:24:13 +0100 Edward Hervey + + * ges/ges-custom-timeline-source.h: + * ges/ges-formatter.h: + * ges/ges-keyfile-formatter.h: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-object.h: + * ges/ges-timeline-overlay.h: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline-source.h: + * ges/ges-timeline-test-source.h: + * ges/ges-timeline-text-overlay.h: + * ges/ges-timeline-title-source.h: + * ges/ges-timeline-transition.h: + * ges/ges-timeline.h: + * ges/ges-track-audio-test-source.h: + * ges/ges-track-audio-transition.h: + * ges/ges-track-filesource.h: + * ges/ges-track-image-source.h: + * ges/ges-track-object.h: + * ges/ges-track-operation.h: + * ges/ges-track-source.h: + * ges/ges-track-text-overlay.h: + * ges/ges-track-title-source.h: + * ges/ges-track-transition.h: + * ges/ges-track-video-test-source.h: + * ges/ges-track-video-transition.h: + * ges/ges-track.h: + * ges/ges-types.h: + 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-27 18:38:06 +0100 Edward Hervey -2014-08-14 17:36:11 +0300 Sebastian Dröge + * common: + Update common - * omx/gstomxaudiodec.c: - * omx/gstomxaudiodec.h: - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omx: Let base classes handle EOS - https://bugzilla.gnome.org//show_bug.cgi?id=734774 +2010-10-22 15:57:45 +0100 Brandon Lewis -2014-08-14 17:33:07 +0300 Sebastian Dröge + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + ges-ui: allow enabling/disabling audio/video tracks - * omx/gstomxaudiodec.c: - omxaudiodec: Fix flushing logic and make it more similar to the video decoder +2010-10-11 11:53:35 +0100 Brandon Lewis -=== release 1.2.0 === + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + ges-ui: implement save as command in gtk demo -2014-07-23 11:28:12 +0200 Sebastian Dröge +2010-10-11 11:38:11 +0100 Brandon Lewis - * ChangeLog: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - * omx/Makefile.am: - Release 1.2.0 + * tests/examples/ges-ui.c: + ges-ui: implement load command -2014-07-22 09:23:00 +0200 Sebastian Dröge +2010-10-11 11:37:51 +0100 Brandon Lewis - * config/bellagio/gstomx.conf: - * config/rpi/gstomx.conf: - config: Update ranks to PRIMARY+1 to have higher preference than avdec_* - See https://bugzilla.gnome.org/show_bug.cgi?id=732161 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + ges-ui: don't assume we always have 1 layer and two tracks -2014-07-20 17:46:30 +0200 Sebastian Dröge +2010-10-08 12:32:15 +0100 Brandon Lewis - * omx/gstomxaudiosink.c: - omxaudiosink: Set port to not flushing in prepare() and keep it at flushing in unprepare() - https://bugzilla.gnome.org/show_bug.cgi?id=733168 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + ges-ui: add new command, remove quit command (closing last window quits app) -2014-07-13 22:15:18 +0200 Sebastian Dröge +2010-11-27 16:56:10 +0100 Edward Hervey - * omx/gstomxaacdec.c: - * omx/gstomxaudiodec.c: - * omx/gstomxaudiodec.h: - * omx/gstomxmp3dec.c: - omxaudiodec: Implement setting of fallback channel positions + * tests/check/ges/simplelayer.c: + test: Fix typo in simplelayer test -2014-07-13 18:22:39 +0200 Sebastian Dröge +2010-11-27 16:55:49 +0100 Edward Hervey - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxaacdec.c: - * omx/gstomxaacdec.h: - * omx/gstomxmp3dec.c: - omx: Add AAC audio decoder + * tests/check/ges/save_and_load.c: + check: Small cleanup of the save/load test -2014-07-02 09:22:28 +0200 Sebastian Dröge +2010-11-26 18:39:26 +0100 Edward Hervey - * omx/gstomxaudiodec.c: - omxaudiodec: Get PCM parameters from the out port, not the in port + * docs/libs/ges-sections.txt: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-keyfile-formatter.c: + Formatter: Extend and fixup documentation -2014-05-15 13:24:39 +0200 Sebastian Dröge +2010-11-26 18:38:49 +0100 Edward Hervey - * omx/gstomxaudiodec.c: - omxaudiodec: Implement hack for not disabling the output port after set_format until the output format is known - Needed on some OMX implementations, e.g. the one from Atmel. It does - not send the settings-changed event on the output port if it is - disabled. + * ges/ges-timeline.c: + Timeline: Add doc and more comments/fixmes -2014-05-10 23:12:54 +0200 Sebastian Dröge +2010-11-27 18:11:56 +0100 Edward Hervey - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxaudiodec.c: - * omx/gstomxaudiodec.h: - * omx/gstomxmp3dec.c: - * omx/gstomxmp3dec.h: - omx: Add audio decoder base class and a subclass for MP3 + * ges/ges-formatter.c: + GESTimeline: Prevent saving timelines without any layers -2014-07-01 09:38:01 +0200 Sebastian Dröge +2010-11-26 13:02:48 +0100 Edward Hervey - * configure.ac: - * omx/Makefile.am: - omx: Link to gmodule-2.0-no-export for being able to use the g_module_*() API - https://bugzilla.gnome.org/show_bug.cgi?id=732518 + * ges/ges-timeline-layer.c: + TimelineLayer: Add debug statement regarding priorities -2014-06-30 15:00:54 +0200 Sebastian Dröge +2010-10-20 18:01:37 +0100 Brandon Lewis - * examples/egl/testegl.c: - examples: #define GST_USE_UNSTABLE_API for libgstgl + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-keyfile-formatter.h: + GESFormatter: fix a few typos in documention -2014-06-29 19:10:19 +0200 Sebastian Dröge +2010-10-19 13:35:58 +0100 Brandon Lewis - * omx/gstomxh264enc.c: - * omx/gstomxh264enc.h: - omxh264enc: Properly accumulate headers and push before the next frame - Fixes output of encoding on RPi, where each header buffer (SPS and PPS) - is in a separate OMX buffer. - https://bugzilla.gnome.org/show_bug.cgi?id=726669 + * ges/ges-timeline.c: + GESTimeline: add more fixmes -2014-06-29 19:04:54 +0200 Sebastian Dröge +2010-10-07 16:52:51 +0100 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Implement flush() instead of the deprecated reset() + * tests/check/ges/save_and_load.c: + tests: add save->load test case -2014-06-25 17:14:18 +0200 Sebastian Dröge +2010-10-07 16:51:38 +0100 Brandon Lewis - * config/rpi/gstomx.conf: - rpi: It's 44100Hz, not 41400Hz + * ges/ges-keyfile-formatter.c: + GESKeyFileFormatter: use ges_formatter_get/set data -2014-06-25 11:12:51 +0100 Julien Isorce +2010-10-07 14:55:14 +0100 Brandon Lewis - * configure.ac: - configure.ac: require gstgl >= 1.3.3 + * tests/check/ges/save_and_load.c: + tests: use ges_formatter_{get,set}_data accessors in unit tests -2014-04-25 13:25:05 +0100 Julien Isorce +2010-10-07 14:25:22 +0100 Brandon Lewis - * Makefile.am: - * configure.ac: - example: enable testegl - See https://bugzilla.gnome.org/show_bug.cgi?id=728940 + * docs/libs/ges-sections.txt: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + GESFormatter: Add data-related methods -2014-06-25 10:19:54 +0100 Julien Isorce +2010-10-07 14:07:18 +0100 Brandon Lewis - * examples/egl/testegl.c: - testegl: do matrix mutlplication in the shader - See https://bugzilla.gnome.org/show_bug.cgi?id=728940 + * tests/check/ges/save_and_load.c: + tests: update unit tests -2014-06-25 09:36:38 +0100 Julien Isorce +2010-10-07 13:49:15 +0100 Brandon Lewis - * examples/egl/testegl.c: - testegl: add a comment for the parse command - See https://bugzilla.gnome.org/show_bug.cgi?id=728940 + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-keyfile-formatter.c: + * ges/ges-keyfile-formatter.h: + * ges/ges-types.h: + * ges/ges.h: + GESKeyFileFormatter: New GKeyFile GESFormatter -2014-04-25 17:32:16 +0100 Julien Isorce +2010-09-24 19:31:53 +0100 Brandon Lewis - * examples/egl/Makefile.am: - * examples/egl/cube_texture_and_coords.h: - * examples/egl/testegl.c: - testegl: convert code from GLESv1 to GLESv2 - See https://bugzilla.gnome.org/show_bug.cgi?id=728940 + * tools/ges-launch.c: + tools: add project file support to ges-launch -2014-04-25 13:21:59 +0100 Julien Isorce +2010-09-29 12:43:47 +0100 Brandon Lewis - * examples/egl/Makefile.am: - * examples/egl/testegl.c: - testegl: port to gstgl API - - append a glfilter just before fakesink - So that we get gltexture or eglimages - - propagate our EGLDisplay to the pipeline - see GST_QUERY_CONTEXT - - share our EGLContext with the iternal gl context - of the pipeline, see GST_QUERY_ALLOCATION - - use GstVideoGLTextureUploadMeta to upload - the incoming gltexture or eglimage to our gl texture - TODO: convert from GLESv1 to GLESv2 - See https://bugzilla.gnome.org/show_bug.cgi?id=728940 + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + GESTimeline: implementation of save_to/load_from uri -2014-06-24 14:52:58 +0200 Sebastian Dröge +2010-09-21 15:39:07 +0100 Brandon Lewis - * omx/gstomxbufferpool.c: - * omx/gstomxbufferpool.h: - * omx/gstomxvideodec.c: - omxbufferpool: Copy buffers if the stride does not match and we can't use video meta - https://bugzilla.gnome.org/show_bug.cgi?id=731672 + * tests/check/Makefile.am: + * tests/check/ges/.gitignore: + * tests/check/ges/save_and_load.c: + tests: Add save/load tests -2014-06-24 14:52:43 +0200 Sebastian Dröge +2010-09-13 16:21:15 -0700 Brandon Lewis - * configure.ac: - * omx/gstomx.h: - * omx/gstomxvp8dec.h: - omx: Only include OMX_VideoExt.h conditionally - It does not exist on the RPi for example. + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/Makefile.am: + * ges/ges-formatter.c: + * ges/ges-formatter.h: + * ges/ges-types.h: + * ges/ges.h: + GESFormatter: Project file format support -2014-06-24 13:59:44 +0200 Sebastian Dröge +2010-10-22 15:58:22 +0100 Brandon Lewis - * configure.ac: - configure.ac: Require GStreamer core/base >= 1.2.2 - Needed at least for gst_video_decoder_release_frame(). + * ges/ges-timeline.c: + GESTimeline: set track state to NULL before removing from timeline -2014-06-24 13:02:13 +0200 Sebastian Dröge +2010-10-07 12:29:05 +0100 Brandon Lewis - * omx/gstomxbufferpool.c: - omxbufferpool: Fix format string compiler warning + * ges/ges-timeline.c: + GESTimeline: release timeline objects when a layer is removed -2014-06-22 21:11:45 +0000 Michal Lazo +2010-10-22 14:02:29 +0100 Brandon Lewis - * omx/gstomxbufferpool.c: - omxbufferpool: Initialize debug category + * ges/ges-track.c: + * ges/ges-track.h: + GESTrack: keep track of trackobjects and remove/release them in dispose -2014-06-24 12:42:22 +0200 Sebastian Dröge +2010-10-22 14:01:34 +0100 Brandon Lewis - * omx/gstomxbufferpool.c: - omxbufferpool: Properly convert OMX alignment to GStreamer alignment - GStreamer uses a bitmask for the alignment while OMX uses the - alignment itself. Let's convert. - https://bugzilla.gnome.org/show_bug.cgi?id=710564 + * tests/check/ges/basic.c: + tests: test for track removal while timeline contains timeline objects -2014-06-24 11:11:28 +0200 Sebastian Dröge +2010-10-20 16:23:22 +0100 Brandon Lewis - * omx/gstomxh264enc.c: - omxh264enc: Don't let baseclass finish frames for SPS/PPS buffers - Otherwise we a) send them twice, and b) finish a frame for something - that does not even include a frame. - https://bugzilla.gnome.org/show_bug.cgi?id=726669 + * tests/check/ges/basic.c: + tests: test that adding tracks after adding layers works -2014-06-24 10:22:37 +0200 Sebastian Dröge +2010-10-19 17:56:37 +0100 Brandon Lewis - * omx/gstomxvideo.h: - omxvideo: Include the separate headers too for compatibility with 1.0.x + * tests/check/ges/basic.c: + tests: unit test to check that objects in layers are properly added to the timeline -2014-03-24 16:09:40 +0800 Zhao, Halley +2010-09-22 12:32:47 +0100 Brandon Lewis - * configure.ac: - * omx/gstomxvp8dec.h: - omxvp8dec: use VP8 definition from OMX_VideoExt.h - https://bugzilla.gnome.org/show_bug.cgi?id=726957 + * ges/ges-simple-timeline-layer.c: + GESSimpleTimelineLayer: override get_objects () virtual method -2014-03-24 15:33:26 +0800 Zhao, Halley +2010-09-22 12:29:26 +0100 Brandon Lewis - * configure.ac: - configure: add --with-omx-header-path option for external omx headers - https://bugzilla.gnome.org/show_bug.cgi?id=726957 + * docs/libs/ges-sections.txt: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + GESTimelineLayer: add get_objects virtual method -2014-06-18 23:04:33 +0200 Aurélien Zanelli +2010-10-20 18:00:24 +0100 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: fix a query leak - Also add a debug message if query fails. - https://bugzilla.gnome.org/show_bug.cgi?id=731898 + * ges/ges-timeline.c: + GESTimeline: allow adding tracks after layers -2014-05-30 15:29:15 +0200 Aurélien Zanelli +2010-10-19 16:39:43 +0100 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: release frames with old PTS to avoid memory issue - Interlaced stream could make the decoder use two input frames to produce - one output frame causing the gstvideodecoder frame list to grow. - Assuming the video decoder output frame in display order rather than in - decoding order, this commit add a way to release frames with PTS less - than current output frame. - https://bugzilla.gnome.org/show_bug.cgi?id=730995 + * ges/ges-timeline.c: + GESTimeline: add existing timeline objects when adding layers -2013-06-27 21:59:29 +0900 Kazunori Kobayashi +2010-09-23 14:49:04 +0100 Brandon Lewis - * omx/gstomx.c: - omx: Fix a missing g_free() in error path - This fixes a memory leak with g_strdup() when an error occurs. - https://bugzilla.gnome.org/show_bug.cgi?id=731141 + * ges/ges.c: + ges: ensure built-in timeline object classes are registered -2014-06-02 15:34:09 +0200 Aurélien Zanelli +2010-09-23 14:47:48 +0100 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: add missing stream unlock in error path + * ges/ges-timeline.c: + GESTimeline: remove layers before removing tracks in dispose () -2014-05-31 15:12:05 +0200 Sebastian Dröge +2010-11-25 14:03:07 +0100 Edward Hervey - * omx/gstomx.c: - omx: Don't handle disabling/enabling ports exactly like flushing - Otherwise we might abort a flush operation in another thread when - enabling/disabling ports, leading to deadlocks sometimes. - https://bugzilla.gnome.org/show_bug.cgi?id=730989 + * tools/ges-launch.c: + ges-launch: Gracefully handle missing properties -2014-05-26 11:02:10 +0200 Sebastian Dröge +2010-11-25 14:02:26 +0100 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Don't leak buffer pool config in error cases - CID 1216158 + * ges/ges-timeline.c: + Timeline: Remove unneeded variable -2014-05-21 10:53:43 +0200 Sebastian Dröge +2010-11-25 14:01:15 +0100 Edward Hervey - * common: - Automatic update of common submodule - From 211fa5f to 1f5d3c3 + * ges/ges-timeline-object.c: + TimelineObject: Forgot a break in a switch/case -2014-05-19 09:10:07 +0200 Sebastian Dröge +2010-11-23 18:24:38 +0100 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Don't forget to unref codec state - CID 1214603 + * ges/ges-timeline-pipeline.c: + 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. -2014-05-19 09:08:33 +0200 Sebastian Dröge +2010-11-23 17:34:07 +0100 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Make output buffer pointer always initialized - CID 1214605 + * .gitignore: + ges: Ignore more -2014-05-19 09:06:42 +0200 Sebastian Dröge +2010-11-23 17:33:32 +0100 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Check return value of gst_buffer_map() - CID 1214599 + * tests/check/ges/.gitignore: + * tests/examples/.gitignore: + tests: Ignore more files -2014-05-19 09:04:09 +0200 Sebastian Dröge +2010-10-23 17:38:31 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Check return value of gst_omx_port_set_enabled() for errors - CID 1214589 + * ges/ges-track-video-transition.c: + GesTrackVideoTransition: Prefer videomixer2 to videomixer + If present -2014-05-19 09:01:46 +0200 Sebastian Dröge +2010-11-10 16:13:07 +0100 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Check return values of buffer pool config parsing functions - CID 1214588 + * AUTHORS: + * README: + AUTHORS/README: cleanup -2014-05-19 08:48:50 +0200 Sebastian Dröge +2010-11-11 17:39:32 +0100 Edward Hervey - * omx/gstomx.c: - omx: Remove dead code, buf can never be NULL here as we just check for that the line above - CID 1214596 + * tools/ges-launch.c: + ges-launch: g_print => g_printerr for relevant messages -2014-05-19 08:47:36 +0200 Sebastian Dröge +2010-11-09 16:27:06 +0100 Edward Hervey - * omx/gstomx.c: - omx: Fix comparisons in gst_omx_state_to_string() case to actually make sense - CID 1214593 + * tests/examples/concatenate.c: + examples: Fix for latest GstDiscoverer API changes -2014-05-19 08:45:10 +0200 Sebastian Dröge +2010-11-04 12:29:20 +0100 Edward Hervey - * omx/gstomx.c: - omx: Make sure to compare the error codes as unsigned integers so that comparisons >2**31 actually work - CID 1214592 + * configure.ac: + configure.ac: Require GStreamer core/base 0.10.30.4 -2014-05-19 08:40:23 +0200 Sebastian Dröge +2010-11-04 12:28:46 +0100 Edward Hervey - * omx/gstomx.c: - omx: Fix comparisons in gst_omx_command_to_string() default cause to actually work - CID 1214591 + * ges/ges-timeline.c: + GESTimeline: Change for updated GstDiscoverer API -2014-05-15 13:22:56 +0200 Sebastian Dröge +2010-09-28 16:30:30 +0200 Edward Hervey - * omx/gstomxaudioenc.c: - omxaudioenc: Implement hack for not disabling the output port after set_format until the output format is known - Needed on some OMX implementations, e.g. the one from Atmel. It does - not send the settings-changed event on the output port if it is - disabled. + * configure.ac: + * ges/Makefile.am: + Add gstvideo in build dependencies -2014-05-15 13:21:07 +0200 Sebastian Dröge +2010-09-23 18:39:01 +0200 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Implement hack for not disabling the output port after set_format until the output format is known - Needed on some OMX implementations, e.g. the one from Atmel. It does - not send the settings-changed event on the output port if it is - disabled. + * common: + common: Update to master -2014-05-15 10:58:34 +0200 Sebastian Dröge +2010-09-23 18:33:27 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omx: Add a hack for not disabling the output port after set_format until the output format is known - Needed on some OMX implementations, e.g. the one from Atmel. It does - not send the settings-changed event on the output port if it is - disabled. + * configure.ac: + * docs/libs/Makefile.am: + * ges/Makefile.am: + * ges/ges-screenshot.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * tests/check/Makefile.am: + * tests/examples/Makefile.am: + * tests/examples/concatenate.c: + * tools/Makefile.am: + all: Changes for discoverer being merged upstream + Along with a whole bunch of Makefile fixups -2014-05-12 12:33:32 +0200 Josep Torra +2010-09-16 09:07:05 +0200 Edward Hervey - * omx/gstomxaudiosink.c: - omxaudiosink: implement _delay only in the RaspberryPI - Make code implementation conditionally built for RaspberryPI because - OMX_IndexConfigAudioRenderingLatency seems to be a Broadcom extension. - On other targets the query position might not be accurate without - implementing _delay appropriatelly. + * tools/ges-launch.c: + ges-launch: Return 0 if no errors, else 1 -2014-05-12 08:56:15 +0200 Sebastian Dröge +2010-09-16 08:42:50 +0200 Edward Hervey - * omx/gstomxaudioenc.c: - omxaudioenc: Correctly scale nTickCount by OMX_TICKS_PER_SECOND + * common: + Update common -2014-05-10 22:48:23 +0200 Sebastian Dröge +2010-09-14 16:04:02 +0200 Edward Hervey - * omx/gstomxaudioenc.c: - omxaudioenc: Drain encoder on NULL buffer and don't drain on flushing + * configure.ac: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-screenshot.c: + * ges/ges-screenshot.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline.c: + * tests/examples/concatenate.c: + * tests/examples/test4.c: + * tests/examples/thumbnails.c: + * tools/ges-launch.c: + Update for factorylist/convertframe being merged to gst core/base + +2010-08-20 12:40:05 +0200 Edward Hervey -2014-05-10 22:47:56 +0200 Sebastian Dröge + * configure.ac: + * ges/Makefile.am: + * ges/ges-screenshot.c: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline.c: + * tests/examples/concatenate.c: + * tests/examples/test4.c: + * tests/examples/thumbnails.c: + * tools/ges-launch.c: + Update to moved gst-convenience + +2010-09-02 18:19:51 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Set nTickCount based on the buffer's duration instead of something wrong + * common: + common: Update to latest version -2014-05-10 22:47:21 +0200 Sebastian Dröge +2010-08-05 18:32:17 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Set nTickCount to the whole duration of the buffer instead of a wrong calculation + * tests/examples/ges-ui.c: + relax restrictions on adding transitions + We don't need these any more: the valid property tells us whether it is safe + to go to GST_STATE_PLAYING or not. -2014-05-10 22:46:51 +0200 Sebastian Dröge +2010-08-05 18:11:49 +0200 Brandon Lewis - * omx/gstomxaudiosink.c: - omxaudiosink: Fix format string compiler warnings + * tests/examples/ges-ui.c: + move a callback into the proper section of the file -2014-04-04 14:11:58 +0200 Josep Torra +2010-08-05 17:50:48 +0200 Brandon Lewis - * config/rpi/gstomx.conf: - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxanalogaudiosink.c: - * omx/gstomxanalogaudiosink.h: - * omx/gstomxaudiosink.c: - * omx/gstomxaudiosink.h: - * omx/gstomxhdmiaudiosink.c: - * omx/gstomxhdmiaudiosink.h: - omxaudiosink: Implements OpenMAX based audio sinks - Provides omxanalogaudiosink and omxhdmiaudiosink elements on - the Raspberry PI. - - omxanalogaudiosink is capable to render raw mono or stereo audio - through the jack output. - - omxhdmiaudiosink is capable to render raw audio up to 8 channels - and transmit ac3/dts(IEC 61937) through the HDMI output. - - sinks provide a clock derived from rendered samples - - sinks support the GstStreamVolume interface by implementing - the volume and mute properties. - https://bugzilla.gnome.org/show_bug.cgi?id=728962 + * tests/examples/ges-ui.c: + fix bug in time format regex -2014-05-03 10:17:35 +0200 Sebastian Dröge +2010-08-05 17:48:07 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From bcb1518 to 211fa5f + * tests/examples/ges-ui.c: + show duration text entry for all object types -2014-04-29 15:16:16 +0100 Julien Isorce +2010-08-05 16:19:35 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: can negotiate caps with memory:EGLImage feature when using EGLImage allocator - Previously when using gst EGLImage allocator the caps was - video/x-raw, format=RGBA instead of - video/x-raw(memory:EGLImage), format=RGBA - Kepp previous behavior in case negotiation fails with caps feature. - It means it will still have a chance to use EGLImage even if the - feature is not in the caps. - https://bugzilla.gnome.org/show_bug.cgi?id=729196 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + connect to delete event instead of destroy -2014-04-23 09:57:48 +0200 Aurélien Zanelli +2010-08-05 16:14:09 +0200 Brandon Lewis - * omx/gstomxvp8dec.h: - omxvp8dec: fix typo in GST_TYPE_OMX_VP8_DEC define - https://bugzilla.gnome.org/show_bug.cgi?id=728774 + * tests/examples/ges-ui.glade: + hide empty menus -2014-04-16 11:00:55 +0200 Aurélien Zanelli +2010-08-05 16:12:45 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: don't unref caps before logging field from it - https://bugzilla.gnome.org/show_bug.cgi?id=728322 + * tests/examples/ges-ui.c: + ignore some UI signals when selection changes -2014-04-15 17:30:13 +0100 Julien Isorce +2010-08-05 15:46:34 +0200 Brandon Lewis - * Makefile.am: - * configure.ac: - example: disable testegl since libgstegl has been removed - As decided in bug #703343 - Not compatible with the new libgstgl API. - A portage has been started, attachment 272800. - https://bugzilla.gnome.org/show_bug.cgi?id=703343 + * tests/examples/ges-ui.c: + disable playback when layer is in invalid state -2014-04-15 17:11:08 +0100 Julien Isorce +2010-08-05 15:46:02 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: use new libgstgl API since libgstegl has been removed - There is no point to retrieve a ref/unref type - instead of an EGLDisplay directly. It's like for EGLImage. - https://bugzilla.gnome.org/show_bug.cgi?id=703343 + * ges/ges-simple-timeline-layer.c: + * tests/check/ges/simplelayer.c: + layer is also invalid when there are transitoins at the beginning/end -2014-04-15 17:06:38 +0100 Julien Isorce +2010-08-05 15:21:57 +0200 Brandon Lewis - * configure.ac: - * examples/Makefile.am: - * omx/Makefile.am: - * omx/gstomxvideodec.c: - configure.ac: check for libgstgl since libgstegl has been removed - https://bugzilla.gnome.org/show_bug.cgi?id=703343 + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * tests/check/ges/simplelayer.c: + add vaid property and unit tests -2014-04-09 18:52:16 +0200 Aurélien Zanelli +2010-08-05 15:21:04 +0200 Brandon Lewis - * omx/gstomxbufferpool.c: - * omx/gstomxvideodec.c: - omxvideodec: add support of more color format - Add support for ABGR, ARGB, RGB16, BGR16, YUY2, UYVY, YVYU, GRAY8 and - NV16 color format. + * ges/ges-simple-timeline-layer.c: + add doc comment for object-moved signal -2014-04-09 18:51:57 +0200 Aurélien Zanelli +2010-08-05 12:52:13 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: simplify color format conversion in fill_buffer function + * tests/examples/ges-ui.c: + update list store layer emits object-moved -2014-04-09 18:51:41 +0200 Aurélien Zanelli +2010-08-05 12:51:31 +0200 Brandon Lewis - * omx/gstomxbufferpool.c: - omxbufferpool: make video stride and offset calculation easier - It will be easier to support more color format. + * tests/check/ges/simplelayer.c: + add unit tests for 'object-moved' signal -2014-04-09 18:51:12 +0200 Aurélien Zanelli +2010-08-05 12:50:19 +0200 Brandon Lewis - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - * omx/gstomxvideodec.c: - omx: add an helper to convert OMX color format to GStreamer color format + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/gesmarshal.list: + add object-moved signal to simple timeline layer -2014-03-10 17:43:50 +0100 Josep Torra +2010-08-04 18:49:19 +0200 Brandon Lewis - * examples/egl/testegl.c: - * omx/gstomxvideodec.c: - omxvideodec: Implement pipeline draining to support adaptive scenarios - When draining due a format change also drain - the pipeline to reclaim back all buffers. - https://bugzilla.gnome.org/show_bug.cgi?id=726107 + * tests/examples/ges-ui.c: + implement move up/down commands -2014-03-27 13:57:32 +0100 Josep Torra +2010-08-04 18:31:34 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: fix several memory leaks in the testegl example - Ensure to call to image_data_free in order to release GPU resources. - Also ensure to destroy EGLImage and GLTexture from proper - thread/context. - https://bugzilla.gnome.org/show_bug.cgi?id=726107 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + connect to move_{up,down actions -2014-03-25 17:16:31 +0000 Julien Isorce +2010-08-04 18:25:24 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: keep a ref on the buffer instead of the memory - Like in eglglessink - https://bugzilla.gnome.org/show_bug.cgi?id=726107 + * tests/examples/ges-ui.c: + also disallow moving past the start or end of timeline -2014-03-07 20:08:05 +0100 Josep Torra +2010-08-04 18:02:14 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: fixes race condition during seeks - Acording 6.1.3 Seek Event Sequence in the OpenMAX IL 1.1.2 spec - document in order to flush the component it needs to be in - paused state. - https://bugzilla.gnome.org/show_bug.cgi?id=726038 + * tests/examples/ges-ui.c: + can move only when exactly one clip is selected (and not in playback/paused) -2014-01-29 18:31:26 +0000 Julien Isorce +2010-08-04 17:48:12 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: use flush because reset is deprecated - https://bugzilla.gnome.org/show_bug.cgi?id=726038 + * tests/examples/ges-ui.glade: + add move up/down actions -2014-01-27 17:03:50 +0000 Julien Isorce +2010-08-04 17:43:35 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: populate the most downstream output port on reset - Make seeking work when using egl_render component - https://bugzilla.gnome.org/show_bug.cgi?id=726038 + * tests/examples/ges-ui.glade: + re-arrange tool-bar buttons -2014-03-24 17:49:59 +0100 Josep Torra +2010-08-04 17:34:51 +0200 Brandon Lewis - * omx/gstomxbufferpool.c: - omxbufferpool: return buffers to the pool instead of freeing them - We have to return the buffers back to the pool in when stopping to - not mess with the GstBufferPool accounting. - The OMX buffers will be freed when those won't be in charge of the - pool in the chained up call to 'stop'. - Fixes segfaults on finalize and pool not being properly deactivated. - https://bugzilla.gnome.org/show_bug.cgi?id=726337 + * tests/examples/ges-ui.c: + don't allow changes to timeline if we're paused -2014-03-19 12:12:49 +0100 Christian König +2010-08-04 17:27:01 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: add missing unlock in the error path - Signed-off-by: Christian König - https://bugzilla.gnome.org/show_bug.cgi?id=726958 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + implement the stop button -2014-03-18 23:36:59 +0100 Michal Lazo +2010-08-04 17:17:59 +0200 Brandon Lewis - * omx/gstomxh264enc.c: - * omx/gstomxh264enc.h: - fix filemode + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + add stop button -2014-03-17 09:57:11 +0000 Julien Isorce +2010-08-04 16:57:18 +0200 Brandon Lewis - * omx/gstomxbufferpool.c: - omxbufferpool: fix memory leak if used on output port - When using GstOMXBufferPool on an output port, it internally uses - a GPtrArray to manage the GstBuffers instead of the default queue - from the GstBufferPool base class. - In this case GstBufferPool::default_free_buffer is not called when - the pool is stopped. Because the queue is empty. So explicitely - call gst_omx_buffer_pool_free_buffer on each buffer contained in - the GPtrArray. - https://bugzilla.gnome.org/show_bug.cgi?id=726337 + * tests/examples/ges-ui.c: + code clean-up and comments -2014-03-16 17:32:05 +0100 Sebastian Dröge +2010-08-04 16:36:15 +0200 Brandon Lewis - * omx/gstomxh264enc.c: - omxh264enc: Fix compiler warnings + * tests/examples/ges-ui.c: + eliminate unecessary function prototypes -2014-03-16 17:19:08 +0100 Michal Lazo +2010-08-04 16:26:39 +0200 Brandon Lewis - * omx/gstomxh264enc.c: - * omx/gstomxh264enc.h: - omxh264enc: IDR interval, SPS and PPS headers for rpi - https://bugzilla.gnome.org/show_bug.cgi?id=720031 + * tests/examples/ges-ui.c: + move UI callbacks to end of file -2014-03-13 14:26:58 +0100 Christian König +2010-08-04 16:25:00 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideo.c: - omxvideo: fix debug category initialisation - https://bugzilla.gnome.org/show_bug.cgi?id=726024 + * tests/examples/ges-ui.c: + clean up application struct -2014-03-13 19:04:47 +0100 Christian König +2010-08-03 19:53:34 +0200 Brandon Lewis - * omx/gstomxbufferpool.h: - omxbufferpool: add proper type definitions - https://bugzilla.gnome.org/show_bug.cgi?id=726325 + * tests/examples/ges-ui.glade: + more xml tweaks -2014-03-02 10:30:04 +0100 Christian König +2010-08-03 19:42:35 +0200 Brandon Lewis - * omx/gstomx.c: - omx: consolidate message waiting code - Add a wait_message helper function and remove all those duplicated code. - https://bugzilla.gnome.org/show_bug.cgi?id=725493 + * tests/examples/ges-ui.c: + don't connect to selected objects unless selection is homogenous -2014-03-12 12:48:12 +0100 Sebastian Dröge +2010-08-03 19:38:13 +0200 Brandon Lewis - * omx/gstomxvideo.c: - omx: Copy old copyright notice into the new file + * tests/examples/ges-ui.glade: + UI layout tweaks -2014-03-12 12:47:34 +0100 Sebastian Dröge +2010-08-03 19:31:23 +0200 Brandon Lewis - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Rename function from _4_ to _for_ for clarity + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + only allow transitions to be added when the last object isn't a transition -2014-03-03 16:15:24 +0100 Christian König +2010-08-03 16:19:01 +0200 Brandon Lewis - * omx/Makefile.am: - * omx/gstomxvideo.c: - * omx/gstomxvideo.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideo: start sharing more code between video decoder and encoder - Identical functionality spread of two different components. - We can't use a common base class because of different inheritance, - but let's try to share the code anyway. - https://bugzilla.gnome.org/show_bug.cgi?id=726024 + * tests/examples/ges-ui.c: + use a private struct with get_selection_foreach -2014-03-12 12:43:49 +0100 Sebastian Dröge +2010-08-03 15:59:38 +0200 Brandon Lewis - * examples/egl/Makefile.am: - examples: Only build RPi EGL example if RPi was chosen as target + * tests/examples/ges-ui.c: + disable add_transition -2014-03-12 12:42:23 +0100 Sebastian Dröge +2010-08-03 15:54:25 +0200 Brandon Lewis - * omx/gstomxbufferpool.h: - omxbufferpool: Fix header include guard + * tests/examples/ges-ui.c: + get add_transition action from xml -2014-03-05 11:41:02 +0100 Christian König +2010-08-03 15:51:29 +0200 Brandon Lewis - * omx/Makefile.am: - * omx/gstomxbufferpool.c: - * omx/gstomxbufferpool.h: - * omx/gstomxvideodec.c: - omxvideodec: separate the buffer pool from the decoder - https://bugzilla.gnome.org/show_bug.cgi?id=726025 + * tests/examples/ges-ui.glade: + menu/toolbar for adding transitions -2014-03-04 17:41:20 +0100 Christian König +2010-08-03 15:40:44 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omx: simplify tunnel functions - Specifying the component is error prone and unnecessary. - https://bugzilla.gnome.org/show_bug.cgi?id=726021 + * tests/examples/ges-ui.c: + allow multiple selections -2014-03-07 17:12:24 +0100 Christian König +2010-08-03 15:17:25 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: fix memory leak in gst_omx_video_dec_allocate_output_buffers - https://bugzilla.gnome.org/show_bug.cgi?id=725907 + * tests/examples/ges-ui.c: + set pipeline to ready on EOS -2014-03-07 13:18:49 +0100 Christian König +2010-08-03 15:03:24 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: fix memory leak gst_omx_video_dec_negotiate - https://bugzilla.gnome.org/show_bug.cgi?id=725907 + * tests/examples/ges-ui.c: + make sure all actions that mutate timeline are disabled during playback -2014-03-05 18:54:05 +0100 Christian König +2010-08-03 14:58:15 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: fix a memory leak in gst_omx_video_enc_getcaps - https://bugzilla.gnome.org/show_bug.cgi?id=725826 + * tests/examples/ges-ui.c: + set frequency property when spin button changed -2014-03-05 17:43:33 +0100 Josep Torra +2010-08-03 14:53:22 +0200 Brandon Lewis - * Makefile.am: - Makefile.am: build examples - There's no reason to not build the examples now that are ported to 1.x. + * tests/examples/ges-ui.c: + update frequency spin button when selection changed -2014-03-05 17:25:09 +0100 Josep Torra +2010-08-03 14:46:21 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: avoid a clashing name with the recently added GstEGLImagePool - Fixes build with current master. + * tests/examples/ges-ui.glade: + add frequency and volume widgets, with signal handlers -2013-09-05 03:41:10 -0600 Christian König +2010-08-03 14:43:41 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: simplify _find_nearest_frame - Just the same as we did with the decoder. Also give the - function a gst_omx_video_enc prefix to distinct it from - the decoder function. - https://bugzilla.gnome.org/show_bug.cgi?id=724236 + * tests/examples/ges-ui.c: + update source volume when slider is moved -2013-09-05 02:23:39 -0600 Christian König +2010-08-03 14:39:56 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: simplify _find_nearest_frame - No need to make it more complicated and error prone than - necessary. Also give the function a gst_omx_video_dec prefix - to distinct it from the encoder function. - https://bugzilla.gnome.org/show_bug.cgi?id=724236 + * tests/examples/ges-ui.c: + update volume slider when volume changes -2013-09-05 02:05:52 -0600 Christian König +2010-08-03 14:38:42 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: remove dead code - This code doesn't seems to be used for quite a while, - remove it before it starts to rot. - https://bugzilla.gnome.org/show_bug.cgi?id=724236 + * tests/examples/ges-ui.c: + get freq/volume widgets -2014-03-01 22:28:24 +0100 Christian König +2010-08-02 19:06:06 +0200 Brandon Lewis - * omx/gstomx.c: - omx: fix two serious message handling bugs - Waiting for the next message if we already got one - is nonsense and can lead to lockups. - https://bugzilla.gnome.org/show_bug.cgi?id=725468 + * tests/examples/ges-ui.c: + implement background widget -2014-03-01 18:49:41 +0100 Christian König +2010-08-02 17:26:24 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: fix startup race condition - The reset function shouldn't start the src pad - loop if it wasn't started before. - Signed-off-by: Christian König + * tests/examples/ges-ui.c: + fill backround type table from enum values -2014-03-01 18:48:17 +0100 Christian König +2010-08-02 17:25:26 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: fix startup race condition - The reset function shouldn't start the src pad - loop if it wasn't started before. - Signed-off-by: Christian König + * tests/examples/ges-ui.c: + adjust visibility calculations -2014-02-28 09:36:13 +0100 Sebastian Dröge +2010-08-02 17:24:24 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From fe1672e to bcb1518 + * tests/examples/ges-ui.c: + allow adding test sources -2014-02-26 22:15:00 +0100 Stefan Sauer +2010-08-02 17:22:39 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 1a07da9 to fe1672e + * tests/examples/ges-ui.c: + get background widgets from xml -2014-01-30 10:45:18 +0100 Edward Hervey +2010-08-02 17:21:36 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From d48bed3 to 1a07da9 + * tests/examples/ges-ui.glade: + test sources -2014-01-25 17:44:14 +0100 Sebastian Dröge +2010-07-27 15:25:20 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Don't handle FLUSHING and NOT_LINKED as errors - Also don't stop the task on NOT_LINKED. We're not a demuxer. + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + add text box to set durations from formatted strings -2013-12-22 22:35:31 +0000 Tim-Philipp Müller +2010-07-26 20:40:06 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From dbedaa0 to d48bed3 + * tests/examples/ges-ui.c: + set sate of pipeline to NULL prior to exit -2013-11-05 11:22:02 +0000 Tim-Philipp Müller +2010-07-23 19:14:21 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 865aa20 to dbedaa0 + * tests/examples/ges-ui.c: + update text property from text widget -2013-09-28 13:32:37 +0200 Josep Torra +2010-07-23 18:59:40 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: simplify the thread synchronization code - Make everithing more simple and fix the races conditions remaining in - the previous approaches. + * tests/examples/ges-ui.c: + call ges_simple_timeline_layer_add_object intead of base method -2013-09-25 19:17:17 +0200 Sebastian Dröge +2010-07-23 18:59:11 +0200 Brandon Lewis - * config/rpi/gstomx.conf: - rpi: The WMV/VC1 decoder can only do WMV9 and VC1, no older versions + * tests/examples/ges-ui.c: + completely hide properties widgets when nothign is selected -2013-09-24 18:34:42 +0100 Tim-Philipp Müller +2010-07-23 18:56:48 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 6b03ba7 to 865aa20 + * tests/examples/ges-ui.c: + refactor connecto_to_* family of functions -2013-09-24 18:48:24 +0200 Josep Torra +2010-07-23 18:43:37 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: fix another race condition - Fix a race condition that caused randome deadlocks on EOS. + * tests/examples/ges-ui.c: + connect to text property widgets -2013-09-20 17:19:53 +0200 Josep Torra +2010-07-23 18:42:53 +0200 Brandon Lewis - * config/rpi/gstomx.conf: - rpi: fix a copy paste error in the config file + * tests/examples/ges-ui.glade: + add widgets to UI for editing text properties -2013-09-20 17:09:52 +0200 Josep Torra +2010-07-23 18:42:13 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: fix a race condition when seeking - Fixes a race condition that caused pipeline deadlock during seeks. + * tests/examples/ges-ui.c: + add signal handlers for text properties -2013-09-20 10:38:12 +0200 Josep Torra +2010-07-23 18:38:46 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: display QoS statistics + * tests/examples/ges-ui.c: + keep track of the type of selected objects -2013-09-20 09:34:37 +0200 Josep Torra +2010-07-23 18:36:54 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: use dedicated thread for rendering the scene - Produces smother animation and prevents dropping frames due busy - mainloop. + * tests/examples/ges-ui.c: + add title source when action activates -2013-09-20 08:25:21 +0200 Josep Torra +2010-07-23 10:58:11 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: don't force an specific audio sink - Let playbin2 choose the audiosink available in the system. + * tests/examples/ges-ui.glade: + add text properties to UI -2013-09-20 08:19:48 +0200 Josep Torra +2010-07-22 18:07:26 +0200 Brandon Lewis - * examples/egl/Makefile.am: - examples: drop remnants of initial appsink attempt + * tests/examples/ges-ui.c: + allow multiple files to be added -2013-09-20 16:18:18 +0200 Edward Hervey +2010-07-22 17:58:00 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From b613661 to 6b03ba7 + * tests/examples/ges-ui.c: + use file-chooser dialog when adding files -2013-09-19 18:45:36 +0100 Tim-Philipp Müller +2010-07-22 13:13:20 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 74a6857 to b613661 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + disable playback when there's nothing in the timeline -2013-09-19 17:38:30 +0100 Tim-Philipp Müller +2010-07-22 12:54:01 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 01a7a46 to 74a6857 + * tests/examples/ges-ui.c: + disable add_file during playback -2013-08-20 16:00:07 +0100 Tim-Philipp Müller +2010-07-22 12:51:07 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomxvideodec.c: - omx: don't use the 'z' modifier to print size_t - gcc will warn in some cases even if the size of the type - is exactly that of size_t on the platform. - https://bugzilla.gnome.org/show_bug.cgi?id=699008 + * tests/examples/ges-ui.c: + disable delete during playback -2013-07-01 15:48:47 +0200 Roman Arutyunyan +2010-07-22 12:48:34 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - gstomxvideoenc: Set bitrate in setcaps - Otherwise it gets lost whenever we configure new caps - https://bugzilla.gnome.org/show_bug.cgi?id=698049 + * tests/examples/ges-ui.c: + disable properties during playback -2013-06-30 18:17:05 +0700 Ilya Smelykh +2010-07-22 12:43:13 +0200 Brandon Lewis - * examples/egl/testegl.c: - examples: enable audio in testegl example + * tests/examples/ges-ui.c: + update state from bus; set button icon from playback state -2013-06-12 09:38:22 +0200 Sebastian Dröge +2010-07-22 12:20:59 +0200 Brandon Lewis - * configure.ac: - configure: Allow build without gstreamer-egl + * tests/examples/ges-ui.c: + set the action sensitivity, not the menu item -2013-06-07 12:39:18 +0700 Ilya Smelykh +2010-07-22 12:17:24 +0200 Brandon Lewis - * examples/egl/Makefile.am: - * examples/egl/testegl.c: - examples: testegl example port to 1.x - https://bugzilla.gnome.org/show_bug.cgi?id=701706 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + toggle playback when button clicked -2013-06-05 15:17:16 +0200 Sebastian Dröge +2010-07-22 12:08:28 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 098c0d7 to 01a7a46 + * tests/examples/ges-ui.c: + fix signal handler signatures -2013-05-20 12:06:34 +0200 Josep Torra +2010-07-22 12:05:09 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Take lock on EOS to update the flow return value - Fixes "GThread-ERROR **: file gthread-posix.c: line 171 - (g_mutex_free_posix_impl): error 'Device or resource busy' during - 'pthread_mutex_destroy ((pthread_mutex_t *) mutex)'" in _finalize. + * tests/examples/ges-ui.glade: + add play action/controls -2013-05-15 10:54:12 +0200 Sebastian Dröge +2010-07-22 11:00:15 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 5edcd85 to 098c0d7 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + add toolbar; connect to action signals instead of menu items directly -2013-04-11 17:35:19 +0200 Josep Torra +2010-07-22 10:18:41 +0200 Brandon Lewis - * Makefile.am: - * configure.ac: - * examples/Makefile.am: - * examples/egl/Makefile.am: - * examples/egl/cube_texture_and_coords.h: - * examples/egl/testegl.c: - examples: add an example aplication based OpenGL ES + EGL - Application that shows how to integrate playbin with an OpenGL ES - scene through EGL. Renders a video on the surfaces of an animated cube. - The code is not ported to 1.x so it's not built by default. + * tests/examples/ges-ui.c: + also set state of delete menu item -2013-05-10 12:25:07 +0200 Josep Torra +2010-07-21 20:21:01 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Redesign video size change reconfiguration code - Ensure stop the decoder before clossing the tunnel. + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + update in-point from in-point slider -2013-05-06 16:25:27 +0200 Sebastian Dröge +2010-07-21 19:02:09 +0200 Brandon Lewis - * Makefile.am: - Makefile.am: Add -I common/m4 - This allows autoreconf to work correctly and automatic regeneration - of autotools files if something changed. + * tests/examples/ges-ui.glade: + add in-point slider -2013-05-06 19:03:59 +0530 jitendra +2010-07-21 19:01:33 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Add pads based on element type - This allows to later add sources and sink that only have a srcpad - or sinkpad. - https://bugzilla.gnome.org/show_bug.cgi?id=699754 + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + format duration nicely -2013-04-27 02:50:25 +0200 Carlos Rafael Giani +2010-07-21 18:15:56 +0200 Brandon Lewis - * omx/gstomx.c: - omx: fixed type error in printf call - %zu expects size_t - https://bugzilla.gnome.org/show_bug.cgi?id=699008 + * tests/examples/ges-ui.c: + set slider range before setting duration -2013-04-08 17:26:16 +0100 Tim-Philipp Müller +2010-07-21 18:15:06 +0200 Brandon Lewis - * configure.ac: - * omx/Makefile.am: - * omx/gstomxvideodec.c: - Check for gstreamer-egl - And don't use if not available. - https://bugzilla.gnome.org/show_bug.cgi?id=697574 + * tests/examples/ges-ui.c: + remove some unneeded function protos -2013-04-23 09:53:18 +0100 Tim-Philipp Müller +2010-07-21 18:03:06 +0200 Brandon Lewis - * configure.ac: - configure: error out if no OMX target has been set explicitly with --with-omx-target=x - Avoids people building for e.g. the Raspberry Pi and then wondering - why things don't work as expected (since structs are packed differently - there). + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + slider updates duration of selected object now -2013-04-22 23:55:03 +0100 Tim-Philipp Müller +2010-07-21 17:00:35 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 3cb3d3c to 5edcd85 + * tests/examples/ges-ui.c: + connect to duration and max-duration changed of filesources -2013-04-18 22:07:28 +0000 Tim-Philipp Müller +2010-07-21 16:29:12 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomxaudioenc.c: - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: more printf format fixes - Fix printf formats again, so that gst-omx compiles warning- - free on the Raspberry Pi as well. Unfortunately OMX_UINT32 - maybe be typedefed to uint32_t or unsigned long, which - doesn't work well with our debugging printf format strings, - so just use %u for those and cast to guint. + * tests/examples/ges-ui.c: + do housekeeping each time selection is updated -2013-04-18 16:40:06 +0200 Josep Torra +2010-07-21 15:43:28 +0200 Brandon Lewis - * omx/gstomx.c: - omx: fixes unused variable 'comp' when GStreamer is built without debug + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + clean up the create_ui function a bit -2013-04-18 16:03:56 +0200 Josep Torra +2010-07-21 15:23:18 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: don't use 'self->dec_out_port' anymore and use just 'port' - Fixes some criticals. + * tests/examples/ges-ui.c: + disable properties editor when nothing is selected -2013-04-18 15:21:32 +0200 Josep Torra +2010-07-21 15:22:29 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: fixes 'port' may be used uninitialized in this function + * tests/examples/ges-ui.glade: + rename a few attributes -2013-04-18 12:03:31 +0200 Josep Torra +2010-07-21 13:54:24 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: silence warnings building for RPI related to 'vcos_*' + * tests/examples/ges-ui.c: + update list model when objects are removed from layer -2013-04-18 11:19:52 +0200 Josep Torra +2010-07-21 13:53:54 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Use new type from libgstvideo + * tests/examples/ges-ui.c: + delete selected objects from layer when user issues delete command -2013-04-16 14:50:49 +0530 jitendra +2010-07-21 13:53:01 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Disable output port before transition to idle state - https://bugzilla.gnome.org/show_bug.cgi?id=698109 + * tests/examples/ges-ui.c: + store a pointer to the list selection -2012-10-24 12:19:41 +0200 Sebastian Dröge +2010-07-21 11:40:18 +0200 Brandon Lewis - * configure.ac: - gst: Add better support for static plugins + * tests/examples/ges-ui.c: + display filename and duration of added clip -2013-04-14 17:57:34 +0100 Tim-Philipp Müller +2010-07-21 11:36:41 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From aed87ae to 3cb3d3c + * tests/examples/ges-ui.glade: + don't create tree model in XML -2013-04-12 17:58:30 +0100 Tim-Philipp Müller +2010-07-20 19:41:58 +0200 Brandon Lewis - * configure.ac: - configure: add --disable-fatal-warnings for disabling -Werror + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + make sure we get everythign we need from the XML file -2013-04-09 21:02:09 +0200 Stefan Sauer +2010-07-20 19:13:06 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 04c7a1e to aed87ae + * tests/examples/ges-ui.c: + connect to layer object-{added,removed} and display message -2013-04-08 17:02:32 +0100 Tim-Philipp Müller +2010-07-20 19:05:15 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomxaudioenc.c: - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: fix printf formats in debug messages - OMX_U32 is typedefed to an unsigned long, - OMX_TICKS to a 64-bit integer. + * tests/examples/ges-ui.c: + add some simple code to add a source to the timeline -2013-04-08 16:52:19 +0200 Josep Torra +2010-07-20 18:53:15 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: use the correct printf format in a debug message + * tests/examples/ges-ui.c: + add liscence and some organizational comments -2013-04-08 16:31:33 +0200 Josep Torra +2010-07-20 18:38:54 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: use the correct OMX_IndexParam value - Fixes playback is not smooth in the EGL path. + * tests/examples/ges-ui.c: + we don't have to free all that much, in fact -2013-04-05 13:45:24 +0200 Sebastian Dröge +2010-07-20 18:24:14 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Don't use API that is not in master yet - It's not really needed here yet, will be needed in future versions + * tests/examples/ges-ui.c: + create a simple timeline layer -2013-02-25 11:55:04 +0100 Sebastian Dröge +2010-07-20 17:59:59 +0200 Brandon Lewis - * configure.ac: - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Add support for egl_render on RPi + * tests/examples/ges-ui.c: + pass app instance to signal handlers -2013-03-22 19:26:54 +0000 Tim-Philipp Müller +2010-07-20 17:55:06 +0200 Brandon Lewis - * configure.ac: - Back to development + * tests/examples/ges-ui.c: + move app data to private struct -2013-03-22 19:23:14 +0000 Tim-Philipp Müller +2010-07-20 17:52:24 +0200 Brandon Lewis - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - omx: fix compiler warnings when compiling with -DG_DISABLE_ASSERT - As we do for releases. Fixes 'variable may be used uninitialized' - warnings. + * tests/examples/Makefile.am: + export dynamic symbols in examples so signal autoconnect works -=== release 1.0.0 === +2010-07-20 17:05:26 +0200 Brandon Lewis -2013-03-22 17:16:33 +0100 Sebastian Dröge + * tests/examples/ges-ui.c: + add protos so it builds under c90 mode - * AUTHORS: - * ChangeLog: - * Makefile.am: - * NEWS: - * RELEASE: - * configure.ac: - * gst-omx.doap: - Release 1.0.0 +2010-07-20 16:44:01 +0200 Brandon Lewis -2013-03-19 16:40:09 +0000 Tim-Philipp Müller + * tests/examples/Makefile.am: + add ges-ui.c to build system - * omx/gstomxtheoradec.h: - * omx/gstomxvp8dec.h: - omx: fix typo in copyright headers +2010-07-20 16:43:03 +0200 Brandon Lewis -2013-03-19 13:46:33 +0100 Sebastian Dröge + * configure.ac: + add GTK+ to configure.ac as optional dependency for examples UI - * config/rpi/gstomx.conf: - rpi: Fix commit that added the VC1 decoder +2010-07-20 16:23:40 +0200 Brandon Lewis -2013-03-19 13:27:35 +0100 Sebastian Dröge + * tests/examples/ges-ui.c: + * tests/examples/ges-ui.glade: + move ui to tests/examples - * config/rpi/gstomx.conf: - * omx/gstomxh263dec.c: - * omx/gstomxh264dec.c: - * omx/gstomxmjpegdec.c: - * omx/gstomxmpeg2videodec.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxtheoradec.c: - * omx/gstomxvideodec.c: - * omx/gstomxvp8dec.c: - * omx/gstomxwmvdec.c: - omx: Add more constraints to the default sink template caps +2010-07-20 15:56:12 +0200 Brandon Lewis -2013-03-19 13:10:39 +0100 Sebastian Dröge + * tools/ges-ui.c: + * tools/ges-ui.glade: + add 'add_file' menu item - * config/rpi/gstomx.conf: - rpi: Add VC1/WMV3 decoder - WMV2 and WMV1 (aka WMV 1-8) are not supported by RPi. +2010-07-20 13:57:28 +0200 Brandon Lewis -2013-03-19 12:59:20 +0100 Sebastian Dröge + * tools/ges-ui.c: + * tools/ges-ui.glade: + flesh out ui design a bit more - * config/rpi/gstomx.conf: - rpi: Add MJPEG decoder +2010-07-19 19:39:26 +0200 Brandon Lewis -2013-03-19 12:56:50 +0100 Sebastian Dröge + * tools/ges-ui.c: + * tools/ges-ui.glade: + quit when main window closes - * config/rpi/gstomx.conf: - rpi: Add VP8 decoder +2010-07-19 19:02:41 +0200 Brandon Lewis -2013-03-19 12:55:09 +0100 Sebastian Dröge + * tools/ges-ui.c: + check in UI implementation - * omx/gstomxvideodec.c: - omxvideodec: Set ENDOFFRAME flag for the end of frames +2010-07-19 18:09:32 +0200 Brandon Lewis -2013-03-19 12:28:50 +0100 Sebastian Dröge + * tools/ges-ui.glade: + check in ui file - * config/rpi/gstomx.conf: - rpi: Add Theora decoder to the config +2010-09-02 17:55:20 +0200 Edward Hervey -2013-03-19 09:36:18 +0100 Sebastian Dröge + * ges/ges-track-object.c: + GESTrackObject: Fix debug statement - * configure.ac: - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxtheoradec.c: - * omx/gstomxtheoradec.h: - omx: Add Theora decoder +2010-09-02 17:54:48 +0200 Edward Hervey -2013-03-18 16:43:24 +0100 Sebastian Dröge + * tests/check/ges/filesource.c: + tests: Fix a leak in test_filesource_images - * omx/gstomx.c: - omx: Remove additional comma +2010-09-01 17:04:26 +0200 Edward Hervey -2013-03-18 16:34:21 +0100 Sebastian Dröge + * ges/ges-timeline-source.c: + GESTimelineFileSource: Don't leak strings - * config/rpi/gstomx.conf: - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxmpeg2dec.h: - * omx/gstomxmpeg2videodec.c: - * omx/gstomxmpeg2videodec.h: - omx: Rename MPEG2 decoder for consistency everywhere +2010-07-16 16:43:38 +0200 Brandon Lewis -2013-03-18 16:30:40 +0100 Sebastian Dröge + * tests/check/ges/simplelayer.c: + update unit tests to catch an earlier bug - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxmjpegdec.c: - * omx/gstomxmjpegdec.h: - omx: Add MJPEG decoder support +2010-07-14 16:50:16 +0200 Brandon Lewis -2013-03-18 16:06:54 +0100 Sebastian Dröge + * tests/examples/Makefile.am: + * tests/examples/text_properties.c: + check in text properties example - * configure.ac: - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxvp8dec.c: - * omx/gstomxvp8dec.h: - omx: Add VP8 decoder support +2010-07-14 16:14:19 +0200 Brandon Lewis -2013-03-18 15:44:23 +0100 Sebastian Dröge + * ges/ges-timeline-source.c: + deactivate overlay when no text is present - * config/rpi/gstomx.conf: - rpi: Add h263 decoder and rename MPEG2 decoder for consistency +2010-07-14 16:12:56 +0200 Brandon Lewis -2013-03-16 13:20:27 +0000 Tim-Philipp Müller + * tests/check/Makefile.am: + * tests/check/ges/text_properties.c: + add unit tests for text properties - * omx/gstomxmpeg2dec.c: - omxmpeg2dec: mpeg-2 decoder should be able to handle mpeg-1 too - https://bugzilla.gnome.org/show_bug.cgi?id=695879 +2010-07-14 15:23:35 +0200 Brandon Lewis -2013-03-16 10:13:06 +0100 Josep Torra + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + expose text, font-desc, and alignment properties in GESTimelineSource - * omx/gstomx.c: - omx: minor stylistic change for consistency with other similar code +2010-07-14 15:19:30 +0200 Brandon Lewis -2013-03-16 10:00:24 +0100 Josep Torra + * ges/ges-timeline-text-overlay.c: + fix typo in docstring - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Clarify that loop task is also paused in EOS +2010-07-14 13:18:57 +0200 Brandon Lewis -2013-03-16 09:59:01 +0100 Josep Torra + * ges/ges-track-text-overlay.c: + add conversion elements to TrackTextOverlay - * omx/gstomxvideoenc.c: - omxvideoenec: Don't forget propagate flow return value upstream +2010-07-14 13:14:54 +0200 Brandon Lewis -2013-03-15 13:16:39 +0000 Tim-Philipp Müller + * ges/ges-simple-timeline-layer.c: + tweak gstl recalculate: cur track object sets priority for next transition - * omx/gstomx.c: - omx: improve debug logging some more +2010-07-13 18:44:41 +0200 Brandon Lewis -2013-03-15 14:09:45 +0100 Sebastian Dröge + * tests/check/ges/backgroundsource.c: + * tests/check/ges/layer.c: + * tests/check/ges/overlays.c: + * tests/check/ges/titles.c: + supply type param to _find_track_objects in unit tests - * omx/gstomxvideodec.c: - omxvideodec: Make sure that the first frame we pass to OpenMAX is a sync frame +2010-07-13 18:42:46 +0200 Brandon Lewis -2013-03-15 11:46:34 +0100 Sebastian Dröge + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + add type argument to ges_timeline_object_find_track_objects() - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Stop output port task after draining +2010-07-13 18:14:33 +0200 Brandon Lewis -2013-03-15 10:58:58 +0100 Sebastian Dröge + * tests/check/ges/simplelayer.c: + unref timeline in unit test - * omx/gstomx.c: - omx: Reset EOS flag in more places +2010-07-13 18:12:34 +0200 Brandon Lewis -2013-03-15 10:38:43 +0100 Sebastian Dröge + * ges/ges-timeline-source.c: + don't add the same track object twice - * omx/gstomxvideodec.c: - omxvideodec: Deallocate output buffers with the right function +2010-07-13 17:13:02 +0200 Brandon Lewis -2013-03-15 01:06:05 +0000 Tim-Philipp Müller + * ges/ges-timeline-title-source.c: + check for proper instance type in _set_* functions - * omx/gstomx.c: - * omx/gstomx.h: - omx: log commands as strings - Makes logs easier to read. +2010-07-13 12:11:06 +0200 Brandon Lewis -2013-03-15 00:47:47 +0000 Tim-Philipp Müller + * ges/ges-timeline-object.h: + fix documentation comment - * omx/gstomx.c: - * omx/gstomx.h: - omx: log states as strings +2010-07-09 18:59:41 +0200 Brandon Lewis -2013-03-15 00:28:02 +0000 Tim-Philipp Müller + * ges/ges-timeline-source.c: + create a text overlay with default text for every TimelineSource - * omx/gstomx.c: - * omx/gstomx.h: - omx: log component name in debug messages - Useful when we have more different components - active at the same time. +2010-07-09 18:29:27 +0200 Brandon Lewis -2013-03-15 09:51:42 +0100 Sebastian Dröge + * ges/ges-timeline-source.c: + * tests/check/ges/layer.c: + * tests/check/ges/simplelayer.c: + increase default priority offset for sources; update unit tests - * omx/gstomxvideodec.c: - omxvideodec: Don't interpolate timestamps - We will get exactly one frame per input buffer and assigning - timestamps between frames if more than one OMX buffer is required - per frame easily confuses timestamp tracking in OMX. +2010-07-09 18:27:19 +0200 Brandon Lewis -2013-03-15 09:32:42 +0100 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + move this commit down where it belongs - * omx/gstomxvideodec.c: - omxvideodec: Give the codec_data the timestamp of the first frame and no duration +2010-07-09 18:26:56 +0200 Brandon Lewis -2013-03-14 17:31:17 +0100 Sebastian Dröge + * ges/ges-timeline-source.c: + override create_track_objects (plural) in TimelineSource - * config/rpi/gstomx.conf: - omx: The MPEG4 encoder is not available on RPi and probably never will +2010-07-09 15:59:44 +0200 Brandon Lewis -2013-03-14 17:26:30 +0100 Sebastian Dröge + * tests/check/ges/layer.c: + test height notification - * omx/gstomx.c: - omx: Reset some more buffer fields as required +2010-07-09 13:49:23 +0200 Brandon Lewis -2013-03-14 17:01:08 +0100 Sebastian Dröge + * ges/ges-timeline-object.c: + update height when track object priority offset changes - * config/rpi/gstomx.conf: - * omx/gstomx.c: - omx: The hack to disable usage of EOS buffers is not necessary anymore on RPi +2010-07-09 13:48:19 +0200 Brandon Lewis -2013-03-14 17:00:12 +0100 Sebastian Dröge + * ges/ges-track-object.c: + * ges/ges-track-object.h: + reword priority documentation comments - * omx/gstomx.c: - omx: Reset the flags for output ports when releasing a buffer, not for input ports +2010-07-09 12:10:06 +0200 Brandon Lewis -2013-03-14 15:03:02 +0100 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + use object height in gstl recalcuate - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - omx: Only unref caps after usage of its fields +2010-07-09 12:09:29 +0200 Brandon Lewis -2013-03-14 14:51:32 +0100 Sebastian Dröge + * ges/ges-timeline-object.c: + initialize height to 1 - * omx/gstomxvideodec.c: - omxvideodec: Simplify bufferpool implementation +2010-07-09 12:09:08 +0200 Brandon Lewis -2013-03-13 13:23:35 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.h: + add accessor macro - * omx/gstomxvideodec.c: - omxvideodec: Improve min/max buffer counts handling +2010-07-09 11:51:21 +0200 Brandon Lewis -2013-03-14 12:49:42 +0100 Sebastian Dröge + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + add height property - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Handle the OMX_EventBufferFlag to detect EOS too +2010-07-09 11:50:31 +0200 Brandon Lewis -2013-03-13 10:29:23 +0100 Sebastian Dröge + * ges/ges-timeline-object.c: + document timelineobject::priority - * omx/gstomx.c: - * omx/gstomx.h: - omx: Mark OpenMAX buffers as EGLImage if they contain one - Needs special handling in some places, e.g. because nFilledLen - will always be 0. +2010-07-08 19:01:46 +0200 Brandon Lewis -2013-03-13 10:21:49 +0100 Sebastian Dröge + * ges/ges-track-object.c: + * tests/check/ges/layer.c: + expose priority-offset as a property - * omx/gstomxvideoenc.c: - omxvideoenc: Properly check the nVersion field +2010-07-08 18:52:15 +0200 Brandon Lewis -2013-03-13 09:34:43 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * tests/check/ges/layer.c: + update documentation and unit tests - * omx/gstomxvideoenc.c: - omxvideoenc: RPi returns garbage for OMX_IndexParamVideoBitrate, work around that +2010-07-08 18:51:38 +0200 Brandon Lewis -2013-03-12 20:02:53 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + distinguish between base_priority, priority_offset, and gnl_priority - * omx/gstomxvideodec.c: - omxvideodec: Make sure to always get the right buffer +2010-07-07 17:07:33 +0200 Brandon Lewis -2013-03-12 19:35:39 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + split timeline_object_add_track_object out of create_track_object - * omx/gstomxvideodec.c: - omxvideodec: Make sure the buffer is released to the pool if it's not the one we wanted +2010-07-07 16:51:39 +0200 Brandon Lewis -2013-03-12 19:17:08 +0100 Sebastian Dröge + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline.c: + add create_track_objects - * omx/gstomxvideodec.c: - omxvideodec: Drop too late frames instead of finishing them +2010-07-07 15:47:51 +0200 Brandon Lewis -2013-03-12 19:16:46 +0100 Sebastian Dröge + * ges/ges-timeline-object.h: + add create_track_objects declarations - * omx/gstomxvideodec.c: - omx: Release buffers to the correct port +2010-07-07 15:47:12 +0200 Brandon Lewis -2013-03-13 09:37:02 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + call create_track_objects in timeline.c - * omx/gstomx.c: - omx: Always load the OpenMAX IL cores with G_MODULE_BIND_LOCAL +2010-08-31 13:49:21 +0200 Edward Hervey -2013-03-12 18:20:22 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + GESTimelineTransition: Remove unneeded variable - * omx/gstomx.c: - omx: Lazy-load symbols of libbcm_host.so - It exports eglIntOpenMAXILDoneMarker(), which is also - exported by libopenmaxil.so... but we need the version - from libopenmaxil.so as the other one is just a stub. +2010-08-31 13:29:37 +0200 Edward Hervey -2013-03-11 13:59:15 +0100 Sebastian Dröge + * tools/ges-launch.c: + ges-launch: Fix memory leak - * omx/gstomxaacenc.c: - * omx/gstomxh263enc.c: - * omx/gstomxmpeg4videoenc.c: - omx: Don't set profile/level in other encoders if downstream caps don't specify any +2010-08-12 15:45:15 +0200 Brandon Lewis -2013-03-11 13:49:38 +0100 Sebastian Dröge + * ges/ges-track-image-source.c: + allow borders on still image videoscale - * omx/gstomxh264enc.c: - omxh264enc: If caps specify no profile/level use the component's defaults +2010-08-12 15:44:47 +0200 Brandon Lewis -2013-03-11 13:45:04 +0100 Sebastian Dröge + * ges/ges-timeline.c: + always support audio on still images - * omx/gstomxvideoenc.c: - omxvideoenc: Always allocate output buffers from the loop function +2010-08-11 18:23:17 +0200 Brandon Lewis -2013-03-11 13:12:57 +0100 Sebastian Dröge + * ges/ges-track-image-source.c: + remove ffmpegcolorspace after freeze (see 626518) - * omx/gstomxh264enc.c: - omxh264enc: The h264 encoders are supposed to output byte-stream/au +2010-08-10 16:17:07 +0200 Brandon Lewis -2013-03-11 11:47:42 +0100 Sebastian Dröge + * ges/ges-timeline.c: + don't set max duration on still images - * omx/gstomxvideoenc.c: - omxvideoenc: Wait until the Executing state is reached before passing buffers to the component +2010-08-10 10:54:04 +0200 Brandon Lewis -2013-03-11 10:39:25 +0100 Sebastian Dröge + * ges/ges-track-image-source.c: + implement still image sources - * omx/gstomxvideodec.c: - omxvideodec: Don't provide buffers to downstream - This only works reliable if we have a way to tell downstream to - release all our buffers for reconfiguration. +2010-08-09 18:36:00 +0200 Brandon Lewis -2013-03-11 10:29:44 +0100 Sebastian Dröge + * ges/ges-track-image-source.c: + naive implementation of still images (seems broken) - * omx/gstomxaudioenc.c: - omxaudioenc: Disable output port when setting a new format +2010-08-09 18:35:26 +0200 Brandon Lewis -2013-03-11 10:29:30 +0100 Sebastian Dröge + * ges/ges-timeline-file-source.c: + * tests/check/ges/filesource.c: + create GESTrackAudioTestSource for audio tracks when is-image is true - * omx/gstomxvideoenc.c: - omxvideoenc: Disable output port when setting a new format +2010-08-09 18:34:35 +0200 Brandon Lewis -2013-03-11 10:22:07 +0100 Sebastian Dröge + * ges/ges-timeline.c: + set 'is-image' property true when source has an image stream type - * omx/gstomxvideodec.c: - omxvideodec: Disable output port when setting a new format - Based on a patch by Josep Torra +2010-08-09 13:27:25 +0200 Brandon Lewis -2013-03-11 10:04:10 +0100 Sebastian Dröge + * tests/check/ges/filesource.c: + set supported formats in new unit test - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Catch errors when releasing buffers to a port and handle them +2010-08-09 13:26:20 +0200 Brandon Lewis -2013-03-10 12:09:23 +0100 Sebastian Dröge + * ges/ges-timeline-file-source.c: + create image sources when is_image is set to true - * omx/gstomxvideoenc.c: - omxvideoenc: Use the correct video codec state when filling an input buffer +2010-08-09 12:01:34 +0200 Brandon Lewis -2013-03-10 12:05:50 +0100 Sebastian Dröge + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + Add "is-image" property to GESTimelineFileSource - * omx/gstomxvideoenc.c: - omxvideoenc: Store correct input state +2010-08-09 11:59:04 +0200 Brandon Lewis -2013-03-10 11:27:34 +0100 Sebastian Dröge + * tests/check/ges/filesource.c: + unit test for image sources - * omx/gstomxvideoenc.c: - omxvideoenc: Allocate output buffers as early as possible +2010-08-06 12:58:08 +0200 Brandon Lewis -2013-03-10 11:01:57 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-track-image-source.c: + * ges/ges-track-image-source.h: + * ges/ges-types.h: + * ges/ges.h: + check in GESTrackImageSource - * omx/gstomx.c: - omx: Log unknown events +2010-08-05 12:19:32 +0200 Edward Hervey -2013-03-09 14:14:40 +0100 Josep Torra + * ges/Makefile.am: + ges: Also dist the generated files - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Fix deadlock in encoders and add explainatory comments. +2010-08-05 11:40:49 +0200 Edward Hervey -2013-03-09 13:27:08 +0100 Josep Torra + * ges/Makefile.am: + marshal: Fix typo in the Makefile that prevented marshal .c being built - * omx/gstomxvideodec.c: - omxvideodec: fix printf format identifier +2010-07-23 18:22:31 +0200 Brandon Lewis -2013-03-09 13:07:59 +0100 Josep Torra + * ges/ges-track-title-source.c: + link to the right sink pad on textoverlay object - * omx/gstomxvideodec.c: - omx: Minor changes on debuging info +2010-07-16 18:41:02 +0200 Brandon Lewis -2013-03-09 13:00:33 +0100 Josep Torra + * ges/ges-timeline-pipeline.c: + fwrite doesn't return the number of bytes written. check that fwrite is non-zero and that ferror() isn't set instead. - * omx/gstomxvideodec.c: - omxvideodec: avoid a deadlock +2010-07-16 18:39:07 +0200 Brandon Lewis -2013-03-08 15:56:40 +0100 Sebastian Dröge + * ges/ges-screenshot.c: + don't plug encoders when raw caps are given - * omx/gstomxvideodec.c: - omxvideodec: Don't forget to populate output port +2010-07-16 18:37:54 +0200 Brandon Lewis -2013-03-08 15:11:27 +0100 Sebastian Dröge + * tests/examples/Makefile.am: + * tests/examples/thumbnails.c: + add thumbnailing example which tests rest of thumbnailing api - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Flush and stop srcpad when configuring new caps +2010-07-16 17:38:44 +0200 Brandon Lewis -2013-03-07 17:40:21 +0100 Sebastian Dröge + * ges/ges-timeline-pipeline.c: + ges_caps_set_simple was being called incorrectly - * config/rpi/gstomx.conf: - * omx/gstomx.c: - Revert "omx: use no-component-reconfigure hack on the Raspberry PI" - This reverts commit e123b2089f69a413241f30a2428ea6edd8f231e7. - It's not required anymore after the fix from the last commit. +2010-07-16 18:17:27 +0200 Edward Hervey -2013-03-07 17:38:40 +0100 Sebastian Dröge + * docs/libs/Makefile.am: + docs: Use the proper location for header files - * omx/gstomxvideodec.c: - omxvideodec: Only negotiate a color format with downstream on the initial caps +2010-07-16 18:00:05 +0200 Edward Hervey -2013-03-07 17:29:43 +0100 Sebastian Dröge + * ges/Makefile.am: + ges: Don't forget to dist ges-timeline-overlay.h - * omx/gstomxvideodec.c: - omxvideodec: Make sure the output port is disabled while we allocate buffers +2010-07-16 17:29:05 +0200 Edward Hervey -2013-03-07 17:27:05 +0100 Sebastian Dröge + * ges/ges-timeline-pipeline.c: + TimelinePipeline: Make sure fwrite completes successfully - * omx/gstomx.c: - omx: Also wait for disabled output ports to be reconfigured +2010-07-15 19:50:22 +0200 Brandon Lewis -2013-03-07 14:10:12 +0100 Sebastian Dröge + * tools/ges-launch.c: + add option to ges-launch to save thumbnails periodicaly - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Add buffer pool for sharing OpenMAX memory with downstream +2010-07-15 19:49:53 +0200 Brandon Lewis -2013-03-07 11:11:58 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + update documentation - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Add timeout to the flush operation and move buffer populating to a separate function +2010-07-15 19:49:28 +0200 Brandon Lewis -2013-03-06 17:33:23 +0100 Sebastian Dröge + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + add routine to save a thumbnail in the specified encoding - * config/rpi/gstomx.conf: - * omx/gstomx.c: - * omx/gstomx.h: - omx: Remove min buffer count hack for RPi again - It's not necessary anymore +2010-07-15 19:19:57 +0200 Brandon Lewis -2013-03-06 17:05:51 +0100 Sebastian Dröge + * ges/ges-screenshot.c: + add todo item - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Do number of buffers configuration explicitely +2010-07-15 19:12:53 +0200 Brandon Lewis -2013-03-07 11:24:54 +0100 Josep Torra + * ges/ges-screenshot.c: + factor encoder-finding code into separate function - * omx/gstomxvideodec.c: - omxvideodec: fixes reconfiguration - Avoid having fixed fields from previous caps on reconfiguration. +2010-07-15 18:59:50 +0200 Brandon Lewis -2013-03-07 11:02:39 +0100 Josep Torra + * ges/ges-screenshot.c: + use gstprofile to plug an encoder and encode the current frame - * config/rpi/gstomx.conf: - * omx/gstomx.c: - omx: use no-component-reconfigure hack on the Raspberry PI +2010-07-15 16:58:22 +0200 Brandon Lewis -2013-03-07 00:03:28 +0000 Tim-Philipp Müller + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + add methods to retreive the current frame as a thumbnail - * common: - Automatic update of common submodule - From 2de221c to 04c7a1e +2010-07-15 16:56:00 +0200 Brandon Lewis -2013-03-01 15:32:47 +0100 Josep Torra + * ges/Makefile.am: + * ges/ges-screenshot.c: + * ges/ges-screenshot.h: + duplicate code from gstscreenshot.{c,h} and gstplaysink.{c,h} - * omx/gstomxvideoenc.h: - omxvideoenc: drop unused data member +2010-07-15 12:09:26 +0200 Edward Hervey -2013-03-01 12:23:54 +0100 Sebastian Dröge + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Use smartencoder feature from encodebin - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - omxvideoenc: And set it actually on the right port +2010-07-14 13:29:49 +0200 Edward Hervey -2013-03-01 12:18:08 +0100 Sebastian Dröge + * configure.ac: + configure: Require new core/base for fast pad linking - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - omxvideoenc: Set the coding type in the subclasses to the specific codec +2010-07-14 13:29:23 +0200 Edward Hervey -2013-03-01 11:49:53 +0100 Sebastian Dröge + * ges/ges-timeline-pipeline.c: + * ges/ges-track-audio-transition.c: + * ges/ges-track-title-source.c: + * ges/ges-track-video-transition.c: + GES: Switch to new fast pad linking - * omx/gstomxvideoenc.c: - omxvideoenc: gst_omx_port_update_port_definition() returns a OMX_ERRORTYPE, not a gboolean +2010-07-08 17:10:19 +0200 Brandon Lewis -2013-03-01 11:44:17 +0100 Sebastian Dröge + * tests/check/ges/transition.c: + fix mem leak in unit test - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideo{dec,enc}: Don't use the input state if it wasn't set yet +2010-07-08 16:35:43 +0200 Brandon Lewis -2013-03-01 11:25:04 +0100 Sebastian Dröge + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-timeline-test-source.c: + Don't expose test source enum value table - * omx/gstomxaudioenc.c: - omxaudioenc: Only enable the output port after we know the output format +2010-07-08 15:54:46 +0200 Brandon Lewis -2013-03-01 11:24:56 +0100 Sebastian Dröge + * ges/ges-enums.c: + * ges/ges-enums.h: + don't expose transition enum value table - * omx/gstomxvideoenc.c: - omxvideoenc: Only enable the output port after we know the output format +2010-07-08 15:54:27 +0200 Brandon Lewis -2013-02-28 17:02:31 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + use gtype to get the enum value for the nick - * omx/gstomxvideodec.c: - omxvideodec: Only enable the output port after we know the output format +2010-07-08 13:20:56 +0200 Brandon Lewis -2013-03-01 11:18:18 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + check whether setting vtype property actually succeeds - * omx/gstomx.c: - * omx/gstomx.h: - omx: Handle errors more gracefully +2010-07-07 18:00:21 +0200 Brandon Lewis -2013-02-28 15:48:53 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + * ges/ges-track-video-transition.c: + initialize transitions to type _TRANSITION_TYPE_NONE - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxh263dec.c: - * omx/gstomxh264dec.c: - * omx/gstomxmpeg2dec.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxvideodec.c: - * omx/gstomxwmvdec.c: - omx: Return the OMX_ERRORTYPE from gst_omx_port_update_port_definition +2010-07-08 13:41:12 +0200 Brandon Lewis -2013-02-28 15:37:53 +0100 Sebastian Dröge + * ges/ges-enums.c: + * ges/ges-enums.h: + add new invalid enum type - * omx/gstomx.c: - omx: Return port definition update errors +2010-07-08 13:20:56 +0200 Brandon Lewis -2013-02-28 13:57:43 +0100 Sebastian Dröge + * ges/ges-track-audio-transition.c: + * ges/ges-track-video-transition.c: + refactor duration_changed method as this is now a TrackObjectClass method - * config/rpi/gstomx.conf: - * omx/gstomx.c: - * omx/gstomx.h: - omx: Add hack for RPi for the minimum number of buffers required for a port - The value in the port definition is invalid and the initial actual - buffer count should be used. +2010-07-08 13:20:08 +0200 Brandon Lewis -2013-02-28 13:26:56 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + remove notify::duration signal handler - * omx/gstomx.c: - omx: Always tell the component about the right number of buffers that we're going to allocate +2010-07-08 12:35:41 +0200 Brandon Lewis -2013-02-28 13:07:58 +0100 Sebastian Dröge + * ges/ges-track-object.c: + * ges/ges-track-object.h: + add track object virtual methods for property change notifications - * omx/gstomx.c: - omx: Invert assertion to let it express what was intended +2010-07-07 17:58:59 +0200 Brandon Lewis -2013-02-28 11:19:07 +0100 Sebastian Dröge + * ges/ges-track-audio-transition.c: + * ges/ges-track-video-transition.c: + remove unneeded assertions - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Add API for allocating a specific number of buffers and using EGLImages or buffers allocated elsewhere +2010-07-07 17:34:58 +0200 Brandon Lewis -2013-02-27 16:55:16 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-overlay.h: + * ges/ges-timeline-transition.c: + * ges/ges-track-operation.c: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + remove unneeded _new methods on certain base classes - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Refactor code flow a bit if output port settings have changed +2010-07-06 19:08:56 +0200 Edward Hervey -2013-02-27 15:49:56 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + docs: Add ges_track_video_test_source_set_pattern - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Clean up port settings change handling +2010-07-06 19:07:50 +0200 Edward Hervey -2013-02-27 11:30:14 +0100 Josep Torra + * ges/ges-track-transition.c: + TrackTransition: Don't return anything for unhandled tracks - * omx/gstomxvideodec.c: - omxvideodec: initialize param structure before using it +2010-07-06 19:06:24 +0200 Edward Hervey -2013-02-27 10:21:39 +0100 Josep Torra + * ges/ges-track-audio-transition.c: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * ges/ges-track-video-transition.c: + TrackTransition: Remove second argument from duration_changed vmethod + And get properties directly from parent classes instead - * omx/gstomxvideoenc.c: - omxvideoenc: prevent a NULL pointer access +2010-07-06 19:05:38 +0200 Edward Hervey -2013-02-26 17:25:49 +0100 Josep Torra + * ges/ges-timeline-text-overlay.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-video-test-source.c: + GES: whitespace fixes - * omx/gstomxvideodec.c: - omxvideodec: prevent a NULL pointer access +2010-07-06 19:04:42 +0200 Edward Hervey -2013-02-25 13:11:16 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + GES: Simplify loops - * omx/gstomx.c: - omx: Fix deadlock during reconfiguration +2010-07-06 19:03:52 +0200 Edward Hervey -2013-02-25 12:38:27 +0100 Sebastian Dröge + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + GES: Remove un-needed branches + res it initialized to NULL - * omx/gstomx.c: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Auto-detect the port indizes if possible +2010-07-06 19:03:05 +0200 Edward Hervey -2013-02-25 11:42:38 +0100 Sebastian Dröge + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + GES: Fix initialization values - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Refactor querying of component supported caps into its own function +2010-07-06 19:02:02 +0200 Edward Hervey -2013-02-25 10:41:12 +0100 Sebastian Dröge + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-transition.c: + GES: Remove useless variables - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Refactor waiting for buffers to be released by the component to a separate function +2010-07-06 19:00:50 +0200 Edward Hervey -2013-01-11 17:44:13 +0000 Sebastian Dröge + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-transition.c: + * ges/ges-track-video-test-source.h: + GES: Fix function prototypes - * omx/gstomx.c: - * omx/gstomx.h: - omx: Add methods to set up and close a tunnel between components +2010-07-06 18:58:16 +0200 Edward Hervey -2013-02-25 09:15:53 +0100 Sebastian Dröge + * ges/ges-timeline-test-source.c: + TimelineTestSource: Set freq/volume whether mute or not - * omx/gstomxaacenc.c: - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - omxaudioenc: Rename component variable +2010-07-06 18:57:22 +0200 Edward Hervey -2013-02-25 09:15:46 +0100 Sebastian Dröge + * ges/ges-timeline-overlay.c: + TimelineOverlay: Fix doc - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Rename component variable +2010-07-06 18:54:33 +0200 Edward Hervey -2013-02-25 09:12:22 +0100 Sebastian Dröge + * ges/ges-track-video-transition.c: + * tests/check/ges/transition.c: + 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. - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Rename component variable +2010-07-06 16:27:21 +0200 Edward Hervey -2013-02-22 16:27:33 +0100 Josep Torra + * ges/ges-simple-timeline-layer.c: + SimpleTimelineLayer: Fix top-level doc - * omx/gstomxvideoenc.c: - omxvideoenc: remove duplicated line +2010-07-06 16:27:08 +0200 Edward Hervey -2013-02-22 10:42:08 +0100 Sebastian Dröge + * ges/ges-timeline-layer.c: + TimelineLayer: Document _set_priority - * omx/gstomx.c: - Retry loading libbcm_host.so without an absolute path if that failed +2010-07-06 16:26:48 +0200 Edward Hervey -2013-02-21 20:32:42 +0100 Sebastian Dröge + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + TrackVideoTransition: Use proper transition type - * config/bellagio/Makefile.am: - Add missing file from last commit +2010-07-06 16:26:26 +0200 Edward Hervey -2013-02-21 11:01:28 +0100 Sebastian Dröge + * ges/ges-utils.c: + utils: Document timeline_new_audio_video - * config/Makefile.am: - * config/bellagio/gstomx.conf: - * configure.ac: - * omx/Makefile.am: - Add OpenMAX IL target for Bellagio - Not tested since a very long time though. +2010-07-06 16:25:50 +0200 Edward Hervey -2013-02-21 10:59:29 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + docs: hide _get_type/TYPE in private sections - * configure.ac: - * omx/Makefile.am: - Allow using external OpenMAX IL headers +2010-07-02 16:39:33 +0200 Brandon Lewis -2013-02-21 10:14:12 +0100 Sebastian Dröge + * ges/ges-track-video-transition.h: + make type field of video transition private - * .gitignore: - Update .gitignore +2010-07-02 16:23:41 +0200 Brandon Lewis -2013-02-21 10:13:16 +0100 Sebastian Dröge + * docs/libs/ges.types: + * ges/ges-timeline-overlay.h: + * ges/ges-timeline-test-source.h: + * ges/ges-timeline-text-overlay.h: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-track-audio-test-source.h: + * ges/ges-track-audio-transition.h: + * ges/ges-track-text-overlay.h: + * ges/ges-track-title-source.h: + * ges/ges-track-transition.h: + * ges/ges-track-video-test-source.h: + * ges/ges-track-video-transition.h: + * ges/ges.h: + another massive documentation update - * config/Makefile.am: - * config/rpi/Makefile.am: - * config/rpi/gstomx.conf: - * configure.ac: - Install the RPI config when the RPI target is selected +2010-07-02 15:42:48 +0200 Brandon Lewis -2013-02-21 10:08:07 +0100 Sebastian Dröge + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-test-source.h: + * ges/ges-track-audio-test-source.c: + * tests/check/ges/backgroundsource.c: + expose freq and volume props in GESTimelineTestSource - * omx/gstomx.c: - Set default hacks for the RPI target and always initialize bcm_host +2010-07-02 14:46:09 +0200 Brandon Lewis -2013-02-21 10:05:37 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-test-source.h: + add routines to AudioTestSource to set freq and volume - * configure.ac: - Add configure parameter for setting the OpenMAX IL target +2010-07-02 13:14:19 +0200 Brandon Lewis -2013-02-12 11:55:39 +0100 Sebastian Dröge + * ges/ges-timeline-text-overlay.c: + * tests/check/ges/overlays.c: + remove 'mute' property from GESTimelineTextOverlay - * omx/gstomx.c: - omx: Add FIXME for the future +2010-07-02 12:57:38 +0200 Brandon Lewis -2013-02-12 11:49:21 +0100 Sebastian Dröge + * ges/ges-enums.c: + fix incorrect type name strings - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omx: Some minor refactoring and cleanup +2010-07-02 12:48:11 +0200 Brandon Lewis -2013-02-12 11:45:40 +0100 Sebastian Dröge + * docs/libs/ges.types: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-test-source.h: + * ges/ges-track-title-source.c: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-test-source.h: + * tests/check/ges/backgroundsource.c: + convert rest of code to use GESVideoTestPattern - * omx/gstomx.c: - omx: Don't access the port's buffers array if it wasn't allocated yet +2010-07-02 12:47:31 +0200 Brandon Lewis -2013-02-12 11:44:40 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/ges-enums.c: + * ges/ges-enums.h: + add GESVideoTestPattern enum + +2010-07-02 12:26:55 +0200 Brandon Lewis - * omx/gstomx.c: - omx: Mark an array as const + * tests/check/ges/overlays.c: + * tests/check/ges/titles.c: + update unit tests -2013-02-12 11:41:43 +0100 Sebastian Dröge +2010-07-02 12:26:42 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Split enabling/disabling of port into sending the command and waiting for it - This allows to do anything necessary after sending the command to actually let it finish + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + make sure to set properties on new track objects + +2010-07-02 12:25:58 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + replace existing text position enums + +2010-07-02 12:25:12 +0200 Brandon Lewis + + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + replace existing text position enums + +2010-07-02 12:12:30 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/ges-enums.c: + * ges/ges-enums.h: + add text positioning enums + +2010-07-01 18:53:08 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + move missing symbol to enums section + +2010-07-01 18:50:55 +0200 Brandon Lewis + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + update documentation files + +2010-07-01 18:50:30 +0200 Brandon Lewis + + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + * ges/ges-track-video-transition.c: + * tests/check/ges/simplelayer.c: + * tests/check/ges/transition.c: + * tools/ges-launch.c: + move and rename TRANSITION_VTYPE into enums.h and rename + +2010-07-01 17:24:49 +0200 Brandon Lewis + + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges-track.c: + * ges/ges-track.h: + move track type enum to ges-enums.{h,c} + +2010-07-01 17:03:55 +0200 Brandon Lewis + + * ges/Makefile.am: + * ges/ges-enums.c: + * ges/ges-enums.h: + * ges/ges.h: + check in skeletal ges-enums.{c,h} + +2010-07-01 16:48:45 +0200 Brandon Lewis + + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-overlay.h: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-transition.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-transition.c: + * ges/ges-track-filesource.c: + * ges/ges-track-object.c: + * ges/ges-track-operation.c: + * ges/ges-track-operation.h: + * ges/ges-track-source.h: + * ges/ges-track-text-overlay.c: + * ges/ges-track-title-source.c: + * ges/ges-track-transition.c: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-transition.c: + massive documentation updates + +2010-07-01 12:35:31 +0200 Brandon Lewis + + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + GESTimelineTextOverlay inherits from GESTimelineOverlay + +2010-07-01 12:34:46 +0200 Brandon Lewis + + * ges/Makefile.am: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-overlay.h: + * ges/ges-types.h: + * ges/ges.h: + check in emtpy GESTimelineOverlay class + +2010-07-01 11:17:46 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-text-overlay.c: + * ges/ges-timeline-text-overlay.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/overlays.c: + * tests/examples/overlays.c: + GESTimelineOverlay -> GESTimelineTextOverlay + +2010-06-30 20:25:18 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-test-source.c: + * ges/ges-timeline-test-source.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + * tools/ges-launch.c: + GESTimelineBackgroundSource -> GESTimelineTestSource + +2010-06-30 20:01:18 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-background-source.c: + * ges/ges-timeline-title-source.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-test-source.h: + * ges/ges-types.h: + * ges/ges.h: + GESTrackAudioBackgroundSource -> GESTrackAudioTestSource + +2010-06-30 19:34:29 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-background-source.c: + * ges/ges-track-audio-test-source.c: + * ges/ges-track-audio-test-source.h: + * ges/ges-track-title-source.c: + * ges/ges-track-video-test-source.c: + * ges/ges-track-video-test-source.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + GESTrackVideoBackgroundSource -> GESTrackVideoTestSource + +2010-06-30 18:13:35 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-overlay.c: + * ges/ges-track-text-overlay.c: + * ges/ges-track-text-overlay.h: + * ges/ges-types.h: + * ges/ges.h: + * tests/check/ges/overlays.c: + GESTrackVideoOverlay -> GESTrackTextOverlay + +2010-06-30 18:02:49 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-track-overlay.c: + * ges/ges-track-overlay.h: + * ges/ges-types.h: + * ges/ges.h: + remove GESTrackOverlay + +2010-06-30 17:59:17 +0200 Brandon Lewis + + * ges/ges-timeline-overlay.c: + * ges/ges-track-video-overlay.c: + * ges/ges-track-video-overlay.h: + * tests/check/ges/overlays.c: + GESTrackVideoOverlay inherits directly from GESTrackOperation + +2010-06-30 17:50:49 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-track-operation.c: + * ges/ges-track-operation.h: + * ges/ges-types.h: + check in GESTrackOperation + +2010-06-30 17:34:54 +0200 Brandon Lewis + + * docs/libs/ges-docs.sgml: + * ges/ges-track-video-background-source.h: + documentation fixes + +2010-06-30 17:29:32 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + update documentation + +2010-06-30 17:29:21 +0200 Brandon Lewis + + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-track-overlay.c: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * ges/ges-track-video-overlay.c: + * ges/ges-track-video-overlay.h: + * ges/ges-types.h: + * tests/check/ges/overlays.c: + * tests/check/ges/titles.c: + GESTrackVideoTitleSource -> GESTrackTitleSource + +2010-06-30 17:02:10 +0200 Brandon Lewis + + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-title-source.c: + * ges/ges-track-overlay.c: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * ges/ges-track-video-overlay.c: + * ges/ges-track-video-overlay.h: + * ges/ges-track-video-title-source.c: + * ges/ges-track-video-title-source.h: + * ges/ges-types.h: + * ges/ges.h: + remove GESTrackTitleSource -2013-02-12 11:37:38 +0100 Sebastian Dröge +2010-06-30 16:47:29 +0200 Brandon Lewis - * omx/gstomx.c: - omx: Flushing is also allowed in Paused state + * ges/ges-track-source.h: + fix doc comments -2013-02-12 11:28:36 +0100 Sebastian Dröge +2010-06-30 16:47:12 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Set stride, slice height and buffer size + * ges/ges-timeline-title-source.c: + * ges/ges-track-video-title-source.c: + * ges/ges-track-video-title-source.h: + GESTrackVideoTitleSource inherits directly from GESTrackObject -2013-02-12 11:09:30 +0100 Sebastian Dröge +2010-06-30 16:34:47 +0200 Brandon Lewis - * config/raspberry-pi.conf: - config: Add h264 and mpeg2 encoders to the raspberry pi config - Not completely working yet though. + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-background-source.c: + * ges/ges-track-audio-background-source.h: + * ges/ges-track-background-source.c: + * ges/ges-track-background-source.h: + * ges/ges-types.h: + * ges/ges.h: + remove GESTrackBackgroundSource class -2013-02-12 11:03:32 +0100 Sebastian Dröge +2010-06-30 16:29:04 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Properly negotiate OMX color format with the component + * ges/ges-track-audio-background-source.c: + * ges/ges-track-audio-background-source.h: + GESTrackAudioBackgroundSource inherits from GESTrackSource -2013-02-12 10:53:24 +0100 Sebastian Dröge +2010-06-30 16:25:01 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Implement getcaps() vfunc + * ges/ges-track-video-background-source.c: + * ges/ges-track-video-background-source.h: + GESTrackVideoBackgroundSource inherits directly from track object -2013-01-29 21:32:53 +0000 Tim-Philipp Müller +2010-06-30 15:40:31 +0200 Brandon Lewis - * configure.ac: - configure: use 1.0 gstconfig.h to detect disabled subsystems - Update unused configure check for GStreamer core subsystem - features from 0.10 to 1.0. + * ges/ges-track-source.c: + * ges/ges-track-source.h: + move create_element virtual method up to TimelineSource class -2013-01-28 20:44:41 +0100 Stefan Sauer +2010-06-30 15:39:24 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From a942293 to 2de221c + * docs/libs/ges-sections.txt: + fix documentation mistake -2013-01-24 14:02:36 +0100 Julian Scheel +2010-06-30 13:22:04 +0200 Brandon Lewis - * config/raspberry-pi.conf: - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxmpeg2dec.c: - * omx/gstomxmpeg2dec.h: - omx: add mpeg2 video decoder - This adds a decoder class for mpeg2, as well as an extended - configuration for raspberry pi. - https://bugzilla.gnome.org/show_bug.cgi?id=692446 - Signed-off-by: Julian Scheel + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-track-audio-title-source.c: + * ges/ges-track-audio-title-source.h: + * ges/ges-types.h: + * ges/ges.h: + remove GESTrackAudioTitleSource -2013-01-18 16:47:04 +0100 Sebastian Dröge +2010-06-28 18:24:12 +0200 Brandon Lewis - * omx/gstomx.c: - omx: Minimize the time when the messages lock is held - Fixes a deadlock if any OMX functions are called when the - messages are handled. - Thanks to Nicolas Dufresne for noticing. + * ges/ges-timeline-title-source.c: + create test track object instead of audio-title-source -2013-01-18 15:28:20 +0000 Tim-Philipp Müller +2010-06-28 18:23:37 +0200 Brandon Lewis - * omx/gstomx.c: - omx: improve debug message when we can't find the config file - Mention where we looked for the config file. + * ges/ges-track-video-transition.c: + keep track of and release request pads for smpte also -2013-01-18 12:34:38 +0000 Tim-Philipp Müller +2010-06-28 18:20:15 +0200 Brandon Lewis - * configure.ac: - build: fix autogen.sh with automake 1.13 - AM_CONFIG_HEADER -> AC_CONFIG_HEADERS + * ges/ges-track-video-transition.c: + free mixer in dispose separately from sink pads -2013-01-17 18:07:41 +0100 Sebastian Dröge +2010-06-28 17:33:53 +0200 Edward Hervey - * omx/gstomx.h: - * omx/gstomxaudioenc.h: - * omx/gstomxvideodec.h: - * omx/gstomxvideoenc.h: - omx: Fix includes to properly work with the 1.0 releases + * tests/examples/.gitignore: + examples: Ignore files -2013-01-15 15:08:28 +0000 Tim-Philipp Müller +2010-06-28 17:33:34 +0200 Edward Hervey - * common: - Automatic update of common submodule - From a72faea to a942293 + * tests/check/ges/.gitignore: + check: Ignore files -2013-01-15 14:34:45 +0100 Sebastian Dröge +2010-06-28 17:24:25 +0200 Edward Hervey - * omx/gstomx.c: - omx: Update port definition when changing some port setting + * docs/libs/ges-docs.sgml: + docs: Add links to all new documentation files -2013-01-14 11:41:57 +0100 Sebastian Dröge +2010-06-28 17:23:49 +0200 Edward Hervey - * omx/Makefile.am: - * omx/gstomx.c: - omx: Rename from libgstopenmax.so to ligstomx.so for consistency + * tests/examples/overlays.c: + tests: Add for exit usage -2013-01-11 15:32:22 +0000 Nicolas Dufresne +2010-06-25 12:04:47 +0200 Brandon Lewis - * omx/gstomx.c: - omx: Add a method to send message + * ges/ges-track-video-overlay.c: + don't forget to unref pad targets -2013-01-11 15:44:38 +0100 Sebastian Dröge +2010-06-23 18:23:31 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomx.h: - omx: Atomic ops are not required anymore for the reconfiguration + * ges/ges-track-video-overlay.c: + rough overlay implementation -2013-01-11 12:52:10 +0100 Sebastian Dröge +2010-06-23 18:22:56 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Fix some memory leaks and suboptimal locking + * tests/examples/Makefile.am: + * tests/examples/overlays.c: + check in overlay test app -2013-01-11 12:34:04 +0100 Sebastian Dröge +2010-06-23 16:42:14 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Don't forget to unmap frame in error cases + * ges/ges-timeline-overlay.c: + activate property setting functions -2013-01-11 12:29:20 +0100 Sebastian Dröge +2010-06-23 16:38:45 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Fix copying of the video frames to the OMX buffers + * tests/check/ges/overlays.c: + activate remaining overlay tests -2013-01-11 12:24:13 +0100 Sebastian Dröge +2010-06-23 16:38:19 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Fix copying of the video frames from the OMX buffers + * ges/ges.h: + add video overlays to main header -2013-01-10 14:44:33 +0100 Sebastian Dröge +2010-06-23 16:32:25 +0200 Brandon Lewis - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxrecmutex.c: - * omx/gstomxrecmutex.h: - omx: Implement new approach for locking that should solve all deadlocks on RPi - No mutex is locked while calling any OpenMAX functions anymore - and everything from the OpenMAX callbacks is inserted into a message - queue and handled from outside the callbacks. - Also there's only a single mutex and condition variable per component - now for handling anything from OpenMAX callbacks and a single mutex - for keeping our component/port state sane. + * ges/ges-timeline-overlay.c: + create timeline-overly creates appropriate track object -2012-12-20 19:30:38 +0100 Sebastian Dröge +2010-06-23 16:30:18 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Set the OMX buffer nFilledLength field properly + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-track-video-overlay.c: + * ges/ges-track-video-overlay.h: + * ges/ges-types.h: + check in GESTrackVideoOverlay -2012-12-20 18:48:21 +0100 Sebastian Dröge +2010-06-21 16:22:06 +0200 Brandon Lewis - * omx/gstomxrecmutex.c: - * omx/gstomxrecmutex.h: - omxrecmutex: Fix another race condition when two threads are trying to lock for recursion at the same time + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-overlay.c: + * ges/ges-track-overlay.c: + * ges/ges-track-overlay.h: + * ges/ges-types.h: + * ges/ges.h: + check in ges-track-overlay.{c,h} -2012-12-20 18:16:43 +0100 Sebastian Dröge +2010-06-21 16:04:22 +0200 Brandon Lewis - * omx/gstomxrecmutex.c: - * omx/gstomxrecmutex.h: - omxrecmutex: Fix yet another race condition that resulted in deadlocks + * tests/check/Makefile.am: + * tests/check/ges/overlays.c: + check in overlay unit tests -2012-12-20 17:46:36 +0100 Sebastian Dröge +2010-06-21 15:47:04 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomxrecmutex.c: - * omx/gstomxrecmutex.h: - omx: Fix another race condition in the recursive mutex - Between lock() and begin_recursion() it was possible for another thread to - try to do a recursive_lock(). This would block because the mutex was already - locked(), but not ready for recursive locking yet. unlock() would never - happen in the original thread because it was waiting for the other thread - to finish first. - Happened on the Raspberry Pi. + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-overlay.c: + * ges/ges-timeline-overlay.h: + * ges/ges-types.h: + * ges/ges.h: + check in timelineoverlay, structural copy of GESTimelineTitleSource -2012-12-20 14:45:18 +0100 Sebastian Dröge +2010-06-21 16:04:50 +0200 Brandon Lewis - * omx/gstomxrecmutex.c: - * omx/gstomxrecmutex.h: - omxrecmutex: Fix a small race condition when unlocking a non-recursive lock + * ges/ges-track-transition.h: + update doc comment -2012-12-20 12:30:05 +0100 Sebastian Dröge +2010-06-18 16:36:54 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Fix ununsed variable compiler warning + * ges/ges-track-audio-transition.c: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * ges/ges-track-video-transition.c: + remove unneeded paramenter to create_element -2012-12-20 12:27:47 +0100 Sebastian Dröge +2010-06-18 16:26:24 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: No need to start the srcpad task in ::start() already - It will be started properly after the caps are set. + * tests/check/ges/transition.c: + update unit tests -2012-12-20 12:23:49 +0100 Sebastian Dröge +2010-06-18 16:22:38 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: OMX_ErrorNoMore is no error and just means we ended iteration + * docs/libs/ges-sections.txt: + update documentation -2012-12-20 12:20:31 +0100 Sebastian Dröge +2010-06-18 16:22:21 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Improve debug output + * ges/ges-timeline-transition.c: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + push struct fields down to VideoTransition -2012-12-20 12:02:30 +0100 Sebastian Dröge +2010-06-18 15:54:37 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Don't forget to free a GList + * ges/ges-track-transition.c: + * ges/ges-track-video-transition.c: + push make_video_bin() down into subclass -2012-12-20 11:56:29 +0100 Sebastian Dröge +2010-06-18 15:21:02 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Map OMX_COLOR_FormatYUV420PackedPlanar to I420 too - This is used on the Raspberry Pi. + * ges/ges-track-audio-transition.c: + * ges/ges-track-audio-transition.h: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + push relevant struct fields into AudioTransition -2012-12-20 11:55:36 +0100 Sebastian Dröge +2010-06-18 15:20:06 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: During negotiation of the output format make sure we use the correct OpenMAX format + * docs/libs/ges-sections.txt: + update documentation -2012-12-20 11:42:17 +0100 Sebastian Dröge +2010-06-18 15:04:50 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: If negotiation fails this could also mean that the component can't do it at this point yet + * ges/ges-track-audio-transition.c: + * ges/ges-track-transition.c: + push make_audio_bin down into subclass -2012-12-20 11:40:13 +0100 Sebastian Dröge +2010-06-18 13:42:47 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Improve format negotiation a bit - Don't leak caps and make sure to fixate caps. + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + add duration_changed virtual method to GESTrackTransition -2012-12-19 13:05:28 +0100 Sebastian Dröge +2010-06-18 12:55:30 +0200 Brandon Lewis - * omx/gstomx.h: - omx: Also initialize nStep field of the OMX structures + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + add create_element vmethod to GESTrackTransition -2012-12-19 13:03:37 +0100 Sebastian Dröge +2010-06-18 11:50:08 +0200 Brandon Lewis - * omx/gstomx.h: - omx: Initialize struct version with the OMX version we compiled with + * ges/ges-timeline-transition.c: + create transition subtype according to track type -2012-12-19 12:44:31 +0100 Sebastian Dröge +2010-06-18 11:24:07 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Extract data from the input buffer, not the codec data + * ges/Makefile.am: + * ges/ges-track-video-transition.c: + * ges/ges-track-video-transition.h: + * ges/ges-types.h: + check in GESTrackVideoTransition, empty subclass of TrackTransition -2012-12-19 12:19:12 +0100 Sebastian Dröge +2010-06-18 11:09:28 +0200 Brandon Lewis - * omx/gstomx.c: - * tools/listcomponents.c: - omx: Use has_suffix() instead of has_prefix() for the Broadcom hack + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-track-audio-transition.c: + * ges/ges-track-audio-transition.h: + * ges/ges-types.h: + check in GESTrackAudioTransition, empyt subclass of TrackTransition -2012-12-19 12:08:35 +0100 Sebastian Dröge +2010-06-17 18:31:07 +0200 Brandon Lewis - * Makefile.am: - * configure.ac: - * tools/Makefile.am: - * tools/listcomponents.c: - tools: Add tool to list all components and their roles + * ges/ges-track-video-title-source.c: + * ges/ges-track-video-title-source.h: + fix header file param names -2012-12-19 11:31:51 +0100 Sebastian Dröge +2010-06-17 12:25:27 +0200 Brandon Lewis - * omx/gstomx.c: - omx: Add hack to load and initialize libbcm_host.so - Needed on the Raspberry Pi. Patch based on a patch by - George Kiagiadakis + * ges/ges-track-video-title-source.c: + fix stupid copy/paste typo -2012-12-19 11:22:16 +0100 Sebastian Dröge +2010-06-17 11:22:30 +0200 Brandon Lewis - * configure.ac: - * omx/gstomx.h: - configure: Add configure option to pack OpenMAX structures - This is required to set to 4 for the Raspberry Pi for example. + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-transition.c: + * ges/ges-track-video-title-source.c: + free existing strings before assigning new ones -2012-12-19 11:07:44 +0100 Sebastian Dröge +2010-06-17 11:21:43 +0200 Brandon Lewis - * configure.ac: - configure: Require GStreamer 1.0.0 + * tests/check/ges/titles.c: + clean up some memory leaks in the titles unit test -2012-04-20 17:13:52 +0300 George Kiagiadakis +2010-06-16 19:04:53 +0200 Brandon Lewis - * omx/gstomx.h: - omx: Initialize structures to version 1.1.2 + * tests/check/ges/titles.c: + unit tests for {h,v}alignment properties -2012-12-19 09:51:22 +0000 Sebastian Dröge +2010-06-16 19:03:51 +0200 Brandon Lewis - * Makefile.am: - * config/Makefile.am: - * config/raspberry-pi.conf: - * configure.ac: - config: Add raspberry-pi configuration in a different directory + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + implement {h,v}alignment property for timeline titles -2012-05-20 20:11:59 +0300 George Kiagiadakis +2010-06-16 19:02:40 +0200 Brandon Lewis - * omx/gstomx-raspberry.conf: - raspberry: Add a gstomx.conf for the Raspberry Pi + * docs/libs/ges-sections.txt: + documentation -2012-12-12 17:45:39 +0000 Sebastian Dröge +2010-06-16 19:01:48 +0200 Brandon Lewis - * omx/gstomx.h: - * omx/gstomxvideoenc.h: - omx: Fix some compilation errors caused by circular includes + * ges/ges-track-video-title-source.c: + * ges/ges-track-video-title-source.h: + add ..._set_{h,v}alignment() methods to video titles -2012-11-19 11:29:44 +0000 Tim-Philipp Müller +2010-06-16 16:58:42 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 6bb6951 to a72faea + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + add font-desc property to TimelineTitleSource -2012-11-12 15:14:09 +0100 Sebastian Dröge - - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Fix refcount problem with frames being dropped because of decoder bugs - -2012-11-12 11:29:48 +0100 Sebastian Dröge - - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - * omx/gstomxrecmutex.c: - * omx/gstomxrecmutex.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omx: Update to new GLib thread API - -2012-10-22 14:34:53 +0200 Sebastian Dröge - - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Use open/close vfuncs - -2012-10-22 14:28:04 +0200 Sebastian Dröge - - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Handle video meta correctly - -2012-06-20 13:11:58 +0100 Sebastian Dröge - - * omx/Makefile.am: - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - * omx/gstbasevideodecoder.h: - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - * omx/gstbasevideoutils.c: - * omx/gstbasevideoutils.h: - * omx/gstomxh263dec.c: - * omx/gstomxh263enc.c: - * omx/gstomxh264dec.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - * omx/gstomxwmvdec.c: - omx: Port to video base classes from -base - -2012-10-17 17:57:43 +0100 Tim-Philipp Müller - - * omx/gstomxaacenc.c: - * omx/gstomxh263dec.c: - * omx/gstomxh263enc.c: - * omx/gstomxh264dec.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxwmvdec.c: - omx: gst_element_class_set_details_simple() -> set_static_metadata() - -2012-10-06 15:01:11 +0100 Tim-Philipp Müller +2010-06-16 16:58:13 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 6c0b52c to 6bb6951 + * docs/libs/ges-sections.txt: + * ges/ges-track-video-title-source.c: + * ges/ges-track-video-title-source.h: + add ...set_font_desc() method to VideoTitleSource -2012-09-22 16:10:38 +0100 Tim-Philipp Müller +2010-06-16 13:27:35 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 4f962f7 to 6c0b52c + * ges/ges-track-video-title-source.c: + set black background on titles by default -2012-06-21 20:22:13 +0300 George Kiagiadakis +2010-06-16 13:22:15 +0200 Brandon Lewis - * omx/gstomx.c: - omx: fix debug statement + * tools/ges-launch.c: + add title sources to ges-launch -2012-06-21 20:21:03 +0300 George Kiagiadakis +2010-06-16 13:21:19 +0200 Brandon Lewis - * omx/gstomx.c: - omx: use recursive_lock inside set_last_error(), since this function may be called from an event handler + * ges/ges-timeline-title-source.c: + have timeline title source create audio title sources -2012-08-22 13:31:59 +0200 Stefan Sauer +2010-06-16 13:20:54 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 668acee to 4f962f7 + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-track-audio-title-source.c: + * ges/ges-track-audio-title-source.h: + * ges/ges-types.h: + * ges/ges.h: + check in ges-track-audio-title-source.{c,h} -2012-08-05 16:42:43 +0100 Tim-Philipp Müller +2010-06-15 19:22:04 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 94ccf4c to 668acee + * ges/ges-track-video-title-source.c: + don't forget to check for null -2012-08-03 19:32:13 +0100 Tim-Philipp Müller +2010-06-15 19:21:37 +0200 Brandon Lewis - * omx/gstomx.c: - omx: fix plugin name for new GST_PLUGIN_DEFINE API + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + set text on video track objects when text property changes -2012-07-23 08:47:32 +0200 Sebastian Dröge +2010-06-15 19:20:17 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 98e386f to 94ccf4c + * ges/ges-timeline-title-source.c: + implement ges_timeline_title_source_create_track_object -2012-07-10 09:57:09 +0200 Sebastian Dröge +2010-06-15 17:10:17 +0200 Brandon Lewis - * omx/gstbasevideodecoder.c: - omx: Update for allocation query API changes + * ges/ges-track-video-background-source.h: + remove trailing '$' accidentally pasted -2012-06-20 11:09:13 +0100 Sebastian Dröge +2010-06-15 17:09:50 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Fix compilation after gst_pad_start_task() API changes + * docs/libs/ges-sections.txt: + update documentation -2012-06-08 15:06:35 +0200 Edward Hervey +2010-06-15 17:09:31 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 03a0e57 to 98e386f + * ges/ges-track-video-title-source.c: + * ges/ges-track-video-title-source.h: + these should have been checked in before -2012-06-06 18:20:18 +0200 Edward Hervey +2010-06-15 13:16:28 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 1fab359 to 03a0e57 + * ges/ges-timeline-title-source.c: + add text property to GESTimelineTitleSource -2012-06-01 10:30:27 +0200 Edward Hervey +2010-06-15 13:14:14 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From f1b5a96 to 1fab359 + * tests/check/Makefile.am: + * tests/check/ges/titles.c: + check in unit tests for titles -2012-05-31 13:10:33 +0200 Sebastian Dröge +2010-06-14 19:19:23 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 92b7266 to f1b5a96 + * docs/libs/ges-sections.txt: + * ges/ges-timeline-background-source.c: + * ges/ges-timeline-background-source.h: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-timeline-transition.c: + * ges/ges-track-audio-background-source.c: + * ges/ges-track-audio-background-source.h: + * ges/ges-track-background-source.c: + * ges/ges-track-background-source.h: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * ges/ges-track-video-background-source.c: + * ges/ges-track-video-background-source.h: + massive update to doc comments -2012-05-30 12:47:59 +0200 Sebastian Dröge +2010-06-14 19:18:46 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From ec1c4a8 to 92b7266 + * ges/ges-timeline-background-source.c: + * ges/ges-track-video-background-source.h: + remove the zone plate and gamut enum values -2012-05-30 11:26:30 +0200 Sebastian Dröge +2010-06-14 17:52:29 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From 3429ba6 to ec1c4a8 + * docs/libs/ges-sections.txt: + massive update to documentation -2012-05-13 15:58:10 +0200 Sebastian Dröge +2010-06-14 17:52:09 +0200 Brandon Lewis - * common: - Automatic update of common submodule - From dc70203 to 3429ba6 + * ges/Makefile.am: + * ges/ges-track-video-background-source.h: + * ges/ges-types.h: + * ges/ges.h: + check in skeletal GESTrackVideoTitleSource -2012-05-08 16:13:32 +0300 George Kiagiadakis - - * omx/gstomx.c: - omx: Fix spelling mistake found by lintian: s/Seperate/Separate/ - -2012-04-30 23:58:43 +0300 George Kiagiadakis - - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxrecmutex.c: - * omx/gstomxrecmutex.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - Implement a new custom recursive mutex type and fix locking in callbacks so that in-context calls are allowed. - According to the OMX specification, implementations are allowed to call - callbacks in the context of their function calls. However, our callbacks - take locks and this causes deadlocks if the unerlying OMX implementation - uses this kind of in-context calls. - A solution to the problem would be a recursive mutex. However, a normal - recursive mutex does not fix the problem because it is not guaranteed - that the callbacks are called from the same thread. What we see in Broadcom's - implementation for example is: - - OMX_Foo is called - - OMX_Foo waits on a condition - - A callback is executed in a different thread - - When the callback returns, its calling function - signals the condition that OMX_Foo waits on - - OMX_Foo wakes up and returns - The solution I came up with here is to take a second lock inside the callback, - but only if recursion is expected to happen. Therefore, all calls to OMX - functions are guarded by calls to gst_omx_rec_mutex_begin_recursion() / _end_recursion(), - which effectively tells the mutex that at this point we want to allow calls - to _recursive_lock() to succeed, although we are still holding the master lock. - -2012-04-20 14:51:34 +0000 George Kiagiadakis - - * omx/gstomx.c: - * omx/gstomx.h: - omx: Add hack to disable setting roles to components. - Conflicts: - omx/gstomx.c +2010-06-14 15:34:08 +0200 Brandon Lewis -2012-04-30 23:20:24 +0000 George Kiagiadakis + * ges/Makefile.am: + * ges/ges-track-title-source.c: + * ges/ges-track-title-source.h: + * ges/ges-types.h: + check in skeletal GESTrackTitleSource - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omxvideodec: Implement no-empty-eos-buffer hack, as in omxvideoenc. - Conflicts: - omx/gstomxvideodec.c +2010-06-14 13:31:15 +0200 Brandon Lewis -2012-04-30 23:19:55 +0000 George Kiagiadakis + * ges/Makefile.am: + * ges/ges-timeline-title-source.c: + * ges/ges-timeline-title-source.h: + * ges/ges-types.h: + * ges/ges.h: + check in sekeletal GESTimelineTitleSource - * omx/gstomxvideodec.c: - omxvideodec: Fix coding style in the drain-may-not-return hack code +2010-06-11 17:57:20 +0200 Brandon Lewis -2012-04-25 19:03:48 +0530 Arun Raghavan + * tests/check/ges/backgroundsource.c: + don't forget to unref objects in unit tests - * omx/gstomx.c: - omx: Fix trivial debug print bug +2010-06-11 17:21:45 +0200 Brandon Lewis -2012-04-25 19:01:32 +0530 Arun Raghavan + * ges/ges.h: + * tests/check/ges/backgroundsource.c: + test vpatern property in unit tests - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omxvideodec: Add hack for Ducati components not returning from drain - This happens on the Galaxy Nexus, and causes the pipeline to hang waiting - endlessly for a drain. The hack replaces the wait with a wait + 500ms timeout. +2010-06-11 17:02:55 +0200 Brandon Lewis -2012-04-25 16:35:40 +0530 Arun Raghavan + * ges/ges-track-audio-background-source.c: + make audio background-sources output silence - * omx/gstomx.c: - omx: Fix deadlock between ending a flush and the event handler - gst_omx_port_set_flushing() calls OMX_FillThisBuffer at the end of a flush - without releasing the port lock, and this can cause a deadlock with the - EventHandler. This patches fixes this by dropping the lock for the duration of - the fill buffer call. +2010-06-11 16:55:31 +0200 Brandon Lewis -2012-04-24 15:41:38 +0200 Sebastian Dröge + * tools/ges-launch.c: + use ges_timeline_background_source_new_for_nick when creating pattern sources - * omx/gstbasevideodecoder.c: - * omx/gstbasevideoencoder.c: - omx: Update video encoder/decoder base classes from gst-plugins-bad +2010-06-11 16:53:03 +0200 Brandon Lewis -2012-04-16 09:16:10 +0200 Sebastian Dröge + * ges/ges-timeline-background-source.c: + don't initialize vpattern field - * configure.ac: - configure: Modernize autotools setup a bit - Also we now only create tar.bz2 and tar.xz tarballs. +2010-06-11 16:51:44 +0200 Brandon Lewis -2012-04-16 09:12:37 +0200 Sebastian Dröge + * ges/ges-timeline-background-source.c: + * ges/ges-timeline-background-source.h: + implement ges_timeline_background_source_new_for_nick() - * common: - Automatic update of common submodule +2010-06-11 16:50:07 +0200 Brandon Lewis -2012-04-16 08:34:56 +0200 Sebastian Dröge + * ges/ges-timeline-background-source.c: + move enum table into file scope - * omx/gstomxaudioenc.c: - omxaudioenc: Use gst_buffer_extract() to copy the input buffer data to the OpenMAX buffer +2010-06-11 15:28:43 +0200 Brandon Lewis -2012-04-13 17:16:42 -0400 Alessandro Decina + * tools/ges-launch.c: + rewrite print_pattern_list to use GEnumValues - * omx/Makefile.am: - Fix relative/absolute path glitch - Signed-off-by: Reynaldo H. Verdejo Pinochet +2010-06-11 15:28:17 +0200 Brandon Lewis -2012-04-12 15:57:32 -0400 Olivier Crête + * tools/ges-launch.c: + remove unnecessary g_print - * common: - * configure.ac: - * omx/Makefile.am: - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - * omx/gstbasevideodecoder.h: - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaacenc.c: - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - * omx/gstomxh263dec.c: - * omx/gstomxh263enc.c: - * omx/gstomxh264dec.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - * omx/gstomxwmvdec.c: - Port to Gst 0.11 - -2012-01-18 16:53:16 -0300 Reynaldo H. Verdejo Pinochet +2010-06-11 15:19:28 +0200 Brandon Lewis - * Android.mk: - * omx/Makefile.am: - Enable building with Android's buildsystem - This change adds prelimary buildsystem hooks to - build gst-omx with the Android buildsystem. Like - the rest of GStreamer's Android hooks, the process - relies on the availability of androgenizer. A tool - developed by Collabora to automatically generate - Android.mk files from within the auto* setup. - Androgenizer is currently available at: - http://cgit.collabora.com/git/user/derek/androgenizer.git/ + * tools/ges-launch.c: + switch to using GESTimelineBackgroundSource objects for patterns -2011-12-13 10:17:41 +0100 Sebastian Dröge +2010-06-11 15:18:17 +0200 Brandon Lewis - * omx/gstbasevideocodec.c: - basevideocodec: Don't use G_TYPE_REGISTER_BOXED() yet - This would require GLib 2.26. + * ges/ges-timeline-background-source.c: + set pattern on newly-created video track objects -2011-12-14 10:09:34 +0100 Jonas Larsson +2010-06-11 15:17:42 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - omxaudioenc: Add hack for encoder components that don't allow empty EOS buffers + * ges/ges-timeline-background-source.c: + implement vpattern gobject property of tl background source -2011-12-14 10:07:29 +0100 Jonas Larsson +2010-06-11 15:16:40 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Fix deadlock when using the EOS hack + * ges/ges-timeline-background-source.c: + add big blob of pattern enum values copied from videotestsrc -2011-12-12 14:26:48 +0100 Sebastian Dröge +2010-06-11 15:15:59 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Remove workaround for basevideocodec bug + * ges/ges-timeline-background-source.h: + add vpattern field to GESTimelineBackground source -2011-12-12 14:26:34 +0100 Sebastian Dröge +2010-06-11 15:14:40 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Remove workaround for basevideocodec bug + * ges/ges-track-video-background-source.c: + * ges/ges-track-video-background-source.h: + implement setting pattern on video background sources -2011-12-05 17:57:01 +0000 Matej Knopp +2010-06-11 13:44:40 +0200 Brandon Lewis - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - * omx/gstbasevideoencoder.c: - basevideo: Make GstVideoFrame a reference counted boxed object - ...and also clear all existing frames when resetting the decoder or encoder. + * ges/ges-track-video-background-source.c: + * ges/ges-track-video-background-source.h: + add routines to set track object pattern -2011-12-09 12:17:29 +0100 Sebastian Dröge +2010-06-11 13:41:44 +0200 Brandon Lewis - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideoenc.c: - omx: Add hack for encoder components that don't allow empty EOS buffers + * ges/ges-track-video-background-source.h: + add enum for video patterns -2011-12-09 10:21:47 +0100 Dake Gu +2010-06-11 13:40:54 +0200 Brandon Lewis - * omx/gstomxaacenc.c: - omxaacenc: Generate and set codec_data on the caps for raw AAC + * tests/check/ges/backgroundsource.c: + test Backgroudn sources in layers -2011-10-31 11:36:06 +0100 Alessandro Decina +2010-06-11 10:42:00 +0200 Brandon Lewis - * omx/gstbasevideoencoder.c: - basevideoencoder: handle failures in start() and stop() + * ges/ges-timeline-background-source.c: + implment GESTimelineBackground source create_track_object -2011-08-26 10:50:38 +0100 Vincent Penquerc'h +2010-06-11 10:40:02 +0200 Brandon Lewis - * omx/gstbasevideoencoder.c: - basevideoenc: do not try to calculate latency from an unknown framerate - It'll divide by zero, and latency is unknown for an unknown framerate. - Fixes an assert in the schroenc test. - https://bugzilla.gnome.org/show_bug.cgi?id=657419 + * ges/Makefile.am: + add audio background source to build system -2011-12-08 11:50:49 +0100 Sebastian Dröge +2010-06-11 10:39:14 +0200 Brandon Lewis - * omx/gstbasevideoencoder.c: - basevideoencoder: Only make the header buffer metadata writable, not the buffer + * ges/ges-types.h: + add audio background source to types.h -2011-12-08 10:18:36 +0100 Sebastian Dröge +2010-06-11 10:37:49 +0200 Brandon Lewis - * omx/gstbasevideoencoder.c: - basevideoencoder: Fix handling of force-keyunit events + * ges/ges-track-audio-background-source.c: + * ges/ges-track-audio-background-source.h: + check in audio background source -2011-12-06 13:28:41 +0100 Sebastian Dröge +2010-06-10 17:44:17 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - omxaudioenc: Don't forward EOS events immediately but let all other events be handled by the base class - Previously this logic was inversed, which did not make any sense at all. + * ges/Makefile.am: + * ges/ges-types.h: + add ges video-track background to build system -2011-12-06 12:47:25 +0100 Sebastian Dröge +2010-06-10 13:21:47 +0200 Brandon Lewis - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - omxaudioenc: Use correct timestamp, duration and filled length for the EOS buffers + * ges/ges-track-video-background-source.c: + * ges/ges-track-video-background-source.h: + check in ges-track-video-background-source.{c,h} -2011-12-06 12:47:12 +0100 Sebastian Dröge +2010-06-10 13:29:22 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Use correct timestamp, duration and filled length for the EOS buffers + * ges/Makefile.am: + add GESTrackBackgroundSource to build system -2011-12-06 12:46:51 +0100 Sebastian Dröge +2010-06-10 17:42:09 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Use correct timestamp, duration and filled length for the EOS buffers + * ges/ges.h: + add track background source to header -2011-12-05 13:18:09 +0100 Sebastian Dröge +2010-06-10 17:43:56 +0200 Brandon Lewis - * omx/gstomx.c: - omx: Improve debugging of buffer handling + * ges/ges-types.h: + add track background source to ges-types.h -2011-12-05 08:12:48 +0100 Sebastian Dröge +2010-06-10 13:51:33 +0200 Brandon Lewis - * omx/gstomxvideoenc.c: - omxvideoenc: Drop EOS events in ::finish() - The event will be forwarded downstream from the srcpad - loop function after the last buffer was generated by the - component. Forwarding it after ::finish() will use the - sinkpad streaming thread and does not guarantee that - the encoder is completely drained. + * ges/ges-track-background-source.c: + * ges/ges-track-background-source.h: + check in GESTrackBackgroundSource -2011-12-01 16:20:36 +0100 Sebastian Dröge +2010-06-10 13:23:59 +0200 Brandon Lewis - * omx/gstomxvideodec.c: - omxvideodec: Properly drop frames due to QoS - Instead of finishing them they should be passed to drop(), which - will then send QoS messages. + * ges/Makefile.am: + * ges/ges-types.h: + add GESTimelineBackgroundSource to build system -2011-11-29 12:21:32 +0100 Jonas Larsson +2010-06-10 17:41:57 +0200 Brandon Lewis - * omx/gstomxh264enc.c: - omxh264enc: Add support for resending headers after a forced-keyframe + * ges/ges.h: + add timeline background source to header -2011-11-29 12:12:33 +0100 Sebastian Dröge +2010-06-10 13:22:36 +0200 Brandon Lewis - * omx/gstbasevideocodec.h: - * omx/gstbasevideoencoder.c: - basevideoencoder: Pass the all-headers field of the force-key-unit event to the subclass + * tests/check/Makefile.am: + * tests/check/ges/backgroundsource.c: + check in background source unit test -2011-11-29 12:12:04 +0100 Sebastian Dröge +2010-06-10 13:21:06 +0200 Brandon Lewis - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - basevideoencoder: Implement full support for the new force-key-unit event - Including support for the running-time and count fields. + * ges/ges-timeline-background-source.c: + * ges/ges-timeline-background-source.h: + check in ges-timeline-background-source.{c,h} -2011-11-29 09:31:11 +0100 Sebastian Dröge +2010-06-28 17:23:49 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - basevideoencoder: Use new force-keyunit event API from gst-plugins-base + * tests/examples/simple1.c: + * tests/examples/transition.c: + tests: Add for exit usage -2011-11-29 09:18:19 +0100 Sebastian Dröge +2010-07-07 01:21:38 -0300 Thiago Santos - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - basevideoencoder: Adjusting padding is not required for -bad libraries + * docs/libs/Makefile.am: + * tests/examples/simple1.c: + * tests/examples/transition.c: + * tools/ges-launch.c: + Fix building issues + Adds missing headers to some files and needed cflags to gtk-doc + scanner build -2011-11-28 19:48:01 +0100 Sebastian Dröge +2010-06-28 17:08:08 +0200 Edward Hervey - * omx/gstbasevideoencoder.h: - basevideoencoder: Move some fields to the private part of the instance struct + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Fix leaked caps -2011-11-28 19:36:56 +0100 Sebastian Dröge +2010-06-21 11:54:01 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - basevideoencoder: Make headers metadata writable before pushing downstream - The timestamp, duration, etc of the headers has to be changed. + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: unref all pads -2011-11-28 19:35:40 +0100 Sebastian Dröge +2010-06-21 11:53:30 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - basevideoencoder: Push the downstream force-keyframe event after the next keyframe - Even if the corresponding GstVideoFrame doesn't have the is_sync_point - flag set. + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Make a copy of the provided GstEncodingProfile -2011-11-28 19:29:13 +0100 Sebastian Dröge +2010-06-21 11:52:49 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - basevideoencoder: Don't push an upstream force-keyunit event downstream + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Properly release playsink and encodebin -2011-11-25 11:48:08 +0100 Jonas Larsson +2010-06-21 11:52:01 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - basevideoencoder: Add initial support for the all-headers field of the force-keyframe event - See bug #607742. + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: finalize => dispose + We want to release our objects before the parent GstBin class does so. -2011-11-25 11:37:39 +0000 Tim-Philipp Müller +2010-06-21 11:47:44 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - basevideodecoder: some more debug logging + * tools/ges-launch.c: + ges-launch: Don't leak caps -2011-11-23 20:03:32 +0000 Tim-Philipp Müller +2010-06-21 11:47:21 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - * omx/gstbasevideodecoder.h: - basevideodecoder: add API to drop a frame and post a QoS message on the bus - https://bugzilla.gnome.org/show_bug.cgi?id=640017 - API: gst_base_video_decoder_drop_frame() + * tools/ges-launch.c: + ges-launch: Properly free profile and outputuri -2011-11-22 23:04:49 +0000 Tim-Philipp Müller +2010-06-17 11:45:27 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - docs: fix comment in gst_base_video_decoder_get_max_decode_time() docs + * tools/ges-launch.c: + ges-launch: Cleanup profile -2011-11-22 19:57:07 +0000 Tim-Philipp Müller +2010-06-14 19:40:50 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - basevideodecoder: fix weird event list handling - Get rid of weird code that copies a list manually, taking - ownership of the elements and then frees the old list. Instead, - just take over the old list entirely. (If the intent was to - reverse the list, one could use g_list_reverse() instead). - Then, push events in the list out from last to first (since they - were prepended as they came in) instead of just pushing out the - last in the list and leaking the others. + * ges/ges-track-transition.c: + 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. -2011-11-25 11:31:58 +0100 Sebastian Dröge +2010-06-14 19:12:42 +0200 Edward Hervey - * configure.ac: - * omx/Makefile.am: - * omx/gstbaseaudiodecoder.c: - * omx/gstbaseaudiodecoder.h: - * omx/gstbaseaudioencoder.c: - * omx/gstbaseaudioencoder.h: - * omx/gstbaseaudioutils.c: - * omx/gstbaseaudioutils.h: - * omx/gstomxaacenc.c: - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - omxaudioenc: Use audio base classes from gst-plugins-base instead of having our own copies + * common: + Update to latest common + +2010-06-11 19:34:39 +0200 Edward Hervey -2011-11-18 10:00:31 -0800 Sebastian Dröge + * tests/examples/transition.c: + examples: Fix debug statement - * omx/gstomxaudioenc.c: - omxaudioenc: First set ports to flushing before waiting for the srcpad streaming thread to finish +2010-06-10 16:19:11 +0200 Brandon Lewis -2011-11-18 09:59:43 -0800 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + release the request pads in dispose - * omx/gstomxvideoenc.c: - omxvideoenc: First set ports to flushing before waiting for the srcpad streaming thread to finish +2010-06-10 16:14:20 +0200 Brandon Lewis -2011-11-18 09:58:58 -0800 Sebastian Dröge + * ges/ges-track-transition.c: + don't keep an extra reference to vsmpte - * omx/gstomxvideodec.c: - omxvideodec: First set ports to flushing before waiting for the srcpad streaming thread to finish +2010-06-10 12:52:41 +0200 Brandon Lewis -2011-11-17 14:38:54 -0800 Sebastian Dröge + * tests/check/ges/simplelayer.c: + add elemt. to bin in arbitrary_fill_track_func - * omx/gstomx.c: - omx: Only disabling of a port is like flushing, enabling is like unflushing +2010-06-09 18:57:59 +0200 Brandon Lewis -2011-11-17 13:33:35 -0800 Sebastian Dröge + * tests/check/ges/simplelayer.c: + fix typos in comment block - * omx/gstomx.c: - omx: Enabling/disabling a port is also like flushing - The component returns all buffers to us and shouldn't get any - new buffers passed anymore. +2010-06-09 18:56:55 +0200 Brandon Lewis -2011-11-17 11:26:33 -0800 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + gstl_recalculate() won't set priorities to -1 - * omx/gstomxaudioenc.c: - omxaudioenc: Signal the drain GCond even if downstream returned an error +2010-06-09 16:35:17 +0200 Brandon Lewis -2011-11-17 11:26:20 -0800 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-track-transition.h: + ges/ges-track-transition.h: add missing function prototype - * omx/gstomxvideoenc.c: - omxvideoenc: Signal the drain GCond even if downstream returned an error +2010-06-09 17:11:56 +0200 Brandon Lewis -2011-11-17 11:25:52 -0800 Sebastian Dröge + * tools/ges-launch.c: + tools/ges-launch.c: C90 fixes - * omx/gstomxvideodec.c: - omxvideodec: Signal the drain GCond even if downstream returned an error +2010-06-09 17:09:10 +0200 Brandon Lewis -2011-11-17 10:34:19 -0800 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: C90 fixes - * omx/gstbasevideoencoder.c: - basevideoencoder: Only call ::reset once in READY->PAUSED +2010-06-09 17:08:31 +0200 Brandon Lewis -2011-11-17 10:19:35 -0800 Sebastian Dröge + * tests/examples/test4.c: + tests/examples/test4.c: C90 fixes - * omx/gstomxaudioenc.c: - omxaudioenc: Shutdown component in PAUSED->READY and deallocate buffers +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-17 10:19:30 -0800 Sebastian Dröge + * tests/examples/concatenate.c: + tests/check/ges/concatenate.c: C90 fixes - * omx/gstomxvideoenc.c: - omxvideoenc: Shutdown component in PAUSED->READY and deallocate buffers +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-17 10:19:10 -0800 Sebastian Dröge + * tests/check/ges/transition.c: + tests/check/ges/transition.c: C90 fixes - * omx/gstomxvideodec.c: - omxvideodec: Shutdown component in PAUSED->READY and deallocate buffers +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-16 12:02:08 -0800 Sebastian Dröge + * tests/check/ges/simplelayer.c: + tests/check/ges/simplelayer.c: C90 fixes - * omx/gstomxvideoenc.c: - omxvideoenc: Set force_keyframe to FALSE after handling it - There's no reason why the base class should forward the event - further downstream if we already handled it and will insert a - keyframe. +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-16 11:21:25 -0800 Sebastian Dröge + * tests/check/ges/filesource.c: + tests/check/ges/filesource.c: C90 fixes - * omx/gstomxvideodec.c: - omxvideodec: Always push buffers downstream, even if we didn't find a corresponding GstVideoFrame +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-15 09:47:55 -0800 Sebastian Dröge + * ges/ges-utils.h: + ges/ges-utils.h: C90 fixes - * omx/gstomx.c: - omx: Fix debug level for flushing in wrong state from ERROR to DEBUG - It's not really an error and doesn't matter at all if flush is called - when the component is not running. +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-15 08:40:07 -0800 Sebastian Dröge + * ges/ges-track.h: + ges/ges-track.h: C90 fixes - * omx/gstomxh264enc.c: - omxh264enc: Detect bytestream stream format and don't put SPS/PPS into the caps for this format +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-15 08:28:32 -0800 Sebastian Dröge + * ges/ges-track.c: + ges/ges-track.c: C90 fixes - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Add vfunc for handling the output frames - This can be used by subclasses to override the buffer flags - or to handle some frames differently than the default behaviour. +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-14 12:50:26 -0800 Sebastian Dröge + * ges/ges-track-transition.c: + ges/ges-track-transition.c: C90 fixes - * omx/gstomxvideodec.c: - omxvideodec: Don't release buffers twice if dropping because of QoS +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-14 09:13:06 -0800 Sebastian Dröge + * ges/ges-track-object.c: + ges/ges-track-object.c: C90 fixes - * omx/gstomx.c: - omx: Add XXX to the nOffset reset hack comment for QCOM +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-10 15:18:08 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + ges/ges-timeline-transition.c: C90 fixes - * omx/gstomxaudioenc.c: - omxaudioenc: Make srcpad caps setting threadsafe +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-10 15:17:56 +0100 Sebastian Dröge + * ges/ges-timeline-object.c: + ges/ges-timeline-object.c: C90 fixes - * omx/gstomxvideoenc.c: - omxvideoenc: Make srcpad caps setting threadsafe +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-10 15:17:41 +0100 Sebastian Dröge + * ges/ges-timeline-layer.c: + ges/ges-timeline-layer.c: C90 fixes - * omx/gstomxvideodec.c: - omxvideodec: Make srcpad caps setting threadsafe +2010-06-09 16:27:43 +0200 Brandon Lewis -2011-11-10 15:10:14 +0100 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + ges/ges-simple-timeline-layer.c: C90 fixes - * omx/gstomxaudioenc.c: - omxaudioenc: Make the srcpad task and the sinkpad streaming thread handling threadsafe +2010-06-09 13:53:32 +0200 Edward Hervey -2011-11-10 15:03:05 +0100 Sebastian Dröge + * configure.ac: + configure.ac: Actually use the WARNING/ERROR CFLAGS + We weren't detecting all these issues previously - * omx/gstomxaudioenc.c: - omxaudioenc: Always flush the ports and make sure no processing is happening in ::flush - This fixes a race condition that happened when seeking - very often in a short period of time. +2010-06-09 13:53:07 +0200 Edward Hervey -2011-11-10 15:02:22 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + GESTrackTransition: Fix debug statement - * omx/gstomxvideoenc.c: - omxvideoenc: Always flush the ports and make sure no processing is happening in ::reset - This fixes a race condition that happened when seeking - very often in a short period of time. +2010-06-09 13:52:35 +0200 Edward Hervey -2011-11-10 15:01:36 +0100 Sebastian Dröge + * ges/ges-timeline.c: + GESTimeline: Remove all tracks/layers when being disposed - * omx/gstomxvideoenc.c: - omxvideoenc: Fix minor race condition when draining after upstream signalled EOS +2010-06-09 13:52:08 +0200 Edward Hervey -2011-11-10 14:56:19 +0100 Sebastian Dröge + * ges/ges-timeline-layer.c: + GESTimelineLayer: Release all layer/tracks when being disposed - * omx/gstomxaudioenc.c: - omxaudioenc: Improve EOS handling - If downstream return UNEXPECTED we should still signal the - drain cond because nothing will trigger this again later. +2010-06-09 11:22:05 +0200 Brandon Lewis -2011-11-10 14:56:11 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + ges/ges-track-transition.c: set referece to vsmpte to NULL after freeing - * omx/gstomxvideoenc.c: - omxvideoenc: Improve EOS handling - If downstream return UNEXPECTED we should still signal the - drain cond because nothing will trigger this again later. +2010-06-09 11:21:26 +0200 Brandon Lewis -2011-11-10 14:54:33 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + ges/ges-track-transition.c: was freeing same GstController twice in _dispose() - * omx/gstomxaudioenc.c: - omxaudioenc: Improve debugging of EOS and draining +2010-06-09 11:17:08 +0200 Edward Hervey -2011-11-10 14:54:17 +0100 Sebastian Dröge + * common: + common: Update to latest submodule revision - * omx/gstomxvideoenc.c: - omxvideoenc: Improve debugging of EOS and draining +2010-06-08 18:38:44 +0200 Edward Hervey -2011-11-10 14:51:06 +0100 Sebastian Dröge + * tests/check/ges/simplelayer.c: + check: Check that all objects are removed from the layer + This currently fails - * omx/gstomxvideodec.c: - omxvideodec: Log if acquiring buffer for EOS failed +2010-06-08 18:37:49 +0200 Edward Hervey -2011-11-10 14:42:13 +0100 Sebastian Dröge + * tests/check/ges/transition.c: + check: Use release_track_object instead of unref - * omx/gstomxvideodec.c: - omxvideodec: The component is not started in READY +2010-06-08 18:37:01 +0200 Edward Hervey -2011-11-10 14:39:40 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + GESTrackTransition: Unref the ControlSource in dispose - * omx/gstomxaudioenc.c: - omxaudioenc: No need to signal the drain cond when going from READY to PAUSED - Also the component is not started in READY +2010-06-08 18:36:37 +0200 Edward Hervey -2011-11-10 14:40:56 +0100 Sebastian Dröge + * ges/ges.c: + ges: Initialize GstController in ges_init - * omx/gstomxvideoenc.c: - omxvideoenc: No need to signal the drain cond when going from READY to PAUSED - Also the component is not started in READY. +2010-06-04 19:53:35 +0200 Brandon Lewis -2011-11-09 15:46:02 +0100 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + ges/ges-simple-timeline-layer.c: print a warning when transitions overlap - * omx/gstomxvideodec.c: - omxvideodec: Always flush the ports and make sure no processing is happening in ::reset - This fixes a race condition that happened when seeking - very often in a short period of time. +2010-06-04 18:31:25 +0200 Brandon Lewis -2011-11-09 15:45:20 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + ges/ges-timeline-transition.c: can't set enums by nick - * omx/gstomxvideodec.c: - omxvideodec: Fix minor race condition when draining after upstream signalled EOS +2010-06-04 18:07:39 +0200 Brandon Lewis -2011-11-09 15:44:11 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + ges/ges-timeline-transition.c: initialize vtype enum type from static list of GEnumValues - * omx/gstomxvideodec.c: - omxvideodec: Improve EOS handling - If downstream return UNEXPECTED we should still signal the - drain cond because nothing will trigger this again later. +2010-06-04 17:53:15 +0200 Edward Hervey -2011-11-09 15:43:32 +0100 Sebastian Dröge + * tests/examples/.gitignore: + * tools/.gitignore: + tools/examples: Ignore more files - * omx/gstomxvideodec.c: - omxvideodec: Improve debugging of EOS and draining +2010-06-04 17:50:42 +0200 Edward Hervey -2011-11-09 15:42:46 +0100 Sebastian Dröge + * Makefile.am: + * configure.ac: + * tests/examples/Makefile.am: + * tools/Makefile.am: + * tools/ges-launch.c: + tools: Moving playlist from examples and making it installable + It is now called ges-launch - * omx/gstomxvideodec.c: - omxvideodec: The component is not started already when going from READY to PAUSED +2010-06-04 12:17:56 +0200 Brandon Lewis -2011-11-09 15:42:13 +0100 Sebastian Dröge + * tests/examples/playlist.c: + tests/examples/playlist.c: allow file / pattern durations to be 0 (but not transitions) - * omx/gstomxvideodec.c: - omxvideodec: No need to signal the drain cond when going from READY to PAUSED +2010-06-04 12:17:28 +0200 Brandon Lewis -2011-11-09 15:41:02 +0100 Sebastian Dröge + * tests/examples/playlist.c: + tests/examples/playlist.c: clean up playlist help text - * omx/gstomx.c: - omx: Always reset buffer flags for output ports, even in flushing/error state +2010-06-03 19:14:41 +0200 Brandon Lewis -2011-11-09 09:00:57 +0100 Sebastian Dröge + * tests/examples/playlist.c: + tests/examples/playlist.c: better sanity checking of arguments - * omx/gstomxvideodec.c: - omxvideodec: Improve debugging in case of QoS-related frame drops +2010-06-03 19:13:42 +0200 Brandon Lewis -2011-11-08 12:46:31 +0100 Sebastian Dröge + * tests/examples/playlist.c: + tests/examples/playlist.c: add option to print avail. transitions/patterns. update help strings - * omx/gstomxvideoenc.c: - omxvideoenc: Release the video codec stream lock before acquiring an input buffer - Otherwise the srcpad task might block on this lock and - no buffers ever become available again. +2010-06-03 19:04:11 +0200 Brandon Lewis -2011-11-08 12:45:16 +0100 Sebastian Dröge + * tests/check/ges/simplelayer.c: + * tests/check/ges/transition.c: + tests/check/ges/{simplelayer.c,transition.c}: update unit tests - * omx/gstomxaudioenc.c: - omxaudioenc: Release the audio encoder stream lock before acquiring an input buffer - Otherwise the srcpad task might block on this lock and - no buffers ever become available again. +2010-06-03 19:02:58 +0200 Brandon Lewis -2011-11-08 12:42:58 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + ges/ges-track-transition.c: adjust to the change in VTYPE_CROSSFADE - * omx/gstomxvideodec.c: - omxvideodec: Release the video codec stream lock before acquiring an input buffer - Otherwise the srcpad task might block on this lock and - no buffers ever become available again. +2010-06-03 19:01:21 +0200 Brandon Lewis -2011-11-08 11:07:01 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + ges/ges-timeline-transition.{c,h}: value for VTYPE_CROSSFADE changed to 512 and exported in ges-timeline-transition.h - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - omxaudioenc: Don't try to drain the component after EOS - And don't send EOS twice in any case. This most likely - will cause the component to not output it again and - is not necessary anyway. +2010-06-02 18:58:14 +0200 Brandon Lewis -2011-11-08 11:03:29 +0100 Sebastian Dröge + * tests/check/ges/transition.c: + tests/check/ges/transition.c: test that changing timeline vtype sets trackobj vtype - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Don't try to drain the component after EOS - And don't send EOS twice in any case. This most likely - will cause the component to not output it again and - is not necessary anyway. +2010-06-02 18:57:10 +0200 Brandon Lewis -2011-11-08 10:46:36 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + ges/ges-timeline-transition.c: implement vtype gobject property on GESTimelineTransitions - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Don't try to drain the component after EOS - And don't send EOS twice in any case. This most likely - will cause the component to not output it again and - is not necessary anyway. +2010-06-02 18:55:52 +0200 Brandon Lewis -2011-11-08 09:09:28 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + ges/ges-track-transition.{c,h}: add ability to change smptealpha type - * omx/gstomxvideodec.c: - omxvideodec: Implement dropping of too late frames via QoS +2010-06-02 16:52:02 +0200 Brandon Lewis -2011-11-08 08:31:58 +0100 Sebastian Dröge + * tests/check/ges/simplelayer.c: + * tests/check/ges/transition.c: + tests/check/ges/{simplelayer.c,tests/check/ges/transition.c}: sync with previous api change - * omx/gstomxaudioenc.c: - omxaudioenc: Minor code refactoring +2010-06-02 16:50:07 +0200 Brandon Lewis -2011-11-08 08:31:43 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + ges/ges-timeline-transition.{c,h}: api change, pass gint instead of GEnumValue to new() - * omx/gstomxvideoenc.c: - omxvideoenc: Minor code refactoring +2010-06-02 16:43:10 +0200 Brandon Lewis -2011-11-08 08:31:32 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + * tests/check/ges/transition.c: + ges/ges-timeline-transition.{c,h},tests/.../transition.c: type change of vtype to gint from GEnumValue - * omx/gstomxvideodec.c: - omxvideodec: Make sure to always release buffers back to OMX +2010-06-02 16:35:57 +0200 Brandon Lewis -2011-11-08 08:24:19 +0100 Sebastian Dröge + * ges/ges-timeline-transition.c: + ges/ges-timeline-transition.c: sync with API change in previous commit - * omx/gstomx.c: - omx: Also properly release buffers when in error state +2010-06-02 16:27:58 +0200 Brandon Lewis -2011-11-08 08:22:08 +0100 Jonas Larsson + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + ges/ges-track-transition.{c,h}: api change: pass gint instead of GEnumValue - * omx/gstomx.c: - omx: Properly release buffers during flushing - We can't pass them back to OMX_FillThisBuffer() or OMX_EmptyThisBuffer() - but instead of doing nothing we have to put them back into our queue. - Otherwise the buffer is leaked and we will have too few buffers in - the future. +2010-06-02 15:18:55 +0200 Brandon Lewis -2011-11-07 14:00:47 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * tests/check/ges/transition.c: + ges/ges-track-transition.{c,h}, tests/check/ges/transition.c: change vtype from GEnumValue to simple gint; - * omx/gstomxvideodec.c: - omxvideodec: Free pending frames after draining component +2010-06-02 13:50:06 +0200 Brandon Lewis -2011-11-07 14:00:35 +0100 Sebastian Dröge + * tests/check/ges/transition.c: + tests/check/ges/transition.c: make sure unit tests work properly - * omx/gstomxvideoenc.c: - omxvideoenc: Free pending frames after draining the component +2010-06-02 13:20:09 +0200 Brandon Lewis -2011-11-07 11:07:01 +0100 Sebastian Dröge + * tests/check/ges/transition.c: + tests/check/ges/transition.c: oops, unit tests using wrong api - * omx/gstomxvideoenc.c: - omxvideoenc: Make handling and usage of the base video codec frames threadsafe +2010-06-02 12:46:05 +0200 Brandon Lewis -2011-11-07 11:05:29 +0100 Sebastian Dröge + * tests/check/Makefile.am: + tests/check/Makefile.am: add transition unit tests to make check - * omx/gstomxvideoenc.c: - omxvideoenc: Fix deadlock between srcpad stream lock and ::reset() +2010-06-02 12:34:57 +0200 Brandon Lewis -2011-11-07 11:04:27 +0100 Sebastian Dröge + * tests/check/ges/transition.c: + tests/check/ges/transition.c: check in transition unit tests - * omx/gstomxvideodec.c: - omxvideoenc: Make handling and usage of the base video codec frames threadsafe +2010-06-01 13:22:05 +0200 Brandon Lewis -2011-11-07 10:58:44 +0100 Sebastian Dröge + * ges/ges-track-filesource.h: + ges/ges-track-filesource.h: fix typo in documentation commments - * omx/gstomxvideoenc.c: - omxvideoenc: Free all pending frames after draining the component +2010-06-01 11:57:42 +0200 Brandon Lewis -2011-11-07 10:58:24 +0100 Sebastian Dröge + * ges/ges-track-filesource.h: + ges/ges-track-filesource.h: fix incorrect definition of GESTrackFileSource structs. - * omx/gstomxvideodec.c: - omxvideodec: Always free all pending frames when caps changes require reconfiguration +2010-05-31 18:59:12 +0200 Brandon Lewis -2011-11-04 09:43:48 +0100 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-custom-timeline-source.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline-source.h: + * ges/ges-timeline-transition.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-filesource.h: + * ges/ges-track-object.h: + * ges/ges-track-source.h: + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + * ges/ges-track.h: + Add missing documentation - * omx/gstomxaudioenc.c: - omxaudioenc: Only drain the component a single time and only after processing started +2010-05-31 15:42:23 +0200 Brandon Lewis -2011-11-04 09:43:32 +0100 Sebastian Dröge + * tests/check/ges/simplelayer.c: + * tests/examples/transition.c: + tests/check/ges/{simplelayer.c,transition.c}: create audio tracks in demos - * omx/gstomxvideodec.c: - omxvideodec: Only drain the component a single time and only after processing started +2010-05-31 15:40:52 +0200 Brandon Lewis -2011-11-04 09:43:12 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + ges/ges-track-transition.c: implement audio crossfades - * omx/gstomxvideoenc.c: - omxvideoenc: Only drain the component a single time and only after processing started +2010-05-31 15:38:14 +0200 Brandon Lewis -2011-11-04 09:04:16 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + ges/ges-track-transition.{c,h}: add fields for audio interpolation to obj - * omx/gstomx.c: - omx: Reset buffer flags to 0 after it was consumed by the component or the element - Some implementations don't reset the flags and the standard is not - really clear on the expected behaviour. Let's just always reset the - flags as they're not valid at this point anymore. +2010-05-28 11:42:29 +0200 Brandon Lewis -2011-11-02 13:50:14 +0100 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + * tests/check/ges/simplelayer.c: + fix bugs - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Better handling of encoder parameters - Only set them if necessary and allow to use the component - defaults. +2010-05-28 03:02:49 +0200 Brandon Lewis -2011-11-02 13:22:50 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + ges/ges-track-transition.{c,h}: rename some members of ges-track-transition struct to separate between audio and video objects. - * omx/gstomxvideoenc.c: - omxvideoenc: Make unsupported bitrate/quantizer settings less fatal +2010-05-28 02:31:42 +0200 Brandon Lewis -2011-11-02 10:39:50 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + ges/ges-track-transition.c: factor out code which produces video bin into a seprate routine - * omx/gstomxvideodec.c: - omxvideodec: If no stride was set for the OMX output port assume GStreamer stride - This is not really correct but there's nothing else we could do. +2010-05-28 00:19:24 +0200 Brandon Lewis -2011-11-02 10:39:10 +0100 Sebastian Dröge + * tests/examples/playlist.c: + tests/examples/playlist.c: make audio stream of audiotestsrc silent (it's much less annoying). - * omx/gstomxvideoenc.c: - omxvideoenc: If no stride was set for the OMX input port assume GStreamer stride - This is not really correct but there's nothing else we could do. +2010-05-28 00:16:28 +0200 Brandon Lewis -2011-11-01 16:46:09 +0100 Sebastian Dröge + * tests/examples/playlist.c: + tests/examples/playlist.c: fix inappropriate down-casts in playlist.py - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - omxaudioenc: Implement draining of the component and use it - This makes sure that all buffers are encoded and pushed downstream - before flushing the ports and losing some buffers. +2010-05-28 00:12:45 +0200 Brandon Lewis -2011-11-01 16:41:46 +0100 Sebastian Dröge + * ges/ges-track-transition.c: + ges/ges-track-transition.c: give gnloperations a unique name - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Implement draining of the component and use it - This makes sure that all buffers are encoded and pushed downstream - before flushing the ports and losing some buffers. +2010-05-28 00:11:51 +0200 Brandon Lewis -2011-11-01 16:08:59 +0100 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + ges/ges-simple-timeline-layer.c: also error when transition duration exceeds that of its neighbors - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Implement draining of the component and use it - This makes sure that all buffers are decoded and pushed downstream - before flushing the ports and losing some buffers. +2010-05-27 23:37:11 +0200 Brandon Lewis -2011-10-20 14:32:40 +0200 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + ges/ges-simple-timeline-layer.c: don't allow user to create timelines with adjacent transitions - * omx/gstomxvideodec.c: - omxvideodec: Fix deadlock if ::reset is called before finding the corresponding frame of a decoded buffer +2010-05-27 23:36:10 +0200 Brandon Lewis -2011-11-01 15:10:12 +0100 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + ges/ges-simple-timeline-layer.c: implement simple stair-step like priority management scheme. - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - * omx/gstomxvideoenc.h: - omxaudioenc: Forward downstream flow returns to upstream +2010-05-27 23:10:04 +0200 Brandon Lewis -2011-11-01 15:10:01 +0100 Sebastian Dröge + * tests/check/ges/simplelayer.c: + tests/check/ges/simplelayer.c: check in massive unit test case for GSTL with transitions - * omx/gstomxvideoenc.c: - omxvideoenc: Forward downstream flow returns to upstream +2010-05-27 12:06:00 +0200 Brandon Lewis -2011-11-01 13:58:38 +0100 Sebastian Dröge + * tests/examples/playlist.c: + tests/examples/playlist.c: add transitions to playlist example - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Forward downstream flow returns to upstream +2010-05-27 12:04:05 +0200 Brandon Lewis -2011-10-25 14:23:38 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: use ges_timeline_transition_new_from_nick() - * README: - omx: Add minimal README file +2010-05-27 12:02:10 +0200 Brandon Lewis -2011-10-20 15:21:07 +0200 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + ges/ges-timeline-transition.{c,h}: add convenience routine for creating transitions docs/libs/ges-sections.txt: add routine to documentation - * omx/gstomxvideodec.c: - omxvideodec: Fix deadlock caused by calling reset while the loop function does something with the base video codec stream lock +2010-05-26 18:19:41 +0200 Brandon Lewis -2011-10-20 15:20:47 +0200 Sebastian Dröge + * tests/examples/playlist.c: + tests/examples/playlist.c: re-work pattern command line syntax - * omx/gstomxvideoenc.c: - omxvideoenc: Fix deadlock caused by calling reset while the loop function does something with the base video codec stream lock +2010-05-26 16:57:59 +0200 Brandon Lewis -2011-10-20 14:30:38 +0200 Sebastian Dröge + * tests/examples/transition.c: + ests/examples/transition.c: create transition with specified type - * omx/gstomxvideodec.c: - omxvideodec: Move locking at the correct place +2010-05-26 16:36:24 +0200 Brandon Lewis -2011-10-14 10:27:47 +0200 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + ges/ges-track-transition.{c,h}: add support for other wipes with smptealpha - * omx/gstomx.c: - * omx/gstomx.h: - omx: Remove QCOM hack to reset nOffset in EmptyBufferDone - This is now done in a generic way that does not require any - hacks because it will work without any side effects on any - OMX implementation. +2010-05-26 16:33:44 +0200 Brandon Lewis -2011-10-14 10:26:00 +0200 Sebastian Dröge + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + ges/ges-timeline-transition.{c,h}: add a type field - * omx/gstomx.c: - omx: Reset nOffset to 0 in EmptyBufferDone if nFilledLen is 0 - Some OMX implementations don't reset nOffset when the complete - buffer is emptied but instead only reset nFilledLen. We reset - nOffset to 0 if nFilledLen == 0, which is safe to do because - the offset *must* be 0 if the buffer is not filled at all. - Seen in QCOM's OMX implementation. +2010-05-26 13:27:46 +0200 Brandon Lewis -2011-10-04 10:56:33 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: pass transition type to make_timeline - * omx/gstomxvideoenc.c: - omxvideoenc: If one parameter/configuration is not supported don't skip the next +2010-05-26 13:05:18 +0200 Brandon Lewis -2011-10-03 09:12:44 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: make -t option work with values supported by smpte + "crossfade" - * omx/gstomxh264dec.c: - omxh264dec: Require stream-format=byte-stream - Other stream-formats are unlikely to be supported by OMX components. +2010-05-26 13:04:06 +0200 Brandon Lewis -2011-09-29 10:37:32 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: add routines for identifying transitions - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Add API for subclasses to prepare/convert frames +2010-05-26 11:38:19 +0200 Brandon Lewis -2011-09-27 15:08:54 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: split out "make_timeline" into separate routine - * omx/gstomxaudioenc.c: - omxaudioenc: Switch to Idle first and wait before switching to Loaded and deallocating buffers - Allocating buffers before the Idle state is reached can lead to crashes. +2010-05-26 10:48:13 +0200 Brandon Lewis -2011-09-27 15:08:44 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: remove some cruft from transition example - * omx/gstomxvideoenc.c: - omxvideoenc: Switch to Idle first and wait before switching to Loaded and deallocating buffers - Allocating buffers before the Idle state is reached can lead to crashes. +2010-05-25 19:10:27 +0200 Brandon Lewis -2011-09-27 15:05:19 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: print values in seconds not nseconds - * omx/gstomxvideodec.c: - omxvideodec: Switch to Idle first and wait before switching to Loaded and deallocating buffers - Allocating buffers before the Idle state is reached can lead to crashes. +2010-05-25 19:07:21 +0200 Brandon Lewis -2011-09-27 14:15:06 +0200 Sebastian Dröge + * ges/ges-track-transition.c: + ges-track-transition.c: set interpolation control points properly from gnlobject properties - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omxvideodec: New hack for QCOM to recreate the component instead of reconfiguring it on caps changes +2010-05-25 19:06:10 +0200 Brandon Lewis -2011-09-27 12:13:56 +0200 Sebastian Dröge + * ges/ges-track-transition.h: + ges-track-transition.c: GstControlSource -> GstInterpolationControlSource - * omx/gstomx.c: - omx: Change a g_assert() into a GST_WARNING_OBJECT() +2010-05-25 16:44:58 +0200 Brandon Lewis -2011-09-26 13:04:18 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: cast arguments to g_object_set - * omx/gstomx.c: - * omx/gstomx.h: - omx: Add hack for Qualcomm's OMX implementation to manually reset nOffset in EmptyBufferDone +2010-05-25 16:42:47 +0200 Brandon Lewis -2011-09-23 17:02:49 +0200 Sebastian Dröge + * ges/ges-track-transition.c: + ges-track-transition.c: create gst-controller for transition - * omx/gstomxaudioenc.c: - omxaudioenc: Add a check to prevent a zero-sized OMX buffer +2010-05-25 16:41:53 +0200 Brandon Lewis -2011-09-23 17:02:19 +0200 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + ges-track-transition.c: add controller and control-source members - * omx/gstomxvideoenc.c: - omxvideoenc: Add some more checks for correct OMX buffer sizes +2010-05-25 16:35:16 +0200 Brandon Lewis -2011-09-23 15:53:49 +0200 Sebastian Dröge + * configure.ac: + * ges/Makefile.am: + depend on GST_CONTROLLER - * omx/gstomxvideodec.c: - omxvideodec: Add some more checks for OMX buffer sizes +2010-05-25 13:44:57 +0200 Brandon Lewis -2011-09-14 10:15:38 +0200 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-transition.c: + * ges/ges-track-transition.c: + * tests/examples/transition.c: + hacking - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxaudioenc.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omx: Wait until the Executing state is reached before calling OMX_FillThisBuffer() - This correctly works around the QCOM race condition that happens when calling - FTB after setting the new state and before reaching it. +2010-05-24 17:51:31 +0200 Brandon Lewis -2011-09-02 14:43:43 +0200 Sebastian Dröge + * tests/examples/transition.c: + tests/examples/transition.c: create transition when duration > 0 - * omx/gstomxvideodec.c: - omxvideodec: Negotiate video format with downstream and what the component claims to support +2010-05-24 17:39:45 +0200 Brandon Lewis -2011-08-25 19:56:58 +0100 Vincent Penquerc'h + * tests/examples/Makefile.am: + dist transition.c - * omx/gstbasevideoencoder.c: - basevideoencoder: fix element leak - and this concludes an hour of yelling at the bloody test failing, - only to track down the problem not being in the test. - https://bugzilla.gnome.org/show_bug.cgi?id=657368 +2010-05-24 17:39:07 +0200 Brandon Lewis -2011-08-19 09:20:39 +0200 Sebastian Dröge + * tests/examples/transition.c: + check in single transition demo - * omx/gstomxvideoenc.c: - omxvideoenc: Release basevideocodec stream lock while waiting for a buffer - This prevents deadlocks if no empty input buffers are available and - releasing input buffers requires the loop function to handle some - output buffers first. +2010-05-24 14:58:55 +0200 Brandon Lewis -2011-08-19 09:19:22 +0200 Sebastian Dröge + * ges/ges-types.h: + ges/ges-types.h: add typedefs for GESTrackTransition[Class] structs - * omx/gstomxvideodec.c: - omxvideodec: Release basevideocodec stream lock while waiting for a buffer - This prevents deadlocks if no empty input buffers are available and - releasing input buffers requires the loop function to handle some - output buffers first. +2010-05-24 14:57:12 +0200 Brandon Lewis -2011-08-18 10:24:26 +0200 Sebastian Dröge + * ges/ges-track-transition.h: + ges-track-transition.h: fix typo - * omx/gstbasevideodecoder.c: - basevideodecoder: Fix deadlock +2010-05-24 14:55:53 +0200 Brandon Lewis -2011-08-18 10:03:20 +0200 Sebastian Dröge + * ges/Makefile.am: + ges/Makefile.am: dist ges-track-transition.c,h - * omx/gstbaseaudiodecoder.c: - baseaudiodecoder: Don't take the stream lock in the seek handler - This will lead to deadlocks +2010-05-24 13:08:32 +0200 Brandon Lewis -2011-08-18 10:02:50 +0200 Sebastian Dröge + * ges/ges-track-transition.c: + * ges/ges-track-transition.h: + skeletal implementation of GESTrackTransition - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - * omx/gstbasevideoencoder.c: - basevideo: Fix locking, especially if both pads have different streaming threads +2010-05-24 12:34:36 +0200 Brandon Lewis -2011-08-18 09:42:02 +0200 Sebastian Dröge + * ges/ges-track-transition.h: + check-in ges-track-transition.h - * omx/gstbasevideodecoder.c: - * omx/gstbasevideoencoder.c: - basevideo: Don't call g_type_class_peek_parent() in class_init - This is already done by the GObject boilerplate macro +2010-05-24 10:59:43 +0200 Brandon Lewis -2011-08-18 09:40:46 +0200 Sebastian Dröge + * tests/examples/playlist.c: + playlist.c: working pattern sources - * omx/gstbaseaudiodecoder.c: - baseaudiodecoder: Don't call g_type_class_peek_parent() in class_init - This is already done by the boilerplate macro +2010-06-02 11:49:08 +0200 Edward Hervey -2011-08-18 09:34:38 +0200 Sebastian Dröge + * tests/examples/playlist.c: + examples: Add a looping feature to playlist example + Allows playing the timeline repeatedly a certain number of times - * omx/gstbaseaudiodecoder.c: - * omx/gstbaseaudiodecoder.h: - baseaudiodecoder: Fix thread safety issues if both pads have different streaming threads +2010-05-25 16:22:58 +0200 Edward Hervey -2011-08-18 09:17:04 +0200 Sebastian Dröge + * ges/ges-timeline.c: + GESTimeline: Freeze state of Tracks when doing an async state change - * omx/gstbaseaudiodecoder.c: - baseaudiodecoder: Delay sending of serialized events to finish_frame() +2010-05-20 10:46:38 +0200 Edward Hervey -2011-08-17 14:33:31 +0200 Sebastian Dröge + * tests/examples/.gitignore: + * tests/examples/Makefile.am: + * tests/examples/concatenate.c: + examples: New concatenate examples. + Allows concatenating several files of the same type together - * omx/gstomxaudioenc.c: - omxaudioenc: Always require at least OMX_MIN_PCMPAYLOAD_MSEC per input buffer +2010-05-20 10:44:01 +0200 Edward Hervey -2011-08-17 14:28:44 +0200 Sebastian Dröge + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-utils.c: + * ges/ges-utils.h: + * ges/ges.h: + GES: Add a new utility file + API : ges_timeline_new_audio_video() - * omx/gstbaseaudioencoder.c: - * omx/gstbaseaudioencoder.h: - baseaudioencoder: Add support for requesting a minimum and maximum number of samples per frame - This extends the special case of a fixed number of samples per frame - that was supported before already. +2010-05-11 15:03:33 +0200 Edward Hervey -2011-08-17 14:17:18 +0200 Sebastian Dröge + * tests/examples/.gitignore: + examples: Ignore some files - * omx/gstomxaudioenc.c: - omxaudioenc: Handle inbuf==NULL properly in ::handle_frame() +2010-05-20 12:29:30 +0200 Edward Hervey -2011-08-17 13:04:19 +0200 Sebastian Dröge + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Only remove the playsink if it was used - * omx/gstomxaacenc.c: - omxaacenc: Implement ::get_num_samples() vfunc +2010-05-19 15:50:51 +0200 Edward Hervey -2011-08-17 13:03:50 +0200 Sebastian Dröge + * docs/libs/Makefile.am: + docs: Use proper CFLAGS/LIBS when building docs - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - omxaudioenc: Add vfunc to get the number of samples inside a buffer +2010-05-19 15:50:41 +0200 Edward Hervey -2011-08-17 11:34:31 +0200 Sebastian Dröge + * ges/ges-timeline.c: + GESTimeline: Remove unused variable - * omx/gstomxaudioenc.c: - omxaudioenc: Release baseaudioencoder stream lock while waiting for a buffer in ::handle_frame() - This prevents deadlocks if no empty input buffers are available and - releasing input buffers requires the loop function to handle some - output buffers first. +2010-05-19 12:39:23 +0200 Edward Hervey -2011-08-17 11:34:04 +0200 Sebastian Dröge + * tests/check/ges/.gitignore: + * tests/examples/.gitignore: + tests: ignore more files - * omx/gstbaseaudioencoder.c: - * omx/gstbaseaudioencoder.h: - baseaudioencoder: Fix thread safety issues if both pads have different streaming threads +2010-05-19 12:38:21 +0200 Edward Hervey -2011-08-17 09:58:01 +0200 Sebastian Dröge + * tests/examples/playlist.c: + examples: Allow setting null duration on files + This will make the timeline use GstDiscoverer to analyze the file. - * omx/gstbaseaudioencoder.c: - baseaudioencoder: Taking the OBJECT lock in reset() is not needed +2010-05-19 12:36:11 +0200 Edward Hervey -2011-08-16 11:03:24 +0200 Sebastian Dröge + * ges/ges-timeline.c: + * ges/ges-timeline.h: + 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 - * omx/gstomxaudioenc.c: - omxaudioenc: Remove hack that only applies to the video encoder class +2010-05-19 12:24:44 +0200 Edward Hervey -2011-08-16 10:49:21 +0200 Sebastian Dröge + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + * tests/check/ges/filesource.c: + 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 - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomx.conf: - * omx/gstomxaacenc.c: - * omx/gstomxaacenc.h: - omxaacenc: Add initial version of OpenMAX AAC encoder element +2010-05-19 12:19:37 +0200 Edward Hervey -2011-08-15 15:10:04 +0200 Sebastian Dröge + * ges/ges-timeline-object.c: + 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 - * omx/Makefile.am: - * omx/gstomxaudioenc.c: - * omx/gstomxaudioenc.h: - omxaudioenc: Add initial version of audio encoder base class +2010-05-19 12:14:34 +0200 Edward Hervey -2011-08-15 14:14:11 +0200 Sebastian Dröge + * ges/ges-simple-timeline-layer.c: + 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. - * omx/gstbaseaudioencoder.c: - baseaudioencoder: Delay sending of serialized events to finish_frame() +2010-05-18 19:07:27 +0200 Edward Hervey -2011-08-15 13:06:51 +0200 Sebastian Dröge + * configure.ac: + * ges/Makefile.am: + configure: Depend on gstreamer-discoverer + +2010-05-18 17:43:28 +0200 Edward Hervey + + * ges/ges-track.c: + * ges/ges-track.h: + GESTrack: Make GESTrackType a flag, and add GES_TRACK_TYPE_UNKNOWN + Also add a bit more documentation about it. + +2010-05-18 15:19:06 +0200 Edward Hervey + + * docs/libs/.gitignore: + * docs/libs/doc-registry.xml: + * docs/libs/ges-decl-list.txt.bak: + * docs/libs/ges-decl.txt.bak: + * docs/libs/html/GESCustomTimelineSource.html: + * docs/libs/html/GESSimpleTimelineLayer.html: + * docs/libs/html/GESTimeline.html: + * docs/libs/html/GESTimelineFileSource.html: + * docs/libs/html/GESTimelineLayer.html: + * docs/libs/html/GESTimelineObject.html: + * docs/libs/html/GESTimelinePipeline.html: + * docs/libs/html/GESTimelineSource.html: + * docs/libs/html/GESTimelineTransition.html: + * docs/libs/html/GESTrack.html: + * docs/libs/html/GESTrackFileSource.html: + * docs/libs/html/GESTrackObject.html: + * docs/libs/html/GESTrackSource.html: + * docs/libs/html/api-index-full.html: + * docs/libs/html/architecture.xml: + * docs/libs/html/ch01.html: + * docs/libs/html/ch02.html: + * docs/libs/html/ch03.html: + * docs/libs/html/ch04.html: + * docs/libs/html/ges-Initialization.html: + * docs/libs/html/ges-architecture.html: + * docs/libs/html/ges-hierarchy.html: + * docs/libs/html/ges.devhelp: + * docs/libs/html/ges.devhelp2: + * docs/libs/html/home.png: + * docs/libs/html/index.html: + * docs/libs/html/index.sgml: + * docs/libs/html/layer_track_overview.png: + * docs/libs/html/left.png: + * docs/libs/html/right.png: + * docs/libs/html/style.css: + * docs/libs/html/up.png: + * docs/libs/tmpl/ges-common.sgml: + * docs/libs/tmpl/ges-common.sgml.bak: + * docs/libs/tmpl/ges-custom-timeline-source.sgml: + * docs/libs/tmpl/ges-custom-timeline-source.sgml.bak: + * docs/libs/tmpl/ges-simple-timeline-layer.sgml: + * docs/libs/tmpl/ges-simple-timeline-layer.sgml.bak: + * docs/libs/tmpl/ges-timeline-filesource.sgml: + * docs/libs/tmpl/ges-timeline-filesource.sgml.bak: + * docs/libs/tmpl/ges-timeline-layer.sgml: + * docs/libs/tmpl/ges-timeline-layer.sgml.bak: + * docs/libs/tmpl/ges-timeline-object.sgml: + * docs/libs/tmpl/ges-timeline-object.sgml.bak: + * docs/libs/tmpl/ges-timeline-pipeline.sgml: + * docs/libs/tmpl/ges-timeline-pipeline.sgml.bak: + * docs/libs/tmpl/ges-timeline-source.sgml: + * docs/libs/tmpl/ges-timeline-source.sgml.bak: + * docs/libs/tmpl/ges-timeline-transition.sgml: + * docs/libs/tmpl/ges-timeline-transition.sgml.bak: + * docs/libs/tmpl/ges-timeline.sgml: + * docs/libs/tmpl/ges-timeline.sgml.bak: + * docs/libs/tmpl/ges-track-filesource.sgml: + * docs/libs/tmpl/ges-track-filesource.sgml.bak: + * docs/libs/tmpl/ges-track-object.sgml: + * docs/libs/tmpl/ges-track-object.sgml.bak: + * docs/libs/tmpl/ges-track-source.sgml: + * docs/libs/tmpl/ges-track-source.sgml.bak: + * docs/libs/tmpl/ges-track.sgml: + * docs/libs/tmpl/ges-track.sgml.bak: + * docs/libs/tmpl/ges-unused.sgml: + * docs/libs/xml/api-index-deprecated.xml: + * docs/libs/xml/api-index-full.xml: + * docs/libs/xml/ges-common.xml: + * docs/libs/xml/ges-custom-timeline-source.xml: + * docs/libs/xml/ges-doc.bottom: + * docs/libs/xml/ges-doc.top: + * docs/libs/xml/ges-simple-timeline-layer.xml: + * docs/libs/xml/ges-timeline-filesource.xml: + * docs/libs/xml/ges-timeline-layer.xml: + * docs/libs/xml/ges-timeline-object.xml: + * docs/libs/xml/ges-timeline-pipeline.xml: + * docs/libs/xml/ges-timeline-source.xml: + * docs/libs/xml/ges-timeline-transition.xml: + * docs/libs/xml/ges-timeline.xml: + * docs/libs/xml/ges-track-filesource.xml: + * docs/libs/xml/ges-track-object.xml: + * docs/libs/xml/ges-track-source.xml: + * docs/libs/xml/ges-track.xml: + * docs/libs/xml/object_index.sgml: + * docs/libs/xml/tree_index.sgml: + * docs/libs/xml/version.entities: + docs: And remove all the stuff that's meant to be generated at runtime + +2010-05-18 12:56:24 +0200 Edward Hervey + + * docs/libs/doc-registry.xml: + * docs/libs/ges-decl-list.txt.bak: + * docs/libs/ges-decl.txt.bak: + * docs/libs/ges-sections.txt: + * docs/libs/html/GESCustomTimelineSource.html: + * docs/libs/html/GESSimpleTimelineLayer.html: + * docs/libs/html/GESTimeline.html: + * docs/libs/html/GESTimelineFileSource.html: + * docs/libs/html/GESTimelineLayer.html: + * docs/libs/html/GESTimelineObject.html: + * docs/libs/html/GESTimelinePipeline.html: + * docs/libs/html/GESTimelineSource.html: + * docs/libs/html/GESTimelineTransition.html: + * docs/libs/html/GESTrack.html: + * docs/libs/html/GESTrackFileSource.html: + * docs/libs/html/GESTrackObject.html: + * docs/libs/html/GESTrackSource.html: + * docs/libs/html/api-index-full.html: + * docs/libs/html/architecture.xml: + * docs/libs/html/ch01.html: + * docs/libs/html/ch02.html: + * docs/libs/html/ch03.html: + * docs/libs/html/ch04.html: + * docs/libs/html/ges-Initialization.html: + * docs/libs/html/ges-architecture.html: + * docs/libs/html/ges-hierarchy.html: + * docs/libs/html/ges.devhelp: + * docs/libs/html/ges.devhelp2: + * docs/libs/html/home.png: + * docs/libs/html/index.html: + * docs/libs/html/index.sgml: + * docs/libs/html/layer_track_overview.png: + * docs/libs/html/left.png: + * docs/libs/html/right.png: + * docs/libs/html/style.css: + * docs/libs/html/up.png: + * docs/libs/tmpl/ges-common.sgml: + * docs/libs/tmpl/ges-common.sgml.bak: + * docs/libs/tmpl/ges-custom-timeline-source.sgml: + * docs/libs/tmpl/ges-custom-timeline-source.sgml.bak: + * docs/libs/tmpl/ges-simple-timeline-layer.sgml: + * docs/libs/tmpl/ges-simple-timeline-layer.sgml.bak: + * docs/libs/tmpl/ges-timeline-filesource.sgml: + * docs/libs/tmpl/ges-timeline-filesource.sgml.bak: + * docs/libs/tmpl/ges-timeline-layer.sgml: + * docs/libs/tmpl/ges-timeline-layer.sgml.bak: + * docs/libs/tmpl/ges-timeline-object.sgml: + * docs/libs/tmpl/ges-timeline-object.sgml.bak: + * docs/libs/tmpl/ges-timeline-pipeline.sgml: + * docs/libs/tmpl/ges-timeline-pipeline.sgml.bak: + * docs/libs/tmpl/ges-timeline-source.sgml: + * docs/libs/tmpl/ges-timeline-source.sgml.bak: + * docs/libs/tmpl/ges-timeline-transition.sgml: + * docs/libs/tmpl/ges-timeline-transition.sgml.bak: + * docs/libs/tmpl/ges-timeline.sgml: + * docs/libs/tmpl/ges-timeline.sgml.bak: + * docs/libs/tmpl/ges-track-filesource.sgml: + * docs/libs/tmpl/ges-track-filesource.sgml.bak: + * docs/libs/tmpl/ges-track-object.sgml: + * docs/libs/tmpl/ges-track-object.sgml.bak: + * docs/libs/tmpl/ges-track-source.sgml: + * docs/libs/tmpl/ges-track-source.sgml.bak: + * docs/libs/tmpl/ges-track.sgml: + * docs/libs/tmpl/ges-track.sgml.bak: + * docs/libs/tmpl/ges-unused.sgml: + * docs/libs/xml/api-index-deprecated.xml: + * docs/libs/xml/api-index-full.xml: + * docs/libs/xml/ges-common.xml: + * docs/libs/xml/ges-custom-timeline-source.xml: + * docs/libs/xml/ges-doc.bottom: + * docs/libs/xml/ges-doc.top: + * docs/libs/xml/ges-simple-timeline-layer.xml: + * docs/libs/xml/ges-timeline-filesource.xml: + * docs/libs/xml/ges-timeline-layer.xml: + * docs/libs/xml/ges-timeline-object.xml: + * docs/libs/xml/ges-timeline-pipeline.xml: + * docs/libs/xml/ges-timeline-source.xml: + * docs/libs/xml/ges-timeline-transition.xml: + * docs/libs/xml/ges-timeline.xml: + * docs/libs/xml/ges-track-filesource.xml: + * docs/libs/xml/ges-track-object.xml: + * docs/libs/xml/ges-track-source.xml: + * docs/libs/xml/ges-track.xml: + * docs/libs/xml/object_index.sgml: + * docs/libs/xml/tree_index.sgml: + * docs/libs/xml/version.entities: + * ges/ges-timeline-object.h: + GESTimelineObject: Document CreateTrackObjectFunc vmethod + +2010-05-18 12:32:31 +0200 Edward Hervey + + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * docs/libs/scanobj-build.stamp: + docs: Make sure hierarchy/properties/signals get built for all classes + +2010-05-10 12:44:56 +0200 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Fix 32bit runtime issues + +2010-05-07 13:30:07 +0200 Edward Hervey + + * ges/ges-timeline-pipeline.c: + 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-06 19:57:25 +0200 Edward Hervey + + * tests/examples/playlist.c: + examples: Add option to specify video restriction + Some encoders don't handle _get_caps() properly :( + +2010-04-27 11:45:15 +0200 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Remove unused variable/label. + +2010-04-20 13:41:20 +0200 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Cleanup properly when pads are removed + +2010-04-20 13:26:00 +0200 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Implement smart rendering + +2010-04-20 13:08:27 +0200 Edward Hervey + + * tests/examples/Makefile.am: + * tests/examples/playlist.c: + examples: New playlist examples + Allows giving lists of file/start/duration triplets and testing the + various timeline-pipeline modes (preview, render, smart-render) + +2010-04-20 13:04:31 +0200 Edward Hervey - * omx/Makefile.am: - * omx/gstbaseaudiodecoder.c: - * omx/gstbaseaudiodecoder.h: - * omx/gstbaseaudioencoder.c: - * omx/gstbaseaudioencoder.h: - audio: Integrate audio base classes into the build system and fixup + * tests/check/Makefile.am: + check: Use GST_CFLAGS so we get new compilation flags -2011-08-15 12:56:00 +0200 Sebastian Dröge +2010-04-20 13:00:38 +0200 Edward Hervey - * omx/gstbaseaudiodecoder.c: - * omx/gstbaseaudiodecoder.h: - * omx/gstbaseaudioencoder.c: - * omx/gstbaseaudioencoder.h: - * omx/gstbaseaudioutils.c: - * omx/gstbaseaudioutils.h: - audio: Add audio decoder/encoder base classes - Taken from http://cgit.collabora.com/git/user/manauw/gst-plugins-bad.git/log/?h=baseaudio + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + GESTimelinePipeline: Store encoding profile -2011-08-12 12:25:03 +0200 Sebastian Dröge +2010-04-20 12:59:26 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - basevideoencoder: Proxy the width/height/framerate/PAR constraints of downstream caps to upstream - This allows to specify constraints on the compressed downstream caps - by muxers or capsfilters, which will then be forwarded to upstream - and allows video converters to fulfill the constraints. - Code based on Mark Nauwelaerts audio encoder base class. + * ges/ges-timeline-pipeline.h: + GESTimelinePipeline: New Smart Render mode -2011-08-12 12:13:45 +0200 Sebastian Dröge +2010-04-20 12:57:53 +0200 Edward Hervey - * omx/gstbasevideoencoder.h: - basevideoencoder: Remove old ::getcaps() comment + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: new functions to search/create OutputChain -2011-08-12 12:06:23 +0200 Sebastian Dröge +2010-04-20 12:53:51 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - basevideoencoder: Remove ::get_caps() vfunc - Subclasses can set the caps more efficiently and this only - caused additional indirections. + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Remove unused code -2011-08-10 10:24:21 +0200 Sebastian Dröge +2010-04-20 12:50:34 +0200 Edward Hervey - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxvideoenc.c: - omxvideoenc: Use "video/x-raw-yuv" as sink template caps instead of strict I420 caps + * ges/ges-track.c: + GESTrack: set caps on the composition + This will allow them to be propagated to all objects contained within -2011-08-10 10:23:39 +0200 Sebastian Dröge +2010-04-20 12:50:09 +0200 Mark Nauwelaerts - * omx/gstomxmpeg4videodec.c: - omxmpeg4videodec: Don't require width/height on sink pad caps + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline.c: + GESTimeLine(PipeLine): remove additional unref -2011-08-10 10:11:37 +0200 Sebastian Dröge +2010-04-20 12:47:22 +0200 Edward Hervey - * omx/gstomxh263dec.c: - * omx/gstomxh264dec.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxvideodec.c: - * omx/gstomxwmvdec.c: - omxvideodec: Use "video/x-raw-yuv" as src template caps instead of strict I420 caps + * configure.ac: + configure.ac : round of cleanup + Add extra CFLAGS + Change GST_CVS to GST_GIT + Add -DGST_USE_UNSTABLE_API for gstprofile, since we know it's unstable. -2011-08-10 09:56:30 +0200 Sebastian Dröge +2010-04-20 12:28:59 +0200 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Set the state back to StateLoaded even if an error happened + * ges/Makefile.am: + ges: Link gstprofile -2011-08-10 09:49:57 +0200 Sebastian Dröge +2010-04-20 11:48:21 +0200 Edward Hervey - * omx/gstomx.c: - omx: Don't hold any locks while calling OMX_SendCommand() - It might call into one of the callbacks and lead to deadlocks, e.g. - with the Qualcomm OMX implementation. + * docs/libs/ges-sections.txt: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + GESTimeline: New method ges_timeline_get_tracks -2011-08-10 09:32:01 +0200 Sebastian Dröge +2010-03-13 16:43:59 +0100 Edward Hervey - * omx/gstomx.c: - omx: Move some code + * tests/examples/Makefile.am: + * tests/examples/simple1.c: + examples: Simple Audio/Video example + Currently one can: + * Give a multimedia file + * modify the inpoint + * modify the duration + * mute the audio -2011-08-10 09:23:10 +0200 Sebastian Dröge +2010-03-13 16:05:37 +0100 Edward Hervey - * omx/gstomx.c: - omx: Reset pending reconfigure output ports when changing the state from Executing to any lower state + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Fix minor bug in get_compatible_unlinked_pad + We weren't breaking and ended up doing a fallthrough to the loop + completion. -2011-08-10 09:08:00 +0200 Sebastian Dröge +2010-03-13 15:53:16 +0100 Edward Hervey - * omx/gstomx.c: - omx: Fix crash when setting last error after the ports were freed + * ges/ges-timeline-object.h: + GESTimelineObject: Fix doc of priority property -2011-08-10 09:03:52 +0200 Sebastian Dröge +2010-03-13 15:51:16 +0100 Edward Hervey - * omx/gstomx.c: - omx: Free component structure + * ges/ges-track-filesource.c: + GESTrackFileSource: Don't forget to free the URI string -2011-08-10 09:02:52 +0200 Sebastian Dröge +2010-03-12 19:07:15 +0100 Edward Hervey - * omx/gstomx.c: - omx: Make component destruction safer + * tests/check/Makefile.am: + * tests/check/ges/layer.c: + tests: Add unit test for layer property. + Still needs more work though -2011-08-10 08:53:05 +0200 Sebastian Dröge +2010-03-12 19:06:42 +0100 Edward Hervey - * omx/gstomx.c: - omx: Set pAppPrivate of buffers to NULL when deallocating buffers - This prevents usage of freed memory later if the OMX component - has weird behaviour. + * docs/libs/ges-sections.txt: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + GESTimelineLayer: Add a 'priority' property -2011-08-10 08:52:25 +0200 Sebastian Dröge +2010-03-12 18:42:28 +0100 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Set the state back to StateLoaded even if an error happened + * ges/ges-timeline.c: + GESTimeline: Properly iterate TrackObject lists when removing them -2011-08-10 08:51:54 +0200 Sebastian Dröge +2010-03-12 19:05:36 +0100 Edward Hervey - * omx/gstomx.c: - omx: Add some assertions to check if the buffer pAppPrivate is still correct + * tests/check/ges/basic.c: + tests: Check refcount of created trackobjects -2011-08-08 13:04:30 +0200 Sebastian Dröge +2010-03-13 15:52:14 +0100 Edward Hervey - * omx/gstomx.h: - omx: Add parenthesis at correct places in the struct init macro + * ges/ges-timeline-object.c: + * tests/check/ges/filesource.c: + GESTimelineObject: Don't leak a reference when creating TrackObject -2011-08-08 12:12:58 +0200 Sebastian Dröge +2010-03-12 17:17:30 +0100 Edward Hervey - * omx/gstomx.c: - omx: Only prevent setting a higher state if the component is in an error state + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + GESTimelineObject: new API : _find_track_object + This allows getting the TrackObject for a corresponding TimelineObject + and Track combination -2011-08-03 16:02:01 +0200 Sebastian Dröge +2010-03-12 17:08:00 +0100 Edward Hervey - * omx/gstbasevideodecoder.c: - basevideodecoder: Use the cached video frame size instead of recalculating it + * Makefile.am: + * configure.ac: + configure: use automake 1. 11 silent rules instead of shave if available -2011-08-03 15:35:01 +0200 Sebastian Dröge +2010-03-12 17:09:03 +0100 Edward Hervey - * omx/gstomx.c: - omx: Improve debugging in param/config getter/setter wrappers + * common: + common: Update to latest common -2011-08-03 13:10:33 +0200 Sebastian Dröge +2010-03-11 11:06:50 +0100 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Don't abort if the color format is not supported but give a useful error message + * .gitignore: + * tests/check/ges/.gitignore: + * tests/examples/.gitignore: + ignore more files -2011-08-02 15:14:37 +0200 Sebastian Dröge +2010-03-05 16:10:13 +0100 Edward Hervey - * omx/gstomxh263enc.c: - * omx/gstomxh264enc.c: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxvideoenc.c: - omxvideoenc: Don't fail if setting the bitrate or profile is not supported by the component - Also always set/get the profile, even if there are no peer caps. + * tests/examples/Makefile.am: + examples: Fix linking/include order -2011-08-02 15:14:24 +0200 Sebastian Dröge +2010-03-05 15:50:49 +0100 Edward Hervey - * omx/gstbasevideoencoder.c: - basevideoencoder: Make access to the list of frames threadsafe + * tests/check/ges/filesource.c: + check: Add a test for checking timelinefilesource properties + This include the mute feature -2011-08-01 13:22:05 +0200 Sebastian Dröge +2010-02-09 17:45:42 +0100 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - omx: Add a hacks flag for the Qualcomm 7x30 OMX_FillThisBuffer() race and make it optional + * tests/examples/Makefile.am: + examples: Use profile LIBS + and fix a typo with GST_LIBS -2011-07-29 13:56:59 +0200 Sebastian Dröge +2010-02-09 17:44:54 +0100 Edward Hervey - * omx/gstomx.c: - omx: Add workaround for QCOM 7x30 race condition + * configure.ac: + configure.ac: gst-profile is now a standalone pkgconfig -2011-07-29 12:06:21 +0200 Sebastian Dröge +2010-01-20 11:09:56 +0100 Jarkko Pallviainen - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxh263enc.c: - * omx/gstomxh263enc.h: - omxh263enc: Add H.263 encoder element + * tests/examples/test1.c: + examples: Fix build on 32bit systems -2011-07-29 11:26:39 +0200 Sebastian Dröge +2010-01-08 18:21:08 +0100 Edward Hervey - * omx/gstomxmpeg4videoenc.c: - omxmpeg4videoenc: Add support for setting profile/level via caps + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Add comment for _set_render_settings -2011-07-28 14:14:45 +0200 Sebastian Dröge +2010-01-08 18:16:16 +0100 Edward Hervey - * omx/gstomxh264enc.c: - omxh264enc: Add support for setting profile/level via caps + * tests/examples/Makefile.am: + * tests/examples/test4.c: + examples: test4: variant of test3 with rendering. + Usage: ./test4 output_uri audio_files + This will render in ogg/vorbis the first seconds of all the provided + audio files to the output_uri + Ex : ./test4 file:///data/audio1s.ogg /data/music/*.ogg -2011-07-28 12:58:25 +0200 Sebastian Dröge +2010-01-08 18:14:46 +0100 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Add support for forcing the next frame to be a keyframe + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Also get static pads for static pads from encodebin. + This is for the cases where the provided GstStreamEncodingProfile has + a non-zero presence. -2011-07-28 11:54:16 +0200 Sebastian Dröge +2010-01-08 17:05:01 +0100 Edward Hervey - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Add support for setting bitrate/quantization related parameters + * configure.ac: + configure.ac: detect gst-convenience -2011-07-28 10:23:08 +0200 Sebastian Dröge +2009-12-11 15:24:56 +0100 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - omx: Add wrapper functions for OMX_[GS]et{Config,Parameter} + * ges/ges-custom-timeline-source.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-track-object.h: + ges: Small doc fixups -2011-07-28 09:54:53 +0200 Sebastian Dröge +2009-12-11 15:17:02 +0100 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - omx: Add macro to initialize OpenMAX structures + * tests/check/ges/timelineobject.c: + tests: Fix macro by making it use the proper argument types -2011-07-28 09:08:38 +0200 Sebastian Dröge +2009-12-11 15:16:26 +0100 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Don't output 0-byte buffers + * tests/check/Makefile.am: + tests: Fix linking order. + This ensures that "make check" will run with the local libraries and not + the system-wide ones + +2009-12-11 15:15:29 +0100 Edward Hervey + + * ges/ges-timeline-object.c: + GESTimelineObject: Move property setting to an earlier stage. + This ensures that any properties set on the TimelineObject will be + propagated to the created TrackObjects just after they're created + +2009-12-11 15:13:19 +0100 Edward Hervey + + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: Store pending values when GnlObject isn't created yet + +2009-12-11 15:17:25 +0100 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Sync state of newly added element to container + +2009-12-09 15:03:30 +0100 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Don't forget to remember the mode + +2009-12-09 15:03:15 +0100 Edward Hervey + + * ges/ges-timeline-file-source.c: + GESTimelineFileSource: Properly handle mute + mute != active + +2009-12-09 12:22:34 +0100 Edward Hervey + + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: More render support + +2009-12-04 10:49:32 +0100 Edward Hervey + + * docs/libs/ges-sections.txt: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + GESTimelinePipeline: beginning of render support + +2009-11-30 15:14:25 +0100 Edward Hervey + + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + * ges/ges-internal.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-filesource.c: + * ges/ges-track-filesource.h: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track-source.c: + * ges/ges-track-source.h: + * ges/ges-track.c: + * ges/ges-track.h: + * ges/ges-types.h: + * ges/ges.c: + * ges/ges.h: + ges/: Fix copyright in headers + +2009-11-30 15:14:06 +0100 Edward Hervey -2011-07-25 15:05:08 +0200 Sebastian Dröge + * AUTHORS: + AUTHORS: Add myself - * omx/gstomx.c: - omx: Ensure that the pAppPrivate pointer in OMX buffers is set correctly +2009-11-25 13:13:49 +0100 Edward Hervey -2011-07-25 13:19:06 +0200 Sebastian Dröge + * ges/ges-timeline-file-source.c: + timelinefilesource: Free URI when finalizing - * omx/gstomxvideodec.c: - * omx/gstomxvideoenc.c: - omxvideo{enc,dec}: Only set/unset flushing state on ports if they were created already +2009-11-25 13:11:32 +0100 Edward Hervey -2011-07-25 12:01:05 +0200 Sebastian Dröge + * ges/ges-track-object.c: + trackobject: priority is a uint32 - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxwmvdec.c: - * omx/gstomxwmvdec.h: - omxwmvdec: Add WMV video decoder element +2009-11-25 12:53:13 +0100 Edward Hervey -2011-07-25 11:44:56 +0200 Sebastian Dröge + * tests/check/ges/timelineobject.c: + tests: release TrackObject when we're done with it - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxh263dec.c: - * omx/gstomxh263dec.h: - omxh263dec: Add H.263 decoder element +2009-11-25 12:52:50 +0100 Edward Hervey -2011-07-25 11:32:51 +0200 Sebastian Dröge + * tests/check/ges/simplelayer.c: + * tests/check/ges/timelineobject.c: + tests: Don't forget to cast to guint64 when using g_object_set + ... else total failure ensues on 32bit machines - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxh264enc.c: - * omx/gstomxh264enc.h: - omxh264enc: Add H.264 encoder element +2009-11-25 11:56:58 +0100 Edward Hervey -2011-07-25 10:48:58 +0200 Sebastian Dröge + * ges/ges-timeline-object.c: + TimelineObject: Add missing argument to printf statement - * omx/gstomxvideodec.c: - omxvideodec: Try harder to deallocate the buffers after errors happened +2009-11-25 11:55:50 +0100 Edward Hervey -2011-07-25 10:47:28 +0200 Sebastian Dröge + * ges/ges-custom-timeline-source.c: + customtimelinesource: Fix indentation - * omx/gstomxvideoenc.c: - omxvideoenc: Try harder to deallocate the buffers after errors happened +2009-11-25 11:14:02 +0100 Edward Hervey -2011-07-25 10:46:49 +0200 Sebastian Dröge + * docs/working-diagrams.svg: + docs: updates to working diagram, still needs more love - * omx/gstomx.c: - omx: Deallocate port buffers before freeing the component - They should be deallocated by the caller before reaching the - Loaded state but to be on the safe side we will make sure - they're really deallocated here. +2009-11-15 18:23:33 +0100 Edward Hervey -2011-07-21 11:15:14 +0200 Sebastian Dröge + * configure.ac: + * docs/libs/Makefile.am: + * docs/libs/architecture.xml: + * docs/libs/layer_track_overview.png: + * docs/working-diagrams.svg: + docs: Improve docs some more - * omx/gstomxvideoenc.c: - omxvideoenc: Add initial support for stride conversion +2009-11-12 20:11:28 +0100 Edward Hervey -2011-07-21 10:38:26 +0200 Sebastian Dröge + * common: + * docs/libs/Makefile.am: + * docs/libs/architecture.xml: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/ges.types: + * ges/ges.c: + docs: Add overview and architecture document and cleanup docs more. - * omx/gstomxh264dec.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxmpeg4videoenc.c: - omx: Set default roles for the components if none were set from the config file +2009-11-12 19:14:35 +0100 Edward Hervey -2011-07-21 10:36:19 +0200 Sebastian Dröge + * docs/design/gstprofile.h: + docs: Update to gstprofile header - * omx/gstomx.c: - omx: Failure to set the component role is fatal +2009-11-09 15:55:06 +0100 Edward Hervey -2011-07-21 07:53:25 +0200 Sebastian Dröge + * .gitignore: + ignore more files - * omx/gstomxvideoenc.c: - omxvideoenc: Add support for setting codec_data on the srcpad caps +2009-11-09 15:54:18 +0100 Edward Hervey -2011-07-21 07:44:34 +0200 Sebastian Dröge + * m4/Makefile.am: + * m4/codeset.m4: + * m4/gettext.m4: + * m4/glibc2.m4: + * m4/glibc21.m4: + * m4/iconv.m4: + * m4/intdiv0.m4: + * m4/intl.m4: + * m4/intldir.m4: + * m4/intlmacosx.m4: + * m4/intmax.m4: + * m4/inttypes-pri.m4: + * m4/inttypes_h.m4: + * m4/lcmessage.m4: + * m4/lib-ld.m4: + * m4/lib-link.m4: + * m4/lib-prefix.m4: + * m4/libtool.m4: + * m4/lock.m4: + * m4/longlong.m4: + * m4/ltoptions.m4: + * m4/ltsugar.m4: + * m4/ltversion.m4: + * m4/lt~obsolete.m4: + * m4/nls.m4: + * m4/po.m4: + * m4/printf-posix.m4: + * m4/progtest.m4: + * m4/size_max.m4: + * m4/stdint_h.m4: + * m4/uintmax_t.m4: + * m4/visibility.m4: + * m4/wchar_t.m4: + * m4/wint_t.m4: + * m4/xsize.m4: + remove m4/*.m4, will be automatically created by autogen.sh + +2009-11-05 10:22:57 +0100 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Free/drop GstVideoFrames that resulted in an empty buffer + * common: + update common submodule version used -2011-07-21 07:44:10 +0200 Sebastian Dröge +2009-10-22 17:37:54 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - basevideoencoder: Allow finishing of frames with no src_buffer to drop/free the GstVideoFrame + * docs/libs/ges-sections.txt: + docs: Add missing symbol to documentation -2011-07-21 07:31:05 +0200 Sebastian Dröge +2009-10-19 18:32:23 +0200 Edward Hervey - * omx/gstomxvideoenc.c: - omxvideoenc: Remove obsolete TODO comment + * docs/design/encoding-research.txt: + * docs/design/encoding.txt: + * docs/design/gstprofile.h: + docs/design: Fixups/additions based on feedback -2011-07-20 11:09:54 +0200 Sebastian Dröge +2009-10-07 16:23:22 +0200 Edward Hervey - * omx/Makefile.am: - * omx/gstomx.c: - omx: Use libgstopenmax.so for the plugin filename and openmax for the plugin name - Resolves conflicts with gst-openmax. + * docs/design/encoding-research.txt: + * docs/design/encoding.txt: + * docs/design/gstencodebin.h: + * docs/design/gstprofile.h: + docs/design: Add encoding/profile proposal/design -2011-07-20 08:34:33 +0200 Sebastian Dröge +2009-09-30 16:45:13 +0200 Edward Hervey - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomx.conf: - * omx/gstomx.h: - * omx/gstomxmpeg4videoenc.c: - * omx/gstomxmpeg4videoenc.h: - * omx/gstomxvideoenc.c: - * omx/gstomxvideoenc.h: - omxvideoenc: Add video encoder base class and MPEG4 video encoder - Unfortunately requires lots of hacks again to work properly with - Bellagio. + * tests/check/Makefile.am: + * tests/check/ges/timelineobject.c: + tests: New unit test for GESTimelineObject -2011-07-20 10:39:51 +0200 Sebastian Dröge +2009-09-30 16:44:41 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - basevideoencoder: Only get caps from the subclass if they were not set yet by the subclass + * ges/ges-timeline-object.c: + GESTimelineObject: First set the duration and priority before the inpoint. -2011-07-20 09:25:28 +0200 Sebastian Dröge +2009-09-30 16:44:12 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - basevideoencoder: Delay sending of serialized sink events until finish_frame() + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + GESTimelineFileSource: Add a 'mute' property. + This property deactivates the audio trackobjects if set to TRUE -2011-07-20 09:09:25 +0200 Sebastian Dröge +2009-09-30 16:43:12 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - basevideoencoder: Add ::reset vfunc and handle ::reset/::finish the same way as in the decoder + * ges/ges-track-object.c: + GESTrackObject: Listen to property change from gnlobject + TODO: add/emit the 'changed' signal -2011-07-19 12:50:43 +0200 Sebastian Dröge +2009-09-30 16:42:31 +0200 Edward Hervey - * omx/gstbasevideoencoder.c: - basevideoencoder: Use a temporary GstVideoState until the subclass accepted the caps - Also store the caps in the GstVideoState and assume a PAR of 1/1 instead - of 0/1 if no PAR is specified in the caps. + * ges/ges-track-object.h: + GESTrackObject: Add convenience macros for accessing properties -2011-07-19 12:29:51 +0200 Sebastian Dröge +2009-09-30 16:42:08 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomxvideodec.c: - omx: Improve debug output a bit + * ges/ges-track-object.c: + GESTrackObject: Set sane default values -2011-07-19 10:33:54 +0200 Sebastian Dröge +2009-09-30 16:40:59 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omx: Rework port reconfiguration again and only use the Bellagio specific hacks with Bellagio - We only reconfigure ports that need to be reconfigured now instead of - always all ports. + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: Add 'active' property. + This property allows (de)activating a track object -2011-07-19 10:33:15 +0200 Sebastian Dröge +2009-09-29 15:32:23 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.conf: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omx: Add infrastructure to enable special hacks for broken OpenMAX implementations + * tests/examples/Makefile.am: + * tests/examples/test3.c: + tests/examples: test3, same as test2, but uses a SimpleTimelineLayer -2011-07-18 13:10:49 +0200 Sebastian Dröge +2009-09-29 15:29:11 +0200 Edward Hervey - * omx/gstomx.c: - omx: When acquiring a buffer from an input port always wait until all output ports are reconfigured + * tests/check/Makefile.am: + * tests/check/ges/simplelayer.c: + tests/check: Add test for GESSimpleTimelineLayer -2011-07-18 08:41:20 +0200 Sebastian Dröge +2009-09-29 15:27:55 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Add support for converting between omx and gst rowstrides + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + GESSimpleTimelineLayer: Implement add()/move() and parent class changes + If changes happen when accessing the GESTimelineLayer API, they will be taken + into account. -2011-07-14 10:34:09 +0200 Sebastian Dröge +2009-09-29 15:27:17 +0200 Edward Hervey - * omx/gstomx.c: - omx: Provide all buffers to output ports after enabling them + * ges/ges-timeline-layer.h: + ges-timeline-layer.h: Add comment -2011-07-14 08:29:03 +0200 Sebastian Dröge +2009-09-29 15:25:54 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Add support for NV12 / OMX_COLOR_FormatYUV420SemiPlanar + * docs/libs/ges-sections.txt: + * ges/ges-timeline-object.h: + ges-timeline-object: Add convenience macros -2011-07-14 07:58:41 +0200 Sebastian Dröge +2009-09-21 18:11:19 +0200 Edward Hervey - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Only flush the component ports after we passed input to them + * tests/examples/Makefile.am: + * tests/examples/test2.c: + tests/example: New small example of timeline file sources. + This examples takes a list of files with audio tracks, and plays the first + second of each. + This demonstrates the usage of GESTimelineFileSource -2011-07-13 21:19:34 +0200 Sebastian Dröge +2009-09-21 18:08:51 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Only change states downwards if an upper state was reached + * tests/check/Makefile.am: + * tests/check/ges/filesource.c: + tests/check: New test for GESTimelineFileSource -2011-07-13 20:37:02 +0200 Sebastian Dröge +2009-09-21 12:51:16 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omx: Add support for setting the component-role + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/Makefile.am: + * ges/ges-timeline-file-source.c: + * ges/ges-timeline-file-source.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-track-filesource.c: + * ges/ges-track-filesource.h: + * ges/ges-types.h: + * ges/ges.h: + New GESTimelineFileSource and GESTrackFileSource classes -2011-07-13 20:22:51 +0200 Sebastian Dröge +2009-09-16 12:37:45 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omx: Improve error reporting by formatting the error codes better and also providing their string representation + * docs/libs/ges-sections.txt: + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline.c: + Finish public API documentation -2011-07-13 14:36:14 +0200 Sebastian Dröge +2009-09-16 12:37:13 +0200 Edward Hervey - * Makefile.am: - build: Dist autogen.sh + * docs/libs/ges-docs.sgml: + docs: Add index and object hierarchy -2011-07-13 14:35:51 +0200 Sebastian Dröge +2009-09-14 19:45:43 +0200 Edward Hervey - * configure.ac: - * omx/gstomx.c: - build: Only require GStreamer >= 0.10.29 and GLib >= 2.16 + * tests/check/ges/basic.c: + tests: Make basic test check for proper reference counting. -2011-07-13 14:04:47 +0200 Sebastian Dröge +2009-09-14 19:44:03 +0200 Edward Hervey - * omx/Makefile.am: - build: Dist gstomx.conf + * ges/ges-track.c: + GESTrack: The track steals the refcount to the caps. document that. -2011-07-13 14:04:20 +0200 Sebastian Dröge +2009-09-14 19:42:58 +0200 Edward Hervey - * Makefile.am: - build: Clean _stdint.h on "make distclean" + * docs/libs/.gitignore: + docs/libs: ignore more files -2011-07-13 14:02:50 +0200 Sebastian Dröge +2009-09-14 19:24:28 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Fix typo + * ges/ges-timeline.c: + GESTimeline: Fix reference counting of tracks, add docs. -2011-07-13 13:59:50 +0200 Sebastian Dröge +2009-09-14 19:23:52 +0200 Edward Hervey - * omx/Makefile.am: - omx: Dist gstomx.h + * ges/ges-timeline-layer.c: + GESTimelineLayer: Fix reference handling of objects, add docs. -2011-07-13 12:46:50 +0200 Sebastian Dröge +2009-09-14 19:23:21 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Set SYNCFRAME flag on the OMX buffers for non-delta units + * configure.ac: + configure.ac: Require latest gst-plugins-base for 'playsink' -2011-07-13 12:37:44 +0200 Sebastian Dröge +2009-09-14 17:00:13 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Free all pending frames when resetting the decoder - Workaround for https://bugzilla.gnome.org/show_bug.cgi?id=654529 + * ges/ges-timeline.h: + GESTimeline: start more documentation -2011-07-13 09:59:49 +0200 Sebastian Dröge +2009-09-14 16:33:25 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Handle output buffers without a corresponding GstVideoFrame more gracefully - This can happen on EOS in some cases and when the input is not - properly framed. + * docs/libs/ges-sections.txt: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + GESTrackObject: Document some more -2011-07-13 09:31:22 +0200 Sebastian Dröge +2009-09-14 15:51:49 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Fix deadlock when finishing old frames that are left over by the decoder + * docs/libs/ges-sections.txt: + * ges/ges-track.c: + GESTrack: document more -2011-07-12 11:37:28 +0200 Sebastian Dröge +2009-09-10 18:17:38 +0100 Tim-Philipp Müller - * omx/gstomxh264dec.c: - omxh264dec: It's called H.264, not H264 + * docs/libs/Makefile.am: + * docs/libs/ges.types: + docs: fix gtk-doc build and make distcheck for me -2011-07-12 11:36:42 +0200 Sebastian Dröge +2009-09-10 18:53:31 +0200 Edward Hervey - * omx/gstomxh264dec.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Make sink/src pad template caps configurable + * tests/examples/test1.c: + Document first high-level demo. -2011-07-12 11:13:50 +0200 Sebastian Dröge +2009-09-10 18:40:51 +0200 Edward Hervey - * omx/gstomx.c: - omx: Allow to set a preferred configuration directory with the GST_OMX_CONFIG_DIR environment variable + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * ges/ges-custom-timeline-source.c: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-source.c: + * ges/ges-timeline-transition.c: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + * ges/ges-track-source.c: + * ges/ges-track.c: + * ges/ges-track.h: + * ges/ges.c: + More documentation. Coverage now at 25% -2011-07-12 10:55:57 +0200 Sebastian Dröge +2009-09-10 16:23:12 +0200 Edward Hervey - * omx/gstomxh264dec.c: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxvideodec.c: - omxvideodec: Make core/component-name and in/outport index configurable + * docs/random/scenarios: + docs: move working document -2011-07-12 10:05:31 +0200 Sebastian Dröge +2009-09-10 16:22:00 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.conf: - * omx/gstomx.h: - omx: Add initial version of configuration system - This now only registers elements that are specified in the - configuration file. - The configuration file is a keyfile in the first XDG configuration - directory with the name gstomx.conf. + * Makefile.am: + * configure.ac: + * docs/Makefile.am: + * docs/libs/Makefile.am: + * docs/libs/ges-docs.sgml: + * docs/libs/ges-sections.txt: + * docs/libs/scanobj-build.stamp: + * docs/version.entities.in: + docs: Add gtk-doc API documentation + current coverage : 8% -2011-07-12 08:53:15 +0200 Sebastian Dröge +2009-09-09 15:53:53 +0200 Edward Hervey - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxh264dec.c: - * omx/gstomxh264dec.h: - * omx/gstomxh264videodec.h: - omxh264dec: Rename from omxh264videodec to omxh264dec + * tests/examples/test1.c: + test1: Expand example to also use an audio track. -2011-07-12 08:40:48 +0200 Sebastian Dröge +2009-09-09 15:51:52 +0200 Edward Hervey - * omx/gstomxh264videodec.c: - omxh264videodec: Require alignment=au and stream-format={avc,bytestream} + * ges/ges-timeline.c: + GESTimeline: Make sure added ghostpads are unique. -2011-07-11 12:59:07 +0200 Sebastian Dröge +2009-09-09 13:57:37 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - basevideodecoder: First inform subclass about resetting before resetting/freeing all internal state - The subclass might want to access the old state. + * tests/examples/test1.c: + test1: Actually change videotestsrc patterns to make changes obvious. -2011-07-11 12:36:42 +0200 Sebastian Dröge +2009-09-09 13:55:30 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - basevideodecoder: Track present position on discont before resetting it + * tests/examples/test1.c: + test1: Use mainloop, required for proper gnonlin behaviour. -2011-07-11 11:52:33 +0200 Sebastian Dröge +2009-09-09 12:42:29 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - basevideodecoder: Also protect the list of pending frames from concurrent access when pushing all pendings events + * ges/ges-timeline-pipeline.c: + GESTimelinePipeline: Reconfigure playsink once we've added a pad. -2011-07-11 11:28:40 +0200 Sebastian Dröge +2009-09-08 19:46:54 +0200 Edward Hervey - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - basevideocodec: Protect access to the list of pending frames with the object lock - This is required if ::finish_frame() and all buffer output happens - on a different thread than the sinkpad streaming thread. + * tests/examples/test1.c: + examples: Add timeline to pipeline and set it to playing. + ... and now we need to go an fix playsink :) -2011-07-11 09:35:25 +0200 Sebastian Dröge +2009-09-08 19:46:26 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - basevideodecoder: Set the correct lists to NULL after freeing + * tests/check/ges/basic.c: + test/ges/basic: Adapt to API changes. -2011-07-11 08:54:53 +0200 Sebastian Dröge +2009-09-08 19:45:08 +0200 Edward Hervey - * omx/gstbasevideodecoder.c: - basevideodecoder: Work with a copy of the GstVideoState in setcaps until the caps are accepted - Also fix a refcount problem with the codec_data. + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + GESTimelinePipeline: Use 'playsink', track added/removed pads. + Also add a method to set a GESTimeline on the pipeline. -2011-07-12 08:34:44 +0200 Sebastian Dröge +2009-09-08 19:44:03 +0200 Edward Hervey - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomxh264videodec.c: - * omx/gstomxh264videodec.h: - omxh264videodec: Add h.264 video decoder + * ges/ges-timeline.c: + * ges/ges-timeline.h: + GESTimeline: Track internal pads and tracks in sync. + Add method to get the Track associated to a ghostpad. -2011-07-12 08:29:15 +0200 Sebastian Dröge +2009-09-08 18:55:41 +0200 Edward Hervey - * omx/gstomxmpeg4videodec.c: - omxmpeg4videodec: Fix debug category name + * .gitignore: + gitignore: Ignore more files -2011-07-09 11:41:42 +0200 Sebastian Dröge +2009-09-08 18:49:22 +0200 Edward Hervey - * omx/Makefile.am: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoutils.c: - * omx/gstbasevideoutils.h: - basevideo: Move the utils from the codec header to its own header + * ges/ges-track.c: + * ges/ges-track.h: + GESTrack: Add TrackType enum and constructor property. + This allows us to speed up detection of track content type. -2011-07-09 11:32:06 +0200 Sebastian Dröge +2009-09-08 18:47:46 +0200 Edward Hervey - * omx/gstbasevideocodec.c: - * omx/gstbasevideodecoder.c: - basevideo: Use GSlice for allocating GstVideoFrame and don't duplicate code in the decoder base class + * ges/ges-custom-timeline-source.c: + CustomTimelineSource: Fix typo in debug statement -2011-07-09 11:05:37 +0200 Sebastian Dröge +2009-09-07 15:46:44 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Use the destroy notify to free the coder_hook + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + GESTimelinePipeline: Fix typo -2011-07-09 10:57:52 +0200 Sebastian Dröge +2009-08-07 20:33:40 +0200 Edward Hervey - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - basevideo: Add destroy notify for the coder_hook to prevent memory leaks - Fixes bug #654293. + * ges/ges-track-object.c: + TrackObject: Add debugging and make default duration 1s -2011-07-09 10:44:16 +0200 Sebastian Dröge +2009-08-07 20:33:18 +0200 Edward Hervey - * omx/Makefile.am: - basevideo: Fix GType names to not conflict with the public video base classes - It's still not possible to include headers of both in the same file - or compile/link both into the same plugin but that shouldn't be - necessary anyway. + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + TimelineObject: Add start/inpoint/duration/priority properties and propagate them -2011-07-08 15:42:56 +0200 Sebastian Dröge +2009-08-07 20:32:47 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Fix some minor memory leaks + * ges/ges-track.c: + * ges/ges-track.h: + Track: Handle pads -2011-07-08 15:25:07 +0200 Sebastian Dröge +2009-08-07 20:32:29 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omx: Rework port reconfiguration - We always reconfigure all ports now if the settings of one - port changes to prevent lots of race conditions, dropped - frames and similar issues. + * ges/ges-track.c: + * ges/ges-track.h: + Track: Add convenience methods for creating a raw Audio or Video track. -2011-07-08 13:16:45 +0200 Sebastian Dröge +2009-08-07 20:31:11 +0200 Edward Hervey - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Use the frames storage of the base class instead of implementing our own - They could get out of sync and we could store already destroyed frames. + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + * tests/check/ges/basic.c: + CustomTimelineSource: Allow giving user_data to the callback -2011-07-07 12:51:03 +0200 Sebastian Dröge +2009-08-07 20:29:35 +0200 Edward Hervey - * omx/gstomx.h: - omx: Clarify GQueue/GPtrArray element types + * configure.ac: + * tests/Makefile.am: + * tests/examples/Makefile.am: + * tests/examples/test1.c: + Add directory for examples along with a minimalistic first example. -2011-07-07 12:23:24 +0200 Sebastian Dröge +2009-08-07 18:18:42 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxvideodec.c: - omx: Add more checks to acquire_buffer() and return the current state additional to the buffer - Also refactor the code flow in the video decoder for this. This makes - the usage of acquire_buffer() easier and more atomic. + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track.c: + * ges/ges-track.h: + * tests/check/ges/basic.c: + Add 'caps' property on Track -2011-07-07 12:22:57 +0200 Sebastian Dröge +2009-08-07 17:09:59 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Also flush/unflush the input port when changing the state PAUSED<->READY + * COPYING: + * COPYING.LIB: + * INSTALL: + * Makefile.am: + * RELEASE: + * ges/Makefile.am: + * gst-editing-services.doap: + Fix build. Can now run make distcheck. -2011-07-07 12:21:31 +0200 Sebastian Dröge +2009-08-07 16:51:49 +0200 Edward Hervey - * omx/gstomx.c: - omx: Don't broadcast port->port_cond after allocating buffers successfully - Allocating buffers must happen while no thread is waiting for the - cond and especially must happen from the thread that would acquire - buffers from the port. + * ges/ges-track.c: + Track: Add/Remove the GnlComposition from ourself. -2011-07-07 11:27:15 +0200 Sebastian Dröge +2009-08-07 16:47:18 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Don't leak the codec_data after sending it + * tests/check/ges/basic.c: + tests/ges/basic: Extend test to remove the object. -2011-07-07 10:27:31 +0200 Sebastian Dröge +2009-08-07 16:46:57 +0200 Edward Hervey - * omx/gstomx.c: - omx: Always check if the component is in an error state before waiting for a condition variable to be signalled - Otherwise we might wait forever because nothing is going to signal - the condition variable anymore. + * ges/ges-track-source.h: + TrackSource: Include TrackObject header file -2011-07-07 10:22:12 +0200 Sebastian Dröge +2009-08-07 16:46:35 +0200 Edward Hervey - * omx/gstomx.c: - omx: Always hold port->port_lock before signalling port->port_cond when notifying about errors - Otherwise a port might be in the critical section, has checked the error state - already but waits after port->port_cond is signalled, which will lead - to a deadlock. + * ges/ges.c: + ges.c: Add debug line to inform of initialization -2011-07-07 10:07:43 +0200 Sebastian Dröge +2009-08-07 16:45:16 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Remove reconfiguration test hack + * ges/Makefile.am: + * ges/ges-custom-timeline-source.c: + * ges/ges-custom-timeline-source.h: + * ges/ges-types.h: + * ges/ges.h: + New CustomTimelineSource class. -2011-07-06 13:27:12 +0200 Sebastian Dröge +2009-08-07 16:43:49 +0200 Edward Hervey - * omx/gstomx.c: - omx: Improve debug output a bit + * ges/ges-track.c: + * ges/ges-track.h: + Track: Implement remove_object() -2011-07-06 13:26:51 +0200 Sebastian Dröge +2009-08-07 16:43:01 +0200 Edward Hervey - * omx/gstomx.c: - omx: Always try to deallocate buffers, even if there's a component error + * ges/ges-track-object.c: + * ges/ges-track-object.h: + TrackObject: Add 'valid' property, Make _set_track() return a bool -2011-07-06 13:26:01 +0200 Sebastian Dröge +2009-08-07 16:41:23 +0200 Edward Hervey - * omx/gstomx.c: - omx: Use G_USEC_PER_SEC for clarity instead of 1000000 + * ges/ges-timeline.c: + Timeline: Implement remove_track, remove_layer, and _layer_object_removed_cb -2011-07-06 13:19:15 +0200 Sebastian Dröge +2009-08-07 16:40:51 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Error out if the GStreamer allocated buffer is smaller than the OpenMAX output buffer - Usually this must never happen but currently it happens during reconfigurations - because of a race condition. Still it's better than crashing. + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + TimelineSource: Implenent _create_track_object() virtual-method -2011-07-06 10:40:13 +0200 Sebastian Dröge +2009-08-07 16:39:45 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - omx: Don't use port_def.bEnabled to check if the Enable/Disable command is finished - bEnabled should be set immediately after sending the command, it's only - Bellagio that waits until the command is finished before setting it. + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + TimelineObject: Implement _release_track_object() -2011-07-06 10:30:11 +0200 Sebastian Dröge +2009-08-07 16:39:09 +0200 Edward Hervey - * omx/gstomxvideodec.c: - omxvideodec: Remove obsolete FIXME comment + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + TimelineLayer: Implement _remove_object() -2011-07-06 10:29:54 +0200 Sebastian Dröge +2009-08-06 20:04:59 +0200 Edward Hervey - * omx/gstomx.c: - * omx/gstomx.h: - omx: Improve error handling and reporting + * tests/check/ges/basic.c: + tests: Add a simple scenario -2011-07-06 08:48:37 +0200 Sebastian Dröge +2009-08-06 19:59:25 +0200 Edward Hervey - * omx/gstomxmpeg4videodec.c: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omxvideodec: Make the inport and outport index configurable by the subclass + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-source.c: + * ges/ges-timeline-transition.c: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + * ges/ges-track.c: + ges: Remove unused private structures. We'll re-add on a per-case basis. -2011-06-28 08:51:23 +0200 Sebastian Dröge +2009-08-06 19:51:29 +0200 Edward Hervey - * omx/Makefile.am: - * omx/gstomx.c: - * omx/gstomx.h: - * omx/gstomxmpeg4videodec.c: - * omx/gstomxmpeg4videodec.h: - * omx/gstomxvideodec.c: - * omx/gstomxvideodec.h: - omx: Add initial version of OpenMAX framework, video decoder base class and MPEG4 video decoder - This currently hardcodes a lot of stuff but works at least. - Also adds a generic framework for handling OpenMAX cores, components - and ports. + * Makefile.am: + * configure.ac: + * ges/Makefile.am: + * ges/ges-internal.h: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-object.c: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-source.c: + * ges/ges-timeline-transition.c: + * ges/ges-timeline.c: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track-source.c: + * ges/ges-track.c: + * ges/ges.c: + * ges/ges.h: + * tests/Makefile.am: + * tests/check/Makefile.am: + * tests/check/ges/basic.c: + Add unit test system. Adjust GST_DEBUG usage. + +2009-08-06 18:54:01 +0200 Edward Hervey + + * ges/Makefile.am: + * ges/ges-track-source.c: + * ges/ges-track-source.h: + * ges/ges-types.h: + * ges/ges.h: + Add new GESTrackSource + +2009-08-06 17:38:43 +0200 Edward Hervey + + * docs/scenarios: + * ges/ges-simple-timeline-layer.c: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + * ges/ges-timeline-transition.c: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track.c: + * ges/ges-track.h: + intermediary commit. Still need to fill in more blanks :( + +2009-08-06 12:47:38 +0200 Edward Hervey + + * ges/Makefile.am: + * ges/gesmarshal.list: + Add signal marshalling code + +2009-08-06 12:14:37 +0200 Edward Hervey -2011-06-28 11:47:25 +0200 Sebastian Dröge + * Makefile.am: + * autogen.sh: + * configure.ac: + * ges/Makefile.am: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline-source.h: + * ges/ges-timeline-transition.h: + * ges/ges-timeline.h: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track.h: + * ges/ges-types.h: + * ges/ges.h: + build fixed again. Moved type declarations in a standalone file. + +2009-08-06 11:24:04 +0200 Edward Hervey + + * ges/Makefile.am: + * ges/ges-simple-timeline-layer.c: + * ges/ges-simple-timeline-layer.h: + * ges/ges-timeline-layer.c: + * ges/ges-timeline-layer.h: + * ges/ges-timeline-object.c: + * ges/ges-timeline-object.h: + * ges/ges-timeline-pipeline.c: + * ges/ges-timeline-pipeline.h: + * ges/ges-timeline-source.c: + * ges/ges-timeline-source.h: + * ges/ges-timeline-transition.c: + * ges/ges-timeline-transition.h: + * ges/ges-timeline.c: + * ges/ges-timeline.h: + * ges/ges-track-object.c: + * ges/ges-track-object.h: + * ges/ges-track.c: + * ges/ges-track.h: + * ges/ges.c: + * ges/ges.h: + src/ => ges/ + +2009-08-06 11:23:01 +0200 Edward Hervey + + * docs/scenarios: + * src/Makefile.am: + * src/ges-simple-timeline-layer.h: + * src/ges-timeline-object.c: + * src/ges-timeline-object.h: + * src/ges-timeline.h: + * src/ges-track-object.c: + * src/ges-track-object.h: + * src/ges-track.h: + * src/ges.c: + * src/ges.h: + MORE HACKING + +2009-08-04 19:27:07 +0200 Edward Hervey - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - * omx/gstbasevideodecoder.h: - basevideodecoder: Don't reorder serialized src events - And allow to drop EOS by the subclass if ::finish returns - DROPPED. - Fixes bug #653544. + * README: + README: Mention license -2011-06-27 09:41:40 +0200 Sebastian Dröge +2009-08-04 19:21:49 +0200 Edward Hervey - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - basevideo: Add the caps to the GstVideoState and clean up caps/codec_data properly + * .gitignore: + .gitignore: ignore cruft -2011-06-27 09:37:03 +0200 Sebastian Dröge +2009-08-04 17:16:31 +0200 Edward Hervey - * omx/gstbasevideocodec.c: - * omx/gstbasevideocodec.h: - * omx/gstbasevideodecoder.c: - * omx/gstbasevideodecoder.h: - * omx/gstbasevideoencoder.c: - * omx/gstbasevideoencoder.h: - * omx/gstbasevideoutils.c: - basevideo: Add video encoder/decoder base classes from gst-plugins-bad - -2011-06-21 11:17:35 +0200 Sebastian Dröge - - * omx/openmax/OMX_Audio.h: - * omx/openmax/OMX_Component.h: - * omx/openmax/OMX_ComponentExt.h: - * omx/openmax/OMX_ContentPipe.h: - * omx/openmax/OMX_Core.h: - * omx/openmax/OMX_CoreExt.h: - * omx/openmax/OMX_IVCommon.h: - * omx/openmax/OMX_Image.h: - * omx/openmax/OMX_Index.h: - * omx/openmax/OMX_IndexExt.h: - * omx/openmax/OMX_Other.h: - * omx/openmax/OMX_Types.h: - * omx/openmax/OMX_Video.h: - * omx/openmax/OMX_VideoExt.h: - openmax: Add OpenMAX IL 1.1.2 headers + * .gitmodules: + * AUTHORS: + * ChangeLog: + * Makefile.am: + * NEWS: + * autogen.sh: + * common: + * configure.ac: + * gst-editing-services.spec.in: + * m4/Makefile.am: + * m4/codeset.m4: + * m4/gettext.m4: + * m4/glibc2.m4: + * m4/glibc21.m4: + * m4/iconv.m4: + * m4/intdiv0.m4: + * m4/intl.m4: + * m4/intldir.m4: + * m4/intlmacosx.m4: + * m4/intmax.m4: + * m4/inttypes-pri.m4: + * m4/inttypes_h.m4: + * m4/lcmessage.m4: + * m4/lib-ld.m4: + * m4/lib-link.m4: + * m4/lib-prefix.m4: + * m4/libtool.m4: + * m4/lock.m4: + * m4/longlong.m4: + * m4/ltoptions.m4: + * m4/ltsugar.m4: + * m4/ltversion.m4: + * m4/lt~obsolete.m4: + * m4/nls.m4: + * m4/po.m4: + * m4/printf-posix.m4: + * m4/progtest.m4: + * m4/size_max.m4: + * m4/stdint_h.m4: + * m4/uintmax_t.m4: + * m4/visibility.m4: + * m4/wchar_t.m4: + * m4/wint_t.m4: + * m4/xsize.m4: + * src/Makefile.am: + * src/ges-simple-timeline-layer.c: + * src/ges-simple-timeline-layer.h: + * src/ges-timeline-layer.c: + * src/ges-timeline-layer.h: + * src/ges-timeline-object.c: + * src/ges-timeline-object.h: + * src/ges-timeline-pipeline.c: + * src/ges-timeline-pipeline.h: + * src/ges-timeline-source.c: + * src/ges-timeline-source.h: + * src/ges-timeline-transition.c: + * src/ges-timeline-transition.h: + * src/ges-timeline.c: + * src/ges-timeline.h: + * src/ges-track-object.c: + * src/ges-track-object.h: + * src/ges-track.c: + * src/ges-track.h: + It builds !!!! :)