mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-02 21:48:55 +00:00
transcoder: Automatically generate enums GTypes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1840>
This commit is contained in:
parent
0a1dcc9546
commit
7cf6e4d8f2
4 changed files with 21 additions and 27 deletions
|
@ -1352,27 +1352,6 @@ gst_transcoder_set_avoid_reencoding (GstTranscoder * self,
|
||||||
g_object_set (self->transcodebin, "avoid-reencoding", avoid_reencoding, NULL);
|
g_object_set (self->transcodebin, "avoid-reencoding", avoid_reencoding, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define C_ENUM(v) ((gint) v)
|
|
||||||
#define C_FLAGS(v) ((guint) v)
|
|
||||||
|
|
||||||
GType
|
|
||||||
gst_transcoder_error_get_type (void)
|
|
||||||
{
|
|
||||||
static gsize id = 0;
|
|
||||||
static const GEnumValue values[] = {
|
|
||||||
{C_ENUM (GST_TRANSCODER_ERROR_FAILED), "GST_TRANSCODER_ERROR_FAILED",
|
|
||||||
"failed"},
|
|
||||||
{0, NULL, NULL}
|
|
||||||
};
|
|
||||||
|
|
||||||
if (g_once_init_enter (&id)) {
|
|
||||||
GType tmp = g_enum_register_static ("GstTranscoderError", values);
|
|
||||||
g_once_init_leave (&id, tmp);
|
|
||||||
}
|
|
||||||
|
|
||||||
return (GType) id;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* gst_transcoder_error_get_name:
|
* gst_transcoder_error_get_name:
|
||||||
* @error: a #GstTranscoderError
|
* @error: a #GstTranscoderError
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
#include <gst/gst.h>
|
#include <gst/gst.h>
|
||||||
#include <gst/pbutils/pbutils.h>
|
#include <gst/pbutils/pbutils.h>
|
||||||
#include "transcoder-prelude.h"
|
#include "transcoder-prelude.h"
|
||||||
|
#include "transcoder-enumtypes.h"
|
||||||
|
|
||||||
G_BEGIN_DECLS
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
@ -16,7 +17,6 @@ typedef struct _GstTranscoderSignalDispatcherInterface GstTranscoderSignalDispat
|
||||||
|
|
||||||
/*********** Error definitions ************/
|
/*********** Error definitions ************/
|
||||||
#define GST_TRANSCODER_ERROR (gst_transcoder_error_quark ())
|
#define GST_TRANSCODER_ERROR (gst_transcoder_error_quark ())
|
||||||
#define GST_TYPE_TRANSCODER_ERROR (gst_transcoder_error_get_type ())
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* GstTranscoderError:
|
* GstTranscoderError:
|
||||||
|
@ -29,8 +29,6 @@ typedef enum {
|
||||||
GST_TRANSCODER_API
|
GST_TRANSCODER_API
|
||||||
GQuark gst_transcoder_error_quark (void);
|
GQuark gst_transcoder_error_quark (void);
|
||||||
GST_TRANSCODER_API
|
GST_TRANSCODER_API
|
||||||
GType gst_transcoder_error_get_type (void);
|
|
||||||
GST_TRANSCODER_API
|
|
||||||
const gchar * gst_transcoder_error_get_name (GstTranscoderError error);
|
const gchar * gst_transcoder_error_get_name (GstTranscoderError error);
|
||||||
|
|
||||||
/*********** GstTranscoder definition ************/
|
/*********** GstTranscoder definition ************/
|
||||||
|
|
|
@ -3,8 +3,21 @@ headers = files(['gsttranscoder.h', 'transcoder-prelude.h'])
|
||||||
|
|
||||||
install_headers(headers, subdir : 'gstreamer-' + api_version + '/gst/transcoder')
|
install_headers(headers, subdir : 'gstreamer-' + api_version + '/gst/transcoder')
|
||||||
|
|
||||||
|
transcoder_enums = gnome.mkenums_simple('transcoder-enumtypes',
|
||||||
|
sources : headers,
|
||||||
|
body_prefix : '#ifdef HAVE_CONFIG_H\n#include "config.h"\n#endif',
|
||||||
|
header_prefix : '#include <gst/transcoder/transcoder-prelude.h>',
|
||||||
|
decorator: 'GST_TRANSCODER_API',
|
||||||
|
install_header: true,
|
||||||
|
install_dir : join_paths(get_option('includedir'), 'gstreamer-1.0/gst/transcoder'))
|
||||||
|
|
||||||
|
gsttranscoder_c = transcoder_enums[0]
|
||||||
|
gsttranscoder_h = transcoder_enums[1]
|
||||||
|
|
||||||
|
transcoder_gen_sources = [gsttranscoder_h]
|
||||||
|
|
||||||
gst_transcoder = library('gsttranscoder-' + api_version,
|
gst_transcoder = library('gsttranscoder-' + api_version,
|
||||||
sources,
|
sources + [gsttranscoder_c] + transcoder_gen_sources,
|
||||||
install: true,
|
install: true,
|
||||||
include_directories : [configinc, libsinc],
|
include_directories : [configinc, libsinc],
|
||||||
dependencies: [gst_dep, gstpbutils_dep],
|
dependencies: [gst_dep, gstpbutils_dep],
|
||||||
|
@ -22,7 +35,7 @@ pkgconfig.generate(gst_transcoder,
|
||||||
|
|
||||||
if build_gir
|
if build_gir
|
||||||
transcoder_gir = gnome.generate_gir(gst_transcoder,
|
transcoder_gir = gnome.generate_gir(gst_transcoder,
|
||||||
sources : sources + headers,
|
sources : sources + headers + [gsttranscoder_h],
|
||||||
nsversion : api_version,
|
nsversion : api_version,
|
||||||
namespace : 'GstTranscoder',
|
namespace : 'GstTranscoder',
|
||||||
identifier_prefix : 'Gst',
|
identifier_prefix : 'Gst',
|
||||||
|
@ -34,11 +47,13 @@ if build_gir
|
||||||
install : true,
|
install : true,
|
||||||
extra_args : gir_init_section
|
extra_args : gir_init_section
|
||||||
)
|
)
|
||||||
|
transcoder_gen_sources += transcoder_gir
|
||||||
endif
|
endif
|
||||||
|
|
||||||
gst_transcoder_dep = declare_dependency(link_with: gst_transcoder,
|
gst_transcoder_dep = declare_dependency(link_with: gst_transcoder,
|
||||||
dependencies : [gst_dep, gstpbutils_dep],
|
dependencies : [gst_dep, gstpbutils_dep],
|
||||||
include_directories : [libsinc]
|
include_directories : [libsinc],
|
||||||
|
sources: transcoder_gen_sources,
|
||||||
)
|
)
|
||||||
|
|
||||||
meson.override_dependency('gstreamer-transcoder-1.0', gst_transcoder_dep)
|
meson.override_dependency('gstreamer-transcoder-1.0', gst_transcoder_dep)
|
||||||
|
|
|
@ -33,4 +33,6 @@
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include <gst/transcoder/transcoder-enumtypes.h>
|
||||||
|
|
||||||
#endif /* __GST_TRANSCODER_PRELUDE_H__ */
|
#endif /* __GST_TRANSCODER_PRELUDE_H__ */
|
||||||
|
|
Loading…
Reference in a new issue