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

index 5775d9b8817b0f9f1612384a6ca523c5f13256f4..fb75d5bb605d5735403a4f15a1223f8ea60331cf 100644 (file)
@@ -27,6 +27,8 @@ clean:
 
 install: all
        install -m 755 $(TARGET) "$(DESTDIR)$(libdir)/mlt"
+       install -d "$(DESTDIR)$(datadir)/mlt/melt"
+       install -m 644 *.yml "$(DESTDIR)$(datadir)/mlt/melt"
 
 ifneq ($(wildcard .depend),)
 include .depend
index e815e423267f7d8646c0c1dc292b2ee9c13ca55a..83705e515a46148706a987473cc8d3cdfa09c3ca 100644 (file)
  */
 
 #include <string.h>
+#include <limits.h>
 #include <framework/mlt.h>
 
 extern mlt_producer producer_melt_file_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg );
 extern mlt_producer producer_melt_init( mlt_profile profile, mlt_service_type type, const char *id, char **argv );
 
+static mlt_properties metadata( mlt_service_type type, const char *id, void *data )
+{
+       char file[ PATH_MAX ];
+       snprintf( file, PATH_MAX, "%s/melt/%s", mlt_environment( "MLT_DATA" ), (char*) data );
+       return mlt_properties_parse_yaml( file );
+}
+
 MLT_REPOSITORY
 {
        MLT_REGISTER( producer_type, "melt", producer_melt_init );
        MLT_REGISTER( producer_type, "melt_file", producer_melt_file_init );
+
+       MLT_REGISTER_METADATA( producer_type, "melt", metadata, "producer_melt.yml" );
+       MLT_REGISTER_METADATA( producer_type, "melt_file", metadata, "producer_melt_file.yml" );
 }
diff --git a/src/modules/melt/producer_melt.yml b/src/modules/melt/producer_melt.yml
new file mode 100644 (file)
index 0000000..16d38cf
--- /dev/null
@@ -0,0 +1,13 @@
+schema_version: 0.1
+type: producer
+identifier: melt
+title: Melt
+description: Process melt command line.
+version: 1
+copyright: Ushodaya Enterprises Limited
+creator: Charles Yates
+license: LGPLv2.1
+language: en
+tags:
+  - Audio
+  - Video
diff --git a/src/modules/melt/producer_melt_file.yml b/src/modules/melt/producer_melt_file.yml
new file mode 100644 (file)
index 0000000..04840e5
--- /dev/null
@@ -0,0 +1,13 @@
+schema_version: 0.1
+type: producer
+identifier: melt_file
+title: Melt
+description: Process file containing melt command line syntax.
+version: 1
+copyright: Ushodaya Enterprises Limited
+creator: Charles Yates
+license: LGPLv2.1
+language: en
+tags:
+  - Audio
+  - Video