Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Phonon su symbian



  • Sono nuovo su QT. sto provando a sviluppare la mia prima applicazione sul mio nokia 5800 xm.
    Ho installato l'sdk (Qt SDK 1.1) e gli strumenti richiesti da qt sul mio pc windows(xp).
    Ho compilato un progetto "qt mobility" vuoto dove ho aggiunto solo un pulsante.
    Il progetto gira senza errori sul mio nokia .

    Nel mio progetto, vorrei prendere uno stream audio dal microfono e inviarlo a un dispositivo audio di uscita.
    Mi sembra di aver capito che posso usare la classe phonon per questo scopo.

    Nel progetto ho solo aggiunto nel mio mainWindow.cpp (all'inizio):

    @#include < phonon/AudioOutput >@

    ..e sulla azione del pulsante che avevo messo, ho aggiunto:

    @Phonon::AudioOutput* pAudioOutput;
    pAudioOutput = new Phonon::AudioOutput( Phonon::MusicCategory, this);@

    quando provo a compilare l'applicazione, ricevo il seguente errore:

    warning: Can't find following headers in User or System Include Paths:
    "audiooutput.h"

    ma se vado in C:\QtSDK\Symbian\SDKs\Symbian1Qt473\include\phonon posso trovare il file audiooutput.h

    Cosa c'è di sbagliato nel mio ambiente di sviluppo?

    Il mio progetto di test può essere scaricato da www.tr3ma.com/Dati/test2.zip



  • Hi,

    I do not speak Italian but hope that using Google Translate I was able to understand your issue. Try to add the following line to test2.pro:

    @QT += core gui phonon@

    Best regards,
    Leon



  • Grazie! Evviva!
    Ho risolto aggiungendo nel file .pro la riga:
    @QT += core gui phonon@

    ora che funge, ho aggiunto la restante parte di codice nel file mainWindow.cpp:

    @#include < phonon/AudioOutput >
    #include < phonon/MediaObject >
    #include < phonon/MediaSource >@

    e nella sub on_pushButton_clicked() ho aggiunto:

    @Phonon::AudioOutput* pAudioOutput;
    pAudioOutput = new Phonon::AudioOutput( Phonon::MusicCategory, this);
    Phonon::MediaObject* pMediaObject ;
    pMediaObject = new Phonon::MediaObject(this);
    Phonon::createPath(pMediaObject, pAudioOutput);
    QString url= QString("e:\Scream.wav");
    Phonon::MediaSource mediaSource = Phonon::MediaSource(url);
    pMediaObject ->setCurrentSource( mediaSource);
    pMediaObject->play();@

    poi ho copiato il file Scream.wav nella memoria esterna (e: )

    Quando faccio girare l'applicazione sul cellulare, premendo il pulsante, viene eseguito il file wav.
    Molto bene.

    Ora: Come posso cambiare il dispositivo di uscita, scegliendo tra le uscite disponibili? (per esempio nel caso in cui abbia 2 auricolari bluetooth e voglia eseguire un file solo su uno di questi dispositivi.
    Cercherò un pò su google...


Log in to reply