foreach (Phonon::EffectDescription effect, effects) { QTreeWidgetItem *item = new QTreeWidgetItem(effectsTreeWidget); item->setText(0, tr("Effect")); item->setText(1, effect.name()); item->setText(2, effect.description()); //! [effects] //! [effectsParameters] Phonon::Effect *instance = new Phonon::Effect(effect, this); QList<Phonon::EffectParameter> parameters = instance->parameters(); for (int i = 0; i < parameters.size(); ++i) { Phonon::EffectParameter parameter = parameters.at(i); QVariant defaultValue = parameter.defaultValue(); QVariant minimumValue = parameter.minimumValue(); QVariant maximumValue = parameter.maximumValue(); QString valueString = QString("%1 / %2 / %3") .arg(defaultValue.toString()).arg(minimumValue.toString()) .arg(maximumValue.toString()); QTreeWidgetItem *parameterItem = new QTreeWidgetItem(item); parameterItem->setText(0, tr("Parameter")); parameterItem->setText(1, parameter.name()); parameterItem->setText(2, parameter.description()); parameterItem->setText(3, QVariant::typeToName(parameter.type())); parameterItem->setText(4, valueString); } }
int main(int argv, char **args) { QApplication app(argv, args); app.setApplicationName("Audio effect tester"); Phonon::MediaObject *mediaObject = new Phonon::MediaObject; mediaObject->setCurrentSource(QString("/home/gvatteka/Music/Lumme-Badloop.ogg")); Phonon::AudioOutput *audioOutput = new Phonon::AudioOutput(Phonon::MusicCategory); //! [0] QList<Phonon::EffectDescription> effectDescriptions = Phonon::BackendCapabilities::availableAudioEffects(); Phonon::EffectDescription effectDescription = effectDescriptions.at(4); Phonon::Path path = Phonon::createPath(mediaObject, audioOutput); //! [1] Phonon::Effect *effect = new Phonon::Effect(effectDescription); path.insertEffect(effect); //! [0] Phonon::EffectWidget *effectWidget = new Phonon::EffectWidget(effect); effectWidget->show(); //! [1] mediaObject->play(); effectWidget->setWindowTitle("Effect Name: " + effectDescription.name()); app.exec(); }