[Sv1-commits] SF.net SVN: sv1: [1124] runner/trunk
Brought to you by:
cannam
From: <ca...@us...> - 2008-06-24 15:33:33
|
Revision: 1124 http://sv1.svn.sourceforge.net/sv1/?rev=1124&view=rev Author: cannam Date: 2008-06-24 08:33:31 -0700 (Tue, 24 Jun 2008) Log Message: ----------- * First hack at actually reading transform descriptions from RDF Modified Paths: -------------- runner/trunk/FeatureExtractionManager.cpp runner/trunk/main.cpp runner/trunk/runner.pro runner/trunk/test-query Added Paths: ----------- runner/trunk/test-query-plugin-for-transform runner/trunk/test-query-plugin-for-transform.~1~ runner/trunk/test-query-plugin-output-types runner/trunk/test-query-pluginid-for-rdf Modified: runner/trunk/FeatureExtractionManager.cpp =================================================================== --- runner/trunk/FeatureExtractionManager.cpp 2008-06-24 15:32:37 UTC (rev 1123) +++ runner/trunk/FeatureExtractionManager.cpp 2008-06-24 15:33:31 UTC (rev 1124) @@ -36,6 +36,7 @@ #include "base/TempDirectory.h" #include "base/ProgressPrinter.h" #include "transform/TransformFactory.h" +#include "rdf/RDFTransformFactory.h" #include "FeatureWriter.h" #include "FeatureExtractionManager.h" @@ -206,6 +207,26 @@ bool FeatureExtractionManager::addFeatureExtractorFromFile (QString transformXmlFile, const vector<FeatureWriter*> &writers) { + //!!! first try it as RDF + + RDFTransformFactory factory + (QUrl::fromLocalFile(QFileInfo(transformXmlFile).absoluteFilePath()) + .toString()); + ProgressPrinter printer("Parsing transforms RDF file"); + std::vector<Transform> transforms = factory.getTransforms(&printer); + if (!factory.isOK()) { + cerr << "WARNING: FeatureExtractionManager::addFeatureExtractorFromFile: Failed to parse transforms file: " << factory.getErrorString().toStdString() << endl; + } + if (!transforms.empty()) { + bool success = true; + for (int i = 0; i < transforms.size(); ++i) { + if (!addFeatureExtractor(transforms[i], writers)) { + success = false; + } + } + return success; + } + QFile file(transformXmlFile); if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { cerr << "ERROR: Failed to open transform XML file \"" Modified: runner/trunk/main.cpp =================================================================== --- runner/trunk/main.cpp 2008-06-24 15:32:37 UTC (rev 1123) +++ runner/trunk/main.cpp 2008-06-24 15:33:31 UTC (rev 1124) @@ -30,6 +30,7 @@ using std::string; #include "base/Exceptions.h" +#include "base/TempDirectory.h" #include "data/fileio/AudioFileReaderFactory.h" #include "data/fileio/PlaylistFileReader.h" @@ -41,6 +42,8 @@ #include "FeatureWriter.h" #include "FeatureWriterFactory.h" +#include "rdf/PluginRDFIndexer.h"//!!! + // Desired options: // // * output preference: @@ -578,6 +581,8 @@ } for (int i = 0; i < writers.size(); ++i) delete writers[i]; + + TempDirectory::getInstance()->cleanup(); return 0; } Modified: runner/trunk/runner.pro =================================================================== --- runner/trunk/runner.pro 2008-06-24 15:32:37 UTC (rev 1123) +++ runner/trunk/runner.pro 2008-06-24 15:33:31 UTC (rev 1124) @@ -2,7 +2,7 @@ TEMPLATE = app SV_UNIT_PACKAGES = vamp vamp-hostsdk samplerate mad id3tag oggz fishsound sndfile lrdf -load(../sonic-visualiser/sv.prf) +load(../sv-rdf-import/sv.prf) CONFIG += sv qt thread warn_on stl rtti exceptions QT += xml network @@ -10,22 +10,23 @@ TARGET = runner -DEPENDPATH += . ../sonic-visualiser i18n main -INCLUDEPATH += . ../sonic-visualiser main -LIBPATH = ../sonic-visualiser/audioio ../sonic-visualiser/data ../sonic-visualiser/plugin ../sonic-visualiser/transform ../sonic-visualiser/base ../sonic-visualiser/system $$LIBPATH +DEPENDPATH += . ../sv-rdf-import i18n main +INCLUDEPATH += . ../sv-rdf-import main +LIBPATH = ../sv-rdf-import/audioio ../sv-rdf-import/data ../sv-rdf-import/plugin ../sv-rdf-import/rdf ../sv-rdf-import/transform ../sv-rdf-import/base ../sv-rdf-import/system $$LIBPATH QMAKE_CXXFLAGS_RELEASE += -fmessage-length=80 -fdiagnostics-show-location=every-line contains(DEFINES, BUILD_STATIC):LIBS -= -ljack -LIBS = -lsvaudioio -lsvdata -lsvtransform -lsvplugin -lsvbase -lsvsystem -lrdf $$LIBS +LIBS = -lsvaudioio -lsvdata -lsvtransform -lsvplugin -lsvrdf -lsvbase -lsvsystem -lrdf $$LIBS -PRE_TARGETDEPS += ../sonic-visualiser/audioio/libsvaudioio.a \ - ../sonic-visualiser/data/libsvdata.a \ - ../sonic-visualiser/transform/libsvtransform.a \ - ../sonic-visualiser/plugin/libsvplugin.a \ - ../sonic-visualiser/base/libsvbase.a \ - ../sonic-visualiser/system/libsvsystem.a +PRE_TARGETDEPS += ../sv-rdf-import/audioio/libsvaudioio.a \ + ../sv-rdf-import/data/libsvdata.a \ + ../sv-rdf-import/transform/libsvtransform.a \ + ../sv-rdf-import/plugin/libsvplugin.a \ + ../sv-rdf-import/rdf/libsvrdf.a \ + ../sv-rdf-import/base/libsvbase.a \ + ../sv-rdf-import/system/libsvsystem.a OBJECTS_DIR = tmp_obj MOC_DIR = tmp_moc Modified: runner/trunk/test-query =================================================================== --- runner/trunk/test-query 2008-06-24 15:32:37 UTC (rev 1123) +++ runner/trunk/test-query 2008-06-24 15:33:31 UTC (rev 1124) @@ -1,8 +1,4 @@ -## OK, why doesn't this work? -## Need to get vamp.rdf being served from vamp/ instead of vamp.rdf/vamp.n3 I guess -## and vamp-example-plugins from uri without .n3 - PREFIX vamp: <http://purl.org/ontology/vamp/> PREFIX examples: <http://vamp-plugins.org/rdf/plugins/vamp-example-plugins#> Added: runner/trunk/test-query-plugin-for-transform =================================================================== --- runner/trunk/test-query-plugin-for-transform (rev 0) +++ runner/trunk/test-query-plugin-for-transform 2008-06-24 15:33:31 UTC (rev 1124) @@ -0,0 +1,23 @@ + +PREFIX vamp: <http://purl.org/ontology/vamp/> + +SELECT ?transform ?plugin ?step_size ?block_size ?window_type ?program ?sample_rate ?start ?duration ?param_id ?param_value +FROM <file:///work/runner/transforms/percussiononsets.n3> + +WHERE { + ?transform a vamp:Transform . + ?transform vamp:plugin ?plugin . + OPTIONAL { ?transform vamp:step_size ?step_size } . + OPTIONAL { ?transform vamp:block_size ?block_size } . + OPTIONAL { ?transform vamp:window_type ?window_type } . + OPTIONAL { ?transform vamp:program ?program } . + OPTIONAL { ?transform vamp:sample_rate ?sample_rate } . + OPTIONAL { ?transform vamp:start ?start } . + OPTIONAL { ?transform vamp:duration ?duration } . + OPTIONAL { + ?transform vamp:parameter ?param . + ?param vamp:identifier ?param_id . + ?param vamp:value ?param_value + } +} + Added: runner/trunk/test-query-plugin-for-transform.~1~ =================================================================== --- runner/trunk/test-query-plugin-for-transform.~1~ (rev 0) +++ runner/trunk/test-query-plugin-for-transform.~1~ 2008-06-24 15:33:31 UTC (rev 1124) @@ -0,0 +1,11 @@ + +PREFIX vamp: <http://purl.org/ontology/vamp/> + +SELECT ?plugin +FROM <file:///work/runner/transforms/percussiononsets.n3> + +WHERE { + ?transform a vamp:Transform . + ?transform vamp:plugin ?plugin . +} + Added: runner/trunk/test-query-plugin-output-types =================================================================== --- runner/trunk/test-query-plugin-output-types (rev 0) +++ runner/trunk/test-query-plugin-output-types 2008-06-24 15:33:31 UTC (rev 1124) @@ -0,0 +1,18 @@ + +PREFIX vamp: <http://purl.org/ontology/vamp/> +PREFIX examples: <http://vamp-plugins.org/rdf/plugins/vamp-example-plugins#> + +SELECT ?output_id ?output_type ?feature_type ?event_type ?unit +FROM <http://vamp-plugins.org/rdf/plugins/vamp-example-plugins> + +WHERE { + ?plugin a vamp:Plugin . + ?plugin vamp:identifier "percussiononsets" . + ?plugin vamp:output_descriptor ?output . + ?output vamp:identifier ?output_id . + ?output a ?output_type . + OPTIONAL { ?output vamp:computes_feature_type ?feature_type } . + OPTIONAL { ?output vamp:computes_event_type ?event_type } . + OPTIONAL { ?output vamp:unit ?unit } . +} + Added: runner/trunk/test-query-pluginid-for-rdf =================================================================== --- runner/trunk/test-query-pluginid-for-rdf (rev 0) +++ runner/trunk/test-query-pluginid-for-rdf 2008-06-24 15:33:31 UTC (rev 1124) @@ -0,0 +1,15 @@ + +PREFIX vamp: <http://purl.org/ontology/vamp/> +PREFIX examples: <http://vamp-plugins.org/rdf/plugins/vamp-example-plugins#> + +SELECT ?plugin ?library_id ?plugin_id +FROM <http://vamp-plugins.org/rdf/plugins/vamp-example-plugins> + +WHERE { + ?plugin a vamp:Plugin . + ?plugin vamp:identifier ?plugin_id . + OPTIONAL { ?library a vamp:PluginLibrary . + ?library vamp:identifier ?library_id . + ?library vamp:available_plugin ?plugin . } +} + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |