Mercurial > hg > svcore
comparison transform/TransformFactory.cpp @ 1050:5ad98be7f635 cxx11
Merge
author | Chris Cannam |
---|---|
date | Tue, 10 Mar 2015 20:03:08 +0000 |
parents | 26cf6d5251ec |
children | 205250c5d2a2 afed8be79032 |
comparison
equal
deleted
inserted
replaced
1049:10055a284716 | 1050:5ad98be7f635 |
---|---|
748 cerr << "populateUninstalledTransforms exiting" << endl; | 748 cerr << "populateUninstalledTransforms exiting" << endl; |
749 #endif | 749 #endif |
750 } | 750 } |
751 | 751 |
752 Transform | 752 Transform |
753 TransformFactory::getDefaultTransformFor(TransformId id, int rate) | 753 TransformFactory::getDefaultTransformFor(TransformId id, sv_samplerate_t rate) |
754 { | 754 { |
755 Transform t; | 755 Transform t; |
756 t.setIdentifier(id); | 756 t.setIdentifier(id); |
757 if (rate != 0) t.setSampleRate(float(rate)); | 757 if (rate != 0) t.setSampleRate(rate); |
758 | 758 |
759 Vamp::PluginBase *plugin = instantiateDefaultPluginFor(id, rate); | 759 Vamp::PluginBase *plugin = instantiateDefaultPluginFor(id, rate); |
760 | 760 |
761 if (plugin) { | 761 if (plugin) { |
762 t.setPluginVersion(QString("%1").arg(plugin->getPluginVersion())); | 762 t.setPluginVersion(QString("%1").arg(plugin->getPluginVersion())); |
770 | 770 |
771 Vamp::PluginBase * | 771 Vamp::PluginBase * |
772 TransformFactory::instantiatePluginFor(const Transform &transform) | 772 TransformFactory::instantiatePluginFor(const Transform &transform) |
773 { | 773 { |
774 Vamp::PluginBase *plugin = instantiateDefaultPluginFor | 774 Vamp::PluginBase *plugin = instantiateDefaultPluginFor |
775 (transform.getIdentifier(), int(lrintf(transform.getSampleRate()))); | 775 (transform.getIdentifier(), transform.getSampleRate()); |
776 | 776 |
777 if (plugin) { | 777 if (plugin) { |
778 setPluginParameters(transform, plugin); | 778 setPluginParameters(transform, plugin); |
779 } | 779 } |
780 | 780 |
781 return plugin; | 781 return plugin; |
782 } | 782 } |
783 | 783 |
784 Vamp::PluginBase * | 784 Vamp::PluginBase * |
785 TransformFactory::instantiateDefaultPluginFor(TransformId identifier, int rate) | 785 TransformFactory::instantiateDefaultPluginFor(TransformId identifier, |
786 sv_samplerate_t rate) | |
786 { | 787 { |
787 Transform t; | 788 Transform t; |
788 t.setIdentifier(identifier); | 789 t.setIdentifier(identifier); |
789 if (rate == 0) rate = 44100; | 790 if (rate == 0) rate = 44100.0; |
790 QString pluginId = t.getPluginIdentifier(); | 791 QString pluginId = t.getPluginIdentifier(); |
791 | 792 |
792 Vamp::PluginBase *plugin = 0; | 793 Vamp::PluginBase *plugin = 0; |
793 | 794 |
794 if (t.getType() == Transform::FeatureExtraction) { | 795 if (t.getType() == Transform::FeatureExtraction) { |
795 | 796 |
796 FeatureExtractionPluginFactory *factory = | 797 FeatureExtractionPluginFactory *factory = |
797 FeatureExtractionPluginFactory::instanceFor(pluginId); | 798 FeatureExtractionPluginFactory::instanceFor(pluginId); |
798 | 799 |
799 if (factory) { | 800 if (factory) { |
800 plugin = factory->instantiatePlugin(pluginId, float(rate)); | 801 plugin = factory->instantiatePlugin(pluginId, rate); |
801 } | 802 } |
802 | 803 |
803 } else { | 804 } else { |
804 | 805 |
805 RealTimePluginFactory *factory = | 806 RealTimePluginFactory *factory = |