Partage
  • Partager sur Facebook
  • Partager sur Twitter

FMOD et Qt

petit probleme simple a resoudre

Sujet résolu
    9 mars 2008 à 13:58:49

    hello all, vu que j'ai décidé de perséverer dans la prog, je sens que vous allez me voir un peu pour des questions de noob jusqu'a ce que les notions de base soient rentrees...

    soit un programme Qt pour l'interface graphique, et utilisant FMOD pour lire un peu de son... je sais rien d'extra jusque la...
    je fais mon petit code que voici, simplistique au demeurant...

    1. #include <QApplication>
    2. #include <QFont>
    3. #include <QPushButton>
    4. #include <FMOD/fmod.h>
    5. int main(int argc, char* argv[])
    6. {
    7.     QApplication app(argc, argv);
    8.     QPushButton quit("Quit");
    9.     quit.resize(200, 60);
    10.     quit.setFont(QFont("Times", 18, QFont::Bold));
    11.     QObject::connect(&quit, SIGNAL(clicked()), &app, SLOT(quit()));
    12.     FSOUND_Init(44100, 32, 0);
    13.     FSOUND_SAMPLE *tir=NULL;
    14.     tir = FSOUND_Sample_Load(FSOUND_FREE, "pan.wav", 0, 0, 0);
    15. if (tir == NULL)
    16. {
    17.     quit.setText("beurk!");
    18. }
    19. else
    20. {
    21.     quit.setText("son chargé");
    22.     FSOUND_PlaySound(FSOUND_FREE, tir);
    23. }
    24.     quit.show();
    25.     FSOUND_Sample_Free(tir);
    26.     FSOUND_Close();
    27.     return app.exec();
    28. }


    j'ai bien linké mon projet au .a du rep lib de mingw...
    si je compile par codeblocks (win vista et CB version 8.02 avec mingw dans c:\minGW\, et adapté le tuto de ce site pour configurer Qt avec CB), pas de probleme, mon fichier .exe se trouve dans le bin/debug du projet... j'y mets mon petit son wav (dans le meme rep que le exe)(les dll sont dans le windows\system32 pour ne plus etre enquiquiné a repetition)

    le bouton quit au depart change bien son texte pour me dire "son chargé", mais je n'entends rien! :(

    par ailleurs, si je compile avec qmake -project, qmake et make, j'ai une tite erreur genre "undefined reference to `FSOUND_Init@12'" et tous les autres appels aux fonction fmod donnent une erreur du meme type... (je suppose qu'il faut compiler d'une maniere particuliere ou rajouter quelque chose dans le .pro??

    alors si quelqu'un pouvait deja m'expliquer pourquoi en compilant avec CB, le fichier ne joue rien alors qu'il marque bien 'fichier chargé'
    et d'autre part comment compiler avec qmake...

    merci de votre aide

    punaise! je suis désolé de vous embêter comme çà...faut bien debuter comme on dit... :-°:-°
    • Partager sur Facebook
    • Partager sur Twitter
      11 mars 2008 à 19:00:18

      salut

      il me semble que la lib Qt4 integre la gestion du son donc je pense que tu te prend la tete a faire compil 2 lib à la fois ....

      jette un oeil dans le tuto je croi que m@teo21 en a noté une ligne à ce sujet au début de Qt sinon il te reste la Doc .... bon courage !!!!
      • Partager sur Facebook
      • Partager sur Twitter
      Développeur & WebMarketeur : www.valbou.fr
        11 mars 2008 à 23:17:42

        en fait la classe de Qt qui gere le son gere le format naturellement géré par l'OS a la base, soit pour le windows, uniquement le wav!! a peu de chose pres... exit donc le mpc, le ogg, le mp3 et tout le reste! c'est con mais c'est comme ca!
        donc fmod, qui lui tourne bien, et sait lire tous les formats, est plus preconisé je pense...mais c'est bon, j'ai réglé mon affaire, c'etait un probleme un peu zarbe...mais en faisant tourner le fichier compilé, il marche...
        merci
        • Partager sur Facebook
        • Partager sur Twitter
          12 mars 2008 à 11:27:30

          j'ai le même problème que toi : tu pourrais m'expliquer comment tu l'as résolu s'il te plaît ?
          • Partager sur Facebook
          • Partager sur Twitter
            12 mars 2008 à 13:49:14

            Up :) Ce serait sympa de répondre car je suis aussi tombé sur cette os. Merci ;)
            • Partager sur Facebook
            • Partager sur Twitter
              12 mars 2008 à 15:10:16

              bon je vais essayer alors de faire simple, parce que votre probleme n'est pas forcement exactement comme le mien non plus :-°

              primo, je suis sous vista avec la derniere version de CB. et minGW est installé dans la racine du C
              cela rend donc les indications dans le tuto de mateo un peu obsoletes (enfin j'ai l'impression :p , je critique pas le grand chef sioux hein!), dans la mesure ou les chemins ne sont plus forcement les memes.
              Mateo recommandait de faire un repertoire FMOD dans le rep INCLUDE de minGW...je l'ai fait, mais les include "fmod/fmod.h" ne tournait pas... par contre, si je recopie tous les fichiers de rep FMOD dans le rep INCLUDE directement, ca tourne bien. apres, il faut juste placer le exe dans le meme repertoire que le son et l'executer, et normalement, ca marche. en tous cas, ca a ete le cas pour moi ((et les dll bien sur)

              pour la compile sous console, il faut faire une premiere fois la compilation, et une fois le fichier .pro créé, ajouter en derniere ligne : LIBS += -lfmod

              et apres refaire qmake et make (SANS REFAIRE qmake - project, sinon, on recree le fichier .pro qui ne contiendra a nouveau plus la ligne que l'on etait censé ajouter)

              vla ce que je peux vous dire a ce stade les amis
              • Partager sur Facebook
              • Partager sur Twitter

              FMOD et Qt

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown