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(); }
int main(int argv, char **args) { QApplication app(argv, args); app.setApplicationName("effectsnippets"); QList<Phonon::EffectDescription> effects = Phonon::BackendCapabilities::availableAudioEffects(); Phonon::Effect *effect = new Phonon::Effect(effects.at(3)); //![0] QList<Phonon::EffectParameter> parameters = effect->parameters(); foreach(Phonon::EffectParameter parameter, parameters) { // Do something with parameter } //![0] //![1] Phonon::EffectWidget *effectWidget = new Phonon::EffectWidget(effect); //![1] effectWidget->show(); return app.exec(); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); Phonon::MediaObject *mediaObject = new Phonon::MediaObject(this); mediaObject->setCurrentSource(Phonon::MediaSource("../myPhonon1/mysong.mp3")); Phonon::AudioOutput *audioOutput = new Phonon::AudioOutput(Phonon::MusicCategory, this); Phonon::Path path = Phonon::createPath(mediaObject, audioOutput); mediaObject->play(); // 获取可用的音频效果的描述 QList<Phonon::EffectDescription> effectDescriptions = Phonon::BackendCapabilities::availableAudioEffects(); qDebug() << effectDescriptions; Phonon::EffectDescription effectDescription = effectDescriptions.at(5); // 使用指定的音频效果的描述来创建音频效果 Phonon::Effect *effect = new Phonon::Effect(effectDescription); // 在路径中插入音频效果 path.insertEffect(effect); // 创建效果部件,它可以用来更改效果中的参数 Phonon::EffectWidget *effectWidget = new Phonon::EffectWidget(effect); effectWidget->show(); }