mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 08:46:40 +00:00
Rename GESTrackParseLaunchEffect to GESEffect
This commit is contained in:
parent
5da8fa89e2
commit
e24cccabfd
18 changed files with 178 additions and 191 deletions
|
@ -72,7 +72,7 @@ platform as well as Windows. It is released under the GNU Library General Public
|
|||
<xi:include href="xml/ges-track-video-transition.xml"/>
|
||||
<xi:include href="xml/ges-track-audio-transition.xml"/>
|
||||
<xi:include href="xml/ges-track-image-source.xml"/>
|
||||
<xi:include href="xml/ges-track-parse-launch-effect.xml"/>
|
||||
<xi:include href="xml/ges-effect.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
|
|
|
@ -868,20 +868,20 @@ ges_base_effect_get_type
|
|||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<FILE>ges-track-parse-launch-effect</FILE>
|
||||
<TITLE>GESTrackParseLaunchEffect</TITLE>
|
||||
GESTrackParseLaunchEffect
|
||||
ges_track_parse_launch_effect_new
|
||||
<FILE>ges-effect</FILE>
|
||||
<TITLE>GESEffect</TITLE>
|
||||
GESEffect
|
||||
ges_effect_new
|
||||
<SUBSECTION Standard>
|
||||
GESTrackParseLaunchEffectClass
|
||||
GESTrackParseLaunchEffectPrivate
|
||||
GES_IS_TRACK_PARSE_LAUNCH_EFFECT
|
||||
GES_IS_TRACK_PARSE_LAUNCH_EFFECT_CLASS
|
||||
GES_TRACK_PARSE_LAUNCH_EFFECT
|
||||
GES_TRACK_PARSE_LAUNCH_EFFECT_CLASS
|
||||
GES_TRACK_PARSE_LAUNCH_EFFECT_GET_CLASS
|
||||
GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT
|
||||
ges_track_parse_launch_effect_get_type
|
||||
GESEffectClass
|
||||
GESEffectPrivate
|
||||
GES_IS_EFFECT
|
||||
GES_IS_EFFECT_CLASS
|
||||
GES_EFFECT
|
||||
GES_EFFECT_CLASS
|
||||
GES_EFFECT_GET_CLASS
|
||||
GES_TYPE_EFFECT
|
||||
ges_effect_get_type
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
|
|
|
@ -28,7 +28,7 @@ ges_track_get_type
|
|||
ges_track_image_source_get_type
|
||||
ges_track_element_get_type
|
||||
ges_base_effect_get_type
|
||||
ges_track_parse_launch_effect_get_type
|
||||
ges_effect_get_type
|
||||
ges_track_operation_get_type
|
||||
ges_track_source_get_type
|
||||
ges_track_text_overlay_get_type
|
||||
|
|
|
@ -43,7 +43,7 @@ libges_@GST_API_VERSION@_la_SOURCES = \
|
|||
ges-track-title-source.c \
|
||||
ges-track-text-overlay.c \
|
||||
ges-base-effect.c \
|
||||
ges-track-parse-launch-effect.c \
|
||||
ges-effect.c \
|
||||
ges-screenshot.c \
|
||||
ges-formatter.c \
|
||||
ges-pitivi-formatter.c \
|
||||
|
@ -84,7 +84,7 @@ libges_@GST_API_VERSION@include_HEADERS = \
|
|||
ges-overlay-clip.h \
|
||||
ges-text-overlay-clip.h \
|
||||
ges-base-effect.h \
|
||||
ges-track-parse-launch-effect.h \
|
||||
ges-effect.h \
|
||||
ges-track.h \
|
||||
ges-track-element.h \
|
||||
ges-track-source.h \
|
||||
|
|
|
@ -31,13 +31,13 @@
|
|||
*
|
||||
* |[
|
||||
* GESAsset *effect_asset;
|
||||
* GESTrackParseLaunchEffect *effect;
|
||||
* GESEffect *effect;
|
||||
*
|
||||
* // You create an asset for an effect
|
||||
* effect_asset = ges_asset_request (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT, "agingtv", NULL);
|
||||
* effect_asset = ges_asset_request (GES_TYPE_EFFECT, "agingtv", NULL);
|
||||
*
|
||||
* // And now you can extract an instance of GESTrackParseLaunchEffect from that asset
|
||||
* effect = GES_TRACK_PARSE_LAUNCH_EFFECT (ges_asset_extract (effect_asset));
|
||||
* // And now you can extract an instance of GESEffect from that asset
|
||||
* effect = GES_EFFECT (ges_asset_extract (effect_asset));
|
||||
*
|
||||
* ]|
|
||||
*
|
||||
|
@ -53,7 +53,7 @@
|
|||
* the documentation of each type to know what the ID of #GESAsset actually represents for that type. By default,
|
||||
* we only have one #GESAsset per type, and the @id is the name of the type, but this behaviour is overriden
|
||||
* to be more usefull. For example, for GESTransitionClips, the ID is the vtype of the transition
|
||||
* you will extract from it (ie crossfade, box-wipe-rc etc..) For #GESTrackParseLaunchEffect the id is the
|
||||
* you will extract from it (ie crossfade, box-wipe-rc etc..) For #GESEffect the id is the
|
||||
* @bin-description property of the extracted objects (ie the gst-launch style description of the bin that
|
||||
* will be used).
|
||||
*
|
||||
|
@ -789,7 +789,7 @@ done:
|
|||
* new asset. The class must implement the #GESExtractable interface.
|
||||
* @id: The Identifier of the asset we want to create. This identifier depends of the extractable,
|
||||
* type you want. By default it is the name of the class itself (or %NULL), but for example for a
|
||||
* GESTrackParseLaunchEffect, it will be the pipeline description, for a GESUriClip it
|
||||
* GESEffect, it will be the pipeline description, for a GESUriClip it
|
||||
* will be the name of the file, etc... You should refer to the documentation of the #GESExtractable
|
||||
* type you want to create a #GESAsset for.
|
||||
* @cancellable: (allow-none): optional %GCancellable object, %NULL to ignore.
|
||||
|
|
|
@ -170,7 +170,7 @@ ges_tl_parse_launch_effect_create_track_obj (GESClip * self, GESTrackType type)
|
|||
|
||||
if (bin_description) {
|
||||
/* FIXME Work with a GESAsset here! */
|
||||
return g_object_new (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT, "bin-description",
|
||||
return g_object_new (GES_TYPE_EFFECT, "bin-description",
|
||||
bin_description, "track-type", type, NULL);
|
||||
}
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* SECTION:ges-track-parse-launch-effect
|
||||
* SECTION:ges-effect
|
||||
* @short_description: adds an effect build from a parse-launch style
|
||||
* bin description to a stream in a #GESSourceClip or a #GESTimelineLayer
|
||||
*/
|
||||
|
@ -27,21 +27,20 @@
|
|||
#include "ges-extractable.h"
|
||||
#include "ges-track-element.h"
|
||||
#include "ges-base-effect.h"
|
||||
#include "ges-track-parse-launch-effect.h"
|
||||
#include "ges-effect.h"
|
||||
|
||||
static void ges_extractable_interface_init (GESExtractableInterface * iface);
|
||||
|
||||
G_DEFINE_TYPE_WITH_CODE (GESTrackParseLaunchEffect,
|
||||
ges_track_parse_launch_effect, GES_TYPE_BASE_EFFECT,
|
||||
G_DEFINE_TYPE_WITH_CODE (GESEffect,
|
||||
ges_effect, GES_TYPE_BASE_EFFECT,
|
||||
G_IMPLEMENT_INTERFACE (GES_TYPE_EXTRACTABLE,
|
||||
ges_extractable_interface_init));
|
||||
|
||||
static void ges_track_parse_launch_effect_dispose (GObject * object);
|
||||
static void ges_track_parse_launch_effect_finalize (GObject * object);
|
||||
static GstElement *ges_track_parse_launch_effect_create_element (GESTrackElement
|
||||
* self);
|
||||
static void ges_effect_dispose (GObject * object);
|
||||
static void ges_effect_finalize (GObject * object);
|
||||
static GstElement *ges_effect_create_element (GESTrackElement * self);
|
||||
|
||||
struct _GESTrackParseLaunchEffectPrivate
|
||||
struct _GESEffectPrivate
|
||||
{
|
||||
gchar *bin_description;
|
||||
};
|
||||
|
@ -81,7 +80,7 @@ extractable_get_parameters_from_id (const gchar * id, guint * n_params)
|
|||
static gchar *
|
||||
extractable_get_id (GESExtractable * self)
|
||||
{
|
||||
return g_strdup (GES_TRACK_PARSE_LAUNCH_EFFECT (self)->priv->bin_description);
|
||||
return g_strdup (GES_EFFECT (self)->priv->bin_description);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -93,11 +92,10 @@ ges_extractable_interface_init (GESExtractableInterface * iface)
|
|||
}
|
||||
|
||||
static void
|
||||
ges_track_parse_launch_effect_get_property (GObject * object,
|
||||
ges_effect_get_property (GObject * object,
|
||||
guint property_id, GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
GESTrackParseLaunchEffectPrivate *priv =
|
||||
GES_TRACK_PARSE_LAUNCH_EFFECT (object)->priv;
|
||||
GESEffectPrivate *priv = GES_EFFECT (object)->priv;
|
||||
|
||||
switch (property_id) {
|
||||
case PROP_BIN_DESCRIPTION:
|
||||
|
@ -109,10 +107,10 @@ ges_track_parse_launch_effect_get_property (GObject * object,
|
|||
}
|
||||
|
||||
static void
|
||||
ges_track_parse_launch_effect_set_property (GObject * object,
|
||||
ges_effect_set_property (GObject * object,
|
||||
guint property_id, const GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
GESTrackParseLaunchEffect *self = GES_TRACK_PARSE_LAUNCH_EFFECT (object);
|
||||
GESEffect *self = GES_EFFECT (object);
|
||||
|
||||
switch (property_id) {
|
||||
case PROP_BIN_DESCRIPTION:
|
||||
|
@ -124,8 +122,7 @@ ges_track_parse_launch_effect_set_property (GObject * object,
|
|||
}
|
||||
|
||||
static void
|
||||
ges_track_parse_launch_effect_class_init (GESTrackParseLaunchEffectClass *
|
||||
klass)
|
||||
ges_effect_class_init (GESEffectClass * klass)
|
||||
{
|
||||
GObjectClass *object_class;
|
||||
GESTrackElementClass *obj_bg_class;
|
||||
|
@ -133,17 +130,17 @@ ges_track_parse_launch_effect_class_init (GESTrackParseLaunchEffectClass *
|
|||
object_class = G_OBJECT_CLASS (klass);
|
||||
obj_bg_class = GES_TRACK_ELEMENT_CLASS (klass);
|
||||
|
||||
g_type_class_add_private (klass, sizeof (GESTrackParseLaunchEffectPrivate));
|
||||
g_type_class_add_private (klass, sizeof (GESEffectPrivate));
|
||||
|
||||
object_class->get_property = ges_track_parse_launch_effect_get_property;
|
||||
object_class->set_property = ges_track_parse_launch_effect_set_property;
|
||||
object_class->dispose = ges_track_parse_launch_effect_dispose;
|
||||
object_class->finalize = ges_track_parse_launch_effect_finalize;
|
||||
object_class->get_property = ges_effect_get_property;
|
||||
object_class->set_property = ges_effect_set_property;
|
||||
object_class->dispose = ges_effect_dispose;
|
||||
object_class->finalize = ges_effect_finalize;
|
||||
|
||||
obj_bg_class->create_element = ges_track_parse_launch_effect_create_element;
|
||||
obj_bg_class->create_element = ges_effect_create_element;
|
||||
|
||||
/**
|
||||
* GESTrackParseLaunchEffect:bin-description:
|
||||
* GESEffect:bin-description:
|
||||
*
|
||||
* The description of the effect bin with a gst-launch-style
|
||||
* pipeline description.
|
||||
|
@ -158,39 +155,37 @@ ges_track_parse_launch_effect_class_init (GESTrackParseLaunchEffectClass *
|
|||
}
|
||||
|
||||
static void
|
||||
ges_track_parse_launch_effect_init (GESTrackParseLaunchEffect * self)
|
||||
ges_effect_init (GESEffect * self)
|
||||
{
|
||||
self->priv =
|
||||
G_TYPE_INSTANCE_GET_PRIVATE (self, GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT,
|
||||
GESTrackParseLaunchEffectPrivate);
|
||||
G_TYPE_INSTANCE_GET_PRIVATE (self, GES_TYPE_EFFECT, GESEffectPrivate);
|
||||
}
|
||||
|
||||
static void
|
||||
ges_track_parse_launch_effect_dispose (GObject * object)
|
||||
ges_effect_dispose (GObject * object)
|
||||
{
|
||||
G_OBJECT_CLASS (ges_track_parse_launch_effect_parent_class)->dispose (object);
|
||||
G_OBJECT_CLASS (ges_effect_parent_class)->dispose (object);
|
||||
}
|
||||
|
||||
static void
|
||||
ges_track_parse_launch_effect_finalize (GObject * object)
|
||||
ges_effect_finalize (GObject * object)
|
||||
{
|
||||
GESTrackParseLaunchEffect *self = GES_TRACK_PARSE_LAUNCH_EFFECT (object);
|
||||
GESEffect *self = GES_EFFECT (object);
|
||||
|
||||
if (self->priv->bin_description)
|
||||
g_free (self->priv->bin_description);
|
||||
|
||||
G_OBJECT_CLASS (ges_track_parse_launch_effect_parent_class)->finalize
|
||||
(object);
|
||||
G_OBJECT_CLASS (ges_effect_parent_class)->finalize (object);
|
||||
}
|
||||
|
||||
static GstElement *
|
||||
ges_track_parse_launch_effect_create_element (GESTrackElement * object)
|
||||
ges_effect_create_element (GESTrackElement * object)
|
||||
{
|
||||
GstElement *effect;
|
||||
gchar *bin_desc;
|
||||
|
||||
GError *error = NULL;
|
||||
GESTrackParseLaunchEffect *self = GES_TRACK_PARSE_LAUNCH_EFFECT (object);
|
||||
GESEffect *self = GES_EFFECT (object);
|
||||
GESTrack *track = ges_track_element_get_track (object);
|
||||
|
||||
if (!track) {
|
||||
|
@ -230,19 +225,19 @@ ges_track_parse_launch_effect_create_element (GESTrackElement * object)
|
|||
}
|
||||
|
||||
/**
|
||||
* ges_track_parse_launch_effect_new:
|
||||
* ges_effect_new:
|
||||
* @bin_description: The gst-launch like bin description of the effect
|
||||
*
|
||||
* Creates a new #GESTrackParseLaunchEffect from the description of the bin.
|
||||
* Creates a new #GESEffect from the description of the bin.
|
||||
*
|
||||
* Returns: a newly created #GESTrackParseLaunchEffect, or %NULL if something went
|
||||
* Returns: a newly created #GESEffect, or %NULL if something went
|
||||
* wrong.
|
||||
*
|
||||
* Since: 0.10.2
|
||||
*/
|
||||
GESTrackParseLaunchEffect *
|
||||
ges_track_parse_launch_effect_new (const gchar * bin_description)
|
||||
GESEffect *
|
||||
ges_effect_new (const gchar * bin_description)
|
||||
{
|
||||
return g_object_new (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT, "bin-description",
|
||||
return g_object_new (GES_TYPE_EFFECT, "bin-description",
|
||||
bin_description, NULL);
|
||||
}
|
82
ges/ges-effect.h
Normal file
82
ges/ges-effect.h
Normal file
|
@ -0,0 +1,82 @@
|
|||
/* GStreamer Editing Services
|
||||
* Copyright (C) 2010 Thibault Saunier <thibault.saunier@collabora.co.uk>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Library General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#ifndef _GES_EFFECT
|
||||
#define _GES_EFFECT
|
||||
|
||||
#include <glib-object.h>
|
||||
#include <ges/ges-types.h>
|
||||
#include <ges/ges-base-effect.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
#define GES_TYPE_EFFECT ges_effect_get_type()
|
||||
|
||||
#define GES_EFFECT(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST ((obj), GES_TYPE_EFFECT, GESEffect))
|
||||
|
||||
#define GES_EFFECT_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_CAST ((klass), GES_TYPE_EFFECT, GESEffectClass))
|
||||
|
||||
#define GES_IS_EFFECT(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), GES_TYPE_EFFECT))
|
||||
|
||||
#define GES_IS_EFFECT_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_TYPE ((klass), GES_TYPE_EFFECT))
|
||||
|
||||
#define GES_EFFECT_GET_CLASS(obj) \
|
||||
(G_TYPE_INSTANCE_GET_CLASS ((obj), GES_TYPE_EFFECT, GESEffectClass))
|
||||
|
||||
|
||||
typedef struct _GESEffectPrivate GESEffectPrivate;
|
||||
|
||||
/**
|
||||
* GESEffect:
|
||||
*
|
||||
*/
|
||||
struct _GESEffect
|
||||
{
|
||||
/*< private > */
|
||||
GESBaseEffect parent;
|
||||
GESEffectPrivate *priv;
|
||||
|
||||
/* Padding for API extension */
|
||||
gpointer _ges_reserved[GES_PADDING];
|
||||
};
|
||||
|
||||
/**
|
||||
* GESEffectClass:
|
||||
* @parent_class: parent class
|
||||
*/
|
||||
|
||||
struct _GESEffectClass
|
||||
{
|
||||
/*< private > */
|
||||
GESBaseEffectClass parent_class;
|
||||
/* Padding for API extension */
|
||||
gpointer _ges_reserved[GES_PADDING];
|
||||
|
||||
};
|
||||
|
||||
GType ges_effect_get_type (void);
|
||||
|
||||
GESEffect*
|
||||
ges_effect_new (const gchar * bin_description);
|
||||
|
||||
G_END_DECLS
|
||||
#endif /* _GES_EFFECT */
|
|
@ -796,7 +796,7 @@ track_element_added_cb (GESClip * object,
|
|||
continue;
|
||||
}
|
||||
|
||||
if (GES_IS_TRACK_PARSE_LAUNCH_EFFECT (tmp->data)) {
|
||||
if (GES_IS_EFFECT (tmp->data)) {
|
||||
has_effect = TRUE;
|
||||
continue;
|
||||
}
|
||||
|
@ -829,7 +829,7 @@ track_element_added_cb (GESClip * object,
|
|||
/* We set the effects start and duration */
|
||||
track = ges_track_element_get_track (tmp->data);
|
||||
|
||||
if (GES_IS_TRACK_PARSE_LAUNCH_EFFECT (tmp->data)
|
||||
if (GES_IS_EFFECT (tmp->data)
|
||||
&& (type == track->type)) {
|
||||
/* We lock the track objects so we do not move the whole Clip */
|
||||
ges_track_element_set_locked (tmp->data, FALSE);
|
||||
|
@ -929,10 +929,10 @@ make_source (GESFormatter * self, GList * reflist, GHashTable * source_table)
|
|||
}
|
||||
|
||||
} else {
|
||||
GESTrackParseLaunchEffect *effect;
|
||||
GESEffect *effect;
|
||||
gchar *active = (gchar *) g_hash_table_lookup (props_table, "active");
|
||||
|
||||
effect = ges_track_parse_launch_effect_new ((gchar *)
|
||||
effect = ges_effect_new ((gchar *)
|
||||
g_hash_table_lookup (props_table, (gchar *) "effect_name"));
|
||||
ges_track_element_set_track_type (GES_TRACK_ELEMENT (effect),
|
||||
(video ? GES_TRACK_TYPE_VIDEO : GES_TRACK_TYPE_AUDIO));
|
||||
|
|
|
@ -1,82 +0,0 @@
|
|||
/* GStreamer Editing Services
|
||||
* Copyright (C) 2010 Thibault Saunier <thibault.saunier@collabora.co.uk>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Library General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#ifndef _GES_TRACK_PARSE_LAUNCH_EFFECT
|
||||
#define _GES_TRACK_PARSE_LAUNCH_EFFECT
|
||||
|
||||
#include <glib-object.h>
|
||||
#include <ges/ges-types.h>
|
||||
#include <ges/ges-base-effect.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
#define GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT ges_track_parse_launch_effect_get_type()
|
||||
|
||||
#define GES_TRACK_PARSE_LAUNCH_EFFECT(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST ((obj), GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT, GESTrackParseLaunchEffect))
|
||||
|
||||
#define GES_TRACK_PARSE_LAUNCH_EFFECT_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_CAST ((klass), GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT, GESTrackParseLaunchEffectClass))
|
||||
|
||||
#define GES_IS_TRACK_PARSE_LAUNCH_EFFECT(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT))
|
||||
|
||||
#define GES_IS_TRACK_PARSE_LAUNCH_EFFECT_CLASS(klass) \
|
||||
(G_TYPE_CHECK_CLASS_TYPE ((klass), GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT))
|
||||
|
||||
#define GES_TRACK_PARSE_LAUNCH_EFFECT_GET_CLASS(obj) \
|
||||
(G_TYPE_INSTANCE_GET_CLASS ((obj), GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT, GESTrackParseLaunchEffectClass))
|
||||
|
||||
|
||||
typedef struct _GESTrackParseLaunchEffectPrivate GESTrackParseLaunchEffectPrivate;
|
||||
|
||||
/**
|
||||
* GESTrackParseLaunchEffect:
|
||||
*
|
||||
*/
|
||||
struct _GESTrackParseLaunchEffect
|
||||
{
|
||||
/*< private > */
|
||||
GESBaseEffect parent;
|
||||
GESTrackParseLaunchEffectPrivate *priv;
|
||||
|
||||
/* Padding for API extension */
|
||||
gpointer _ges_reserved[GES_PADDING];
|
||||
};
|
||||
|
||||
/**
|
||||
* GESTrackParseLaunchEffectClass:
|
||||
* @parent_class: parent class
|
||||
*/
|
||||
|
||||
struct _GESTrackParseLaunchEffectClass
|
||||
{
|
||||
/*< private > */
|
||||
GESBaseEffectClass parent_class;
|
||||
/* Padding for API extension */
|
||||
gpointer _ges_reserved[GES_PADDING];
|
||||
|
||||
};
|
||||
|
||||
GType ges_track_parse_launch_effect_get_type (void);
|
||||
|
||||
GESTrackParseLaunchEffect*
|
||||
ges_track_parse_launch_effect_new (const gchar * bin_description);
|
||||
|
||||
G_END_DECLS
|
||||
#endif /* _GES_TRACK_PARSE_LAUNCH_EFFECT */
|
|
@ -98,8 +98,8 @@ typedef struct _GESTrackOperationClass GESTrackOperationClass;
|
|||
typedef struct _GESBaseEffect GESBaseEffect;
|
||||
typedef struct _GESBaseEffectClass GESBaseEffectClass;
|
||||
|
||||
typedef struct _GESTrackParseLaunchEffect GESTrackParseLaunchEffect;
|
||||
typedef struct _GESTrackParseLaunchEffectClass GESTrackParseLaunchEffectClass;
|
||||
typedef struct _GESEffect GESEffect;
|
||||
typedef struct _GESEffectClass GESEffectClass;
|
||||
|
||||
typedef struct _GESTrackFileSource GESTrackFileSource;
|
||||
typedef struct _GESTrackFileSourceClass GESTrackFileSourceClass;
|
||||
|
|
|
@ -82,7 +82,7 @@ ges_init (void)
|
|||
GES_TYPE_XML_FORMATTER;
|
||||
|
||||
/* Register track objects */
|
||||
GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT;
|
||||
GES_TYPE_EFFECT;
|
||||
|
||||
/* Register interfaces */
|
||||
GES_TYPE_META_CONTAINER;
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
#include <ges/ges-track-video-transition.h>
|
||||
#include <ges/ges-track-audio-transition.h>
|
||||
#include <ges/ges-base-effect.h>
|
||||
#include <ges/ges-track-parse-launch-effect.h>
|
||||
#include <ges/ges-effect.h>
|
||||
#include <ges/ges-formatter.h>
|
||||
#include <ges/ges-pitivi-formatter.h>
|
||||
#include <ges/ges-utils.h>
|
||||
|
|
|
@ -119,34 +119,28 @@ GST_START_TEST (test_proxy_asset)
|
|||
|
||||
fail_unless (ges_init ());
|
||||
|
||||
identity = ges_asset_request (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT, "identity",
|
||||
NULL);
|
||||
identity = ges_asset_request (GES_TYPE_EFFECT, "identity", NULL);
|
||||
fail_unless (identity != NULL);
|
||||
|
||||
nothing = ges_asset_request (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT, "nothing",
|
||||
NULL);
|
||||
nothing = ges_asset_request (GES_TYPE_EFFECT, "nothing", NULL);
|
||||
fail_if (nothing);
|
||||
|
||||
nothing = ges_asset_cache_lookup (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT,
|
||||
"nothing");
|
||||
nothing = ges_asset_cache_lookup (GES_TYPE_EFFECT, "nothing");
|
||||
fail_unless (nothing != NULL);
|
||||
|
||||
fail_unless (ges_asset_set_proxy (nothing, "identity"));
|
||||
|
||||
nothing_at_all = ges_asset_request (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT,
|
||||
"nothing_at_all", NULL);
|
||||
nothing_at_all = ges_asset_request (GES_TYPE_EFFECT, "nothing_at_all", NULL);
|
||||
fail_if (nothing_at_all);
|
||||
|
||||
nothing_at_all = ges_asset_cache_lookup (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT,
|
||||
"nothing_at_all");
|
||||
nothing_at_all = ges_asset_cache_lookup (GES_TYPE_EFFECT, "nothing_at_all");
|
||||
fail_unless (nothing_at_all != NULL);
|
||||
|
||||
/* Now we proxy nothing_at_all to nothing which is itself proxied to identity */
|
||||
fail_unless (ges_asset_set_proxy (nothing_at_all, "nothing"));
|
||||
|
||||
/* If we request nothing_at_all we should get the good proxied identity */
|
||||
nothing_at_all = ges_asset_request (GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT,
|
||||
"nothing_at_all", NULL);
|
||||
nothing_at_all = ges_asset_request (GES_TYPE_EFFECT, "nothing_at_all", NULL);
|
||||
fail_unless (nothing_at_all == identity);
|
||||
|
||||
gst_object_unref (identity);
|
||||
|
|
|
@ -28,11 +28,11 @@ deep_prop_changed_cb (GESTrackElement * obj, GstElement * element,
|
|||
|
||||
GST_START_TEST (test_effect_basic)
|
||||
{
|
||||
GESTrackParseLaunchEffect *effect;
|
||||
GESEffect *effect;
|
||||
|
||||
ges_init ();
|
||||
|
||||
effect = ges_track_parse_launch_effect_new ("agingtv");
|
||||
effect = ges_effect_new ("agingtv");
|
||||
fail_unless (effect != NULL);
|
||||
g_object_unref (effect);
|
||||
}
|
||||
|
@ -44,7 +44,7 @@ GST_START_TEST (test_add_effect_to_clip)
|
|||
GESTimeline *timeline;
|
||||
GESTimelineLayer *layer;
|
||||
GESTrack *track_audio, *track_video;
|
||||
GESTrackParseLaunchEffect *base_effect;
|
||||
GESEffect *base_effect;
|
||||
GESTestClip *source;
|
||||
|
||||
ges_init ();
|
||||
|
@ -67,7 +67,7 @@ GST_START_TEST (test_add_effect_to_clip)
|
|||
|
||||
|
||||
GST_DEBUG ("Create effect");
|
||||
base_effect = ges_track_parse_launch_effect_new ("agingtv");
|
||||
base_effect = ges_effect_new ("agingtv");
|
||||
|
||||
fail_unless (GES_IS_BASE_EFFECT (base_effect));
|
||||
|
||||
|
@ -91,7 +91,7 @@ GST_START_TEST (test_get_effects_from_tl)
|
|||
GESTimeline *timeline;
|
||||
GESTimelineLayer *layer;
|
||||
GESTrack *track_video;
|
||||
GESTrackParseLaunchEffect *base_effect, *base_effect1, *base_effect2;
|
||||
GESEffect *base_effect, *base_effect1, *base_effect2;
|
||||
GESTestClip *source;
|
||||
GList *effects, *tmp = NULL;
|
||||
gint effect_prio = -1;
|
||||
|
@ -115,9 +115,9 @@ GST_START_TEST (test_get_effects_from_tl)
|
|||
|
||||
|
||||
GST_DEBUG ("Create effect");
|
||||
base_effect = ges_track_parse_launch_effect_new ("agingtv");
|
||||
base_effect1 = ges_track_parse_launch_effect_new ("agingtv");
|
||||
base_effect2 = ges_track_parse_launch_effect_new ("agingtv");
|
||||
base_effect = ges_effect_new ("agingtv");
|
||||
base_effect1 = ges_effect_new ("agingtv");
|
||||
base_effect2 = ges_effect_new ("agingtv");
|
||||
|
||||
fail_unless (GES_IS_BASE_EFFECT (base_effect));
|
||||
fail_unless (GES_IS_BASE_EFFECT (base_effect1));
|
||||
|
@ -167,7 +167,7 @@ GST_START_TEST (test_effect_clip)
|
|||
GESTimelineLayer *layer;
|
||||
GESTrack *track_audio, *track_video;
|
||||
GESEffectClip *effect_clip;
|
||||
GESTrackParseLaunchEffect *tck_effect, *tck_effect1;
|
||||
GESEffect *tck_effect, *tck_effect1;
|
||||
GList *effects, *tmp;
|
||||
gint i, clip_height;
|
||||
gint effect_prio = -1;
|
||||
|
@ -196,7 +196,7 @@ GST_START_TEST (test_effect_clip)
|
|||
ges_simple_timeline_layer_add_object ((GESSimpleTimelineLayer *) (layer),
|
||||
(GESClip *) effect_clip, 0);
|
||||
|
||||
tck_effect = ges_track_parse_launch_effect_new ("identity");
|
||||
tck_effect = ges_effect_new ("identity");
|
||||
fail_unless (ges_clip_add_track_element (GES_CLIP
|
||||
(effect_clip), GES_TRACK_ELEMENT (tck_effect)));
|
||||
fail_unless (ges_track_add_object (track_video,
|
||||
|
@ -205,7 +205,7 @@ GST_START_TEST (test_effect_clip)
|
|||
g_object_get (effect_clip, "height", &clip_height, NULL);
|
||||
assert_equals_int (clip_height, 3);
|
||||
|
||||
tck_effect1 = ges_track_parse_launch_effect_new ("identity");
|
||||
tck_effect1 = ges_effect_new ("identity");
|
||||
fail_unless (ges_clip_add_track_element (GES_CLIP
|
||||
(effect_clip), GES_TRACK_ELEMENT (tck_effect1)));
|
||||
fail_unless (ges_track_add_object (track_audio,
|
||||
|
@ -241,7 +241,7 @@ GST_START_TEST (test_priorities_clip)
|
|||
GESTimelineLayer *layer;
|
||||
GESTrack *track_audio, *track_video;
|
||||
GESEffectClip *effect_clip;
|
||||
GESTrackParseLaunchEffect *tck_effect, *tck_effect1;
|
||||
GESEffect *tck_effect, *tck_effect1;
|
||||
GList *effects, *tmp;
|
||||
gint i, clip_height;
|
||||
gint effect_prio = -1;
|
||||
|
@ -265,7 +265,7 @@ GST_START_TEST (test_priorities_clip)
|
|||
ges_simple_timeline_layer_add_object ((GESSimpleTimelineLayer *) (layer),
|
||||
(GESClip *) effect_clip, 0);
|
||||
|
||||
tck_effect = ges_track_parse_launch_effect_new ("identity");
|
||||
tck_effect = ges_effect_new ("identity");
|
||||
fail_unless (ges_clip_add_track_element (GES_CLIP
|
||||
(effect_clip), GES_TRACK_ELEMENT (tck_effect)));
|
||||
fail_unless (ges_track_add_object (track_video,
|
||||
|
@ -274,7 +274,7 @@ GST_START_TEST (test_priorities_clip)
|
|||
g_object_get (effect_clip, "height", &clip_height, NULL);
|
||||
fail_unless (clip_height == 3);
|
||||
|
||||
tck_effect1 = ges_track_parse_launch_effect_new ("identity");
|
||||
tck_effect1 = ges_effect_new ("identity");
|
||||
fail_unless (ges_clip_add_track_element (GES_CLIP
|
||||
(effect_clip), GES_TRACK_ELEMENT (tck_effect1)));
|
||||
fail_unless (ges_track_add_object (track_audio,
|
||||
|
@ -341,8 +341,7 @@ GST_START_TEST (test_base_effect_set_properties)
|
|||
ges_simple_timeline_layer_add_object ((GESSimpleTimelineLayer *) (layer),
|
||||
(GESClip *) effect_clip, 0);
|
||||
|
||||
tck_effect =
|
||||
GES_TRACK_ELEMENT (ges_track_parse_launch_effect_new ("agingtv"));
|
||||
tck_effect = GES_TRACK_ELEMENT (ges_effect_new ("agingtv"));
|
||||
fail_unless (ges_clip_add_track_element (GES_CLIP (effect_clip), tck_effect));
|
||||
fail_unless (ges_track_add_object (track_video, tck_effect));
|
||||
|
||||
|
@ -406,7 +405,7 @@ GST_START_TEST (test_clip_signals)
|
|||
GESTimelineLayer *layer;
|
||||
GESTrack *track_video;
|
||||
GESEffectClip *effect_clip;
|
||||
GESTrackParseLaunchEffect *tck_effect;
|
||||
GESEffect *tck_effect;
|
||||
GValue val = { 0, };
|
||||
|
||||
ges_init ();
|
||||
|
@ -428,7 +427,7 @@ GST_START_TEST (test_clip_signals)
|
|||
ges_simple_timeline_layer_add_object ((GESSimpleTimelineLayer *) (layer),
|
||||
(GESClip *) effect_clip, 0);
|
||||
|
||||
tck_effect = ges_track_parse_launch_effect_new ("agingtv");
|
||||
tck_effect = ges_effect_new ("agingtv");
|
||||
fail_unless (ges_clip_add_track_element (GES_CLIP
|
||||
(effect_clip), GES_TRACK_ELEMENT (tck_effect)));
|
||||
fail_unless (ges_track_add_object (track_video,
|
||||
|
|
|
@ -143,12 +143,12 @@ GST_START_TEST (test_project_unexistant_effect)
|
|||
(GCallback) error_loading_asset_cb, mainloop);
|
||||
|
||||
fail_unless (ges_project_create_asset (project, "nowaythiselementexists",
|
||||
GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT));
|
||||
GES_TYPE_EFFECT));
|
||||
g_main_loop_run (mainloop);
|
||||
|
||||
/* And.... try again! */
|
||||
fail_if (ges_project_create_asset (project, "nowaythiselementexists",
|
||||
GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT));
|
||||
GES_TYPE_EFFECT));
|
||||
|
||||
fail_if (added_cb_called);
|
||||
fail_if (removed_cb_called);
|
||||
|
@ -169,8 +169,7 @@ asset_added_cb (GESProject * project, GESAsset * asset)
|
|||
gchar *uri = ges_test_file_uri ("audio_video.ogg");
|
||||
GstDiscovererInfo *info;
|
||||
|
||||
if (ges_asset_get_extractable_type (asset) ==
|
||||
GES_TYPE_TRACK_PARSE_LAUNCH_EFFECT) {
|
||||
if (ges_asset_get_extractable_type (asset) == GES_TYPE_EFFECT) {
|
||||
assert_equals_string (ges_asset_get_id (asset), "agingtv");
|
||||
} else {
|
||||
info = ges_uri_clip_asset_get_info (GES_URI_CLIP_ASSET (asset));
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<track track-type="4" caps="video/x-raw" track-id="1"/>
|
||||
<layer priority="0" properties='properties, auto-transition=(boolean)true;' metadatas='metadatas, a=(guint)3'>
|
||||
<clip id="0" layer-priority='0' asset-id="file:///test/not/exisiting" type-name="GESUriClip" track-types="6" start="0" duration="1000000000">
|
||||
<effect asset-id='agingtv' clip-id='0' type-name='GESTrackParseLaunchEffect' track-type='4' track-id='1' metadatas='metadatas;' children-properties='properties, scratch-lines=(uint)12;'/>
|
||||
<effect asset-id='agingtv' clip-id='0' type-name='GESEffect' track-type='4' track-id='1' metadatas='metadatas;' children-properties='properties, scratch-lines=(uint)12;'/>
|
||||
</clip>
|
||||
</layer>
|
||||
<layer priority="1" properties='properties, auto-transition=(boolean)true;'>
|
||||
|
|
|
@ -1078,7 +1078,7 @@ app_add_effect_on_selected_clips (App * app, const gchar * bin_desc,
|
|||
objects = ges_timeline_layer_get_objects (app->layer);
|
||||
|
||||
for (tmp = objects; tmp; tmp = tmp->next) {
|
||||
effect = GES_TRACK_ELEMENT (ges_track_parse_launch_effect_new (bin_desc));
|
||||
effect = GES_TRACK_ELEMENT (ges_effect_new (bin_desc));
|
||||
ges_clip_add_track_element (GES_CLIP (tmp->data), effect);
|
||||
|
||||
if (type == GES_TRACK_TYPE_VIDEO)
|
||||
|
|
Loading…
Reference in a new issue