marytts.signalproc.effects.AudioEffects Maven / Gradle / Ivy
The newest version!
/**
* Copyright 2011 DFKI GmbH.
* All Rights Reserved. Use is subject to license terms.
*
* This file is part of MARY TTS.
*
* MARY TTS is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, version 3 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see .
*
*/
package marytts.signalproc.effects;
import java.util.ArrayList;
import marytts.server.MaryProperties;
/**
* @author marc
*
*/
public class AudioEffects {
private static ArrayList effects = initialiseEffects();
private static ArrayList initialiseEffects() {
ArrayList effs = new ArrayList();
for (String className : MaryProperties.effectClasses()) {
try {
effs.add((AudioEffect) Class.forName(className).newInstance());
} catch (Exception e) {
throw new Error("Cannot set up effect class '" + className + "'", e);
}
}
return effs;
}
public static Iterable getEffects() {
return effects;
}
public static int countEffects() {
return effects.size();
}
public static AudioEffect getEffect(String name) {
for (AudioEffect effect : getEffects()) {
if (effect.getName().equals(name)) {
return effect;
}
}
return null;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy