]> git.sesse.net Git - mlt/commitdiff
Add service metadata for gtk2 module (WIP).
authorDan Dennedy <dan@dennedy.org>
Sun, 29 May 2011 19:12:42 +0000 (12:12 -0700)
committerDan Dennedy <dan@dennedy.org>
Sun, 29 May 2011 19:12:42 +0000 (12:12 -0700)
src/modules/gtk2/Makefile
src/modules/gtk2/consumer_gtk2_preview.yml [new file with mode: 0644]
src/modules/gtk2/factory.c
src/modules/gtk2/producer_pango.yml [new file with mode: 0644]
src/modules/gtk2/producer_pixbuf.yml [new file with mode: 0644]

index 8628f25db1aa751504bec389a67fb1cb2d222d43..e6b2266cec58fcdeb4329d96c8e08e4bc25da2d0 100644 (file)
@@ -76,6 +76,8 @@ clean:
 
 install: all
        install -m 755 $(TARGET) "$(DESTDIR)$(libdir)/mlt"
+       install -d "$(DESTDIR)$(datadir)/mlt/gtk2"
+       install -m 644 *.yml "$(DESTDIR)$(datadir)/mlt/gtk2"
 
 ifneq ($(wildcard .depend),)
 include .depend
diff --git a/src/modules/gtk2/consumer_gtk2_preview.yml b/src/modules/gtk2/consumer_gtk2_preview.yml
new file mode 100644 (file)
index 0000000..438f8b1
--- /dev/null
@@ -0,0 +1,13 @@
+schema_version: 0.1
+type: consumer
+identifier: gtk_preview
+title: GTK+
+description: A wrapper for sdl_preview that makes it easy to embed in GTK+ applications.
+version: 1
+copyright: Ushodaya Enterprises Limited
+creator: Charles Yates
+license: LGPLv2.1
+language: en
+tags:
+  - Audio
+  - Video
index 34d62e263b4c030bc93852cfe526c990006add50..f97bf8160d8520835cfee0c79100ad77e50359d1 100644 (file)
@@ -73,10 +73,21 @@ void *create_service( mlt_profile profile, mlt_service_type type, const char *id
        return NULL;
 }
 
+static mlt_properties metadata( mlt_service_type type, const char *id, void *data )
+{
+       char file[ PATH_MAX ];
+       snprintf( file, PATH_MAX, "%s/gtk2/%s", mlt_environment( "MLT_DATA" ), (char*) data );
+       return mlt_properties_parse_yaml( file );
+}
+
 MLT_REPOSITORY
 {
        MLT_REGISTER( consumer_type, "gtk2_preview", create_service );
        MLT_REGISTER( filter_type, "gtkrescale", create_service );
        MLT_REGISTER( producer_type, "pango", create_service );
        MLT_REGISTER( producer_type, "pixbuf", create_service );
+
+       MLT_REGISTER_METADATA( consumer_type, "gtk2_preview", metadata, "consumer_gtk2_preview.yml" );
+       MLT_REGISTER_METADATA( producer_type, "pango", metadata, "producer_pango.yml" );
+       MLT_REGISTER_METADATA( producer_type, "pixbuf", metadata, "producer_pixbuf.yml" );
 }
diff --git a/src/modules/gtk2/producer_pango.yml b/src/modules/gtk2/producer_pango.yml
new file mode 100644 (file)
index 0000000..e90d0a5
--- /dev/null
@@ -0,0 +1,11 @@
+schema_version: 0.1
+type: producer
+identifier: pango
+title: Pango
+version: 1
+copyright: Ushodaya Enterprises Limited
+creator: Dan Dennedy
+license: LGPLv2.1
+language: en
+tags:
+  - Video
diff --git a/src/modules/gtk2/producer_pixbuf.yml b/src/modules/gtk2/producer_pixbuf.yml
new file mode 100644 (file)
index 0000000..14fc62e
--- /dev/null
@@ -0,0 +1,11 @@
+schema_version: 0.1
+type: producer
+identifier: pixbuf
+title: GDK-PixBuf
+version: 1
+copyright: Ushodaya Enterprises Limited
+creator: Dan Dennedy
+license: LGPLv2.1
+language: en
+tags:
+  - Video