IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

Avis et conseils sur une idée de projet


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de betsprite
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    472
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 472
    Par défaut Avis et conseils sur une idée de projet
    Bonsoir,

    N'ayant pas encore assez d'expérience pour définir la faisabilité d'une idée de projet avec Qt, je me retourne vers vous en espérant que vous pourrez m'éclairer un maximum.

    Mon idée est de développer un logiciel permettant la reconnaissance de notes musicales et l'écriture d'une tablature de ces notes reconnues (ainsi, lorsqu'on met une chanson par exemple à la guitare, le logiciel doit pouvoir reconnaître chaque note et les écrire sur la tablature qui pourra ensuite être lu).
    L'interface comporterait donc au moins une tablature qu'on pourrait par exemple lire comme sur un logiciel du type "guitar Pro" (voir la pièce-jointe pour avoir une idée).

    Pensez-vous qu'un tel logiciel est réalisable avec Qt ? quels outils seraient aussi indispensables au fonctionnement d'un tel logiciel et par où me conseillez-vous de commencer ?

    Je vous remercie !
    Images attachées Images attachées  

  2. #2
    Rédacteur

    Avatar de johnlamericain
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2004
    Messages
    3 742
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 3 742
    Par défaut
    Citation Envoyé par betsprite Voir le message
    Pensez-vous qu'un tel logiciel est réalisable avec Qt ? quels outils seraient aussi indispensables au fonctionnement d'un tel logiciel et par où me conseillez-vous de commencer ?
    Tout d'abord j'ai envie de répondre oui parce qu'il est pratiquement possible de faire toutes les applications de bureau existantes aujourd'hui en Qt (au moins pour l'interface, le couplage avec OpenGL est parfois nécessaire) et que l'avantage du multi-plateforme est non négligeable.

    Après tu me demandes des preuves ? Alors accroche toi, Guitar Pro 6 a été entièrement refait en ... Qt ! Comment tu crois qu'ils ont réussi a rajouter le support de linux dans cette version, ils ont tout simplement refaire le code en Qt en tout cas pour l'interface. Ils utilisent après certainement des bibliothèques tiers pour gérer le backend.

    Je me fais donc pas de soucis sur les possibilités de Qt mais par contre c'est un Gros projet ! Accroche toi donc.

  3. #3
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Par défaut
    Je confirme les propos de John. Par contre, la reconnaissance des notes, c'est du travail, mais c'est jouable si tu ne cherches à identifier les notes que d'une guitare (identifier les notes de tout un groupe est impossible).

    Si tu sais ce que sont un harmonique et une transformée de Fourier, tu devrais pouvoir t'en sortir.

    G.

  4. #4
    Membre éclairé
    Avatar de betsprite
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    472
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 472
    Par défaut
    Bonjour,

    tout d'abord, merci johnlamericain et Gulish pour votre réponse

    Citation Envoyé par johnlamericain
    Après tu me demandes des preuves ? Alors accroche toi, Guitar Pro 6 a été entièrement refait en ... Qt !
    C'est assez surprenant je trouve que ce soit fait avec Qt. Mais comment sont dessinées les tablatures par exemple ? c'est des images ?

    Citation Envoyé par Gulish
    Par contre, la reconnaissance des notes, c'est du travail, mais c'est jouable si tu ne cherches à identifier les notes que d'une guitare (identifier les notes de tout un groupe est impossible).

    Si tu sais ce que sont un harmonique et une transformée de Fourier, tu devrais pouvoir t'en sortir.
    Disons que j'ai déjà fait du traitement du signal dans mon école avec la compression et les séries de Fourier mais je t'avouerai que je ne sais pas vraiment par où commencer... Il faut utiliser un logiciel de traitement du signal et faire la liaison avec Qt ? utiliser des bibliothèques C++ spécifiques pour ce genre de choses ?

    Et comment prendre en entrée les sons pour les analyser et retrouver les notes auxquels ils correspondent ?

    Merci encore

  5. #5
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Par défaut
    Disons que j'ai déjà fait du traitement du signal dans mon école avec la compression et les séries de Fourier mais je t'avouerai que je ne sais pas vraiment par où commencer... Il faut utiliser un logiciel de traitement du signal et faire la liaison avec Qt ? utiliser des bibliothèques C++ spécifiques pour ce genre de choses ?

    Et comment prendre en entrée les sons pour les analyser et retrouver les notes auxquels ils correspondent ?
    Si tu as les connaissances de base, c'est le plus important. Le reste viendra en cherchant.
    Alors, je pense que tu auras besoin d'une lib comme FMODEx ou FFTW pour faire ton traitement, cela me semble le plus simple. Pour l'acquisition du son, c'est possible avec FMODEx, mais tu dois pouvoir également le faire avec Qt (QMultimedia::QAudioInput et autre).

    G.

  6. #6
    Membre éclairé
    Avatar de betsprite
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    472
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 472
    Par défaut
    Citation Envoyé par Gulish
    Alors, je pense que tu auras besoin d'une lib comme FMODEx ou FFTW pour faire ton traitement, cela me semble le plus simple. Pour l'acquisition du son, c'est possible avec FMODEx.
    Merci pour les bibliothèques utiles pour ce genre d'application
    Après je pense que le problème vient de la conception et du couplage de ces lib avec Qt. Comment intégrer les traitements effectués avec des bibliothèques tierces à une interface Qt ? (par exemple, après avoir traité le signal sonore, comment savoir si à la sortie, on aura quelque chose de compatible et qu'on pourra afficher sur notre interface Qt ?)

    Citation Envoyé par Gulish
    Tu dois pouvoir également le faire avec Qt(QMultimedia::QAudioInput et autre).
    Il ne serait pas mieux d'utiliser FMODEx pour pouvoir faire l'acquisition et le traitement avec la même bibliothèque plutôt que d'utiliser QMultimedia pour l'acquisition et FMODEx pour le traitement ?

    Merci !

  7. #7
    Rédacteur

    Avatar de johnlamericain
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2004
    Messages
    3 742
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 3 742
    Par défaut
    Citation Envoyé par betsprite Voir le message
    C'est assez surprenant je trouve que ce soit fait avec Qt. Mais comment sont dessinées les tablatures par exemple ? c'est des images ?
    Il y a plusieurs manière de dessiner les tablatures, cela peut être fait avec QGraphicView ou encore avec QPainter. N'hésite pas à te documenter un maximum avant de commencer pour voir les meilleures solutions. Regarde par exemple ce qu'utilise les applications proches de ce que tu veux faire avec un code source libre : http://qt-apps.org/

  8. #8
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Par défaut
    Après je pense que le problème vient de la conception et du couplage de ces lib avec Qt. Comment intégrer les traitements effectués avec des bibliothèques tierces à une interface Qt ? (par exemple, après avoir traité le signal sonore, comment savoir si à la sortie, on aura quelque chose de compatible et qu'on pourra afficher sur notre interface Qt ?)
    Il ne serait pas mieux d'utiliser FMODEx pour pouvoir faire l'acquisition et le traitement avec la même bibliothèque plutôt que d'utiliser QMultimedia pour l'acquisition et FMODEx pour le traitement ?
    Tout est histoire de format de données, d'encodage et de conversion. Théoriquement, rien n'est impossible. En tout cas, toutes les libs de gestion de son gèrent le PCM, qui est le format "standard" (et non la norme) en traitement de son.

    G.

Discussions similaires

  1. Réponses: 13
    Dernier message: 27/07/2011, 13h08
  2. Avis sur une conception de projet
    Par sabri_icone dans le forum UML
    Réponses: 3
    Dernier message: 01/06/2009, 18h56
  3. Cherche avis sur une idée d'IA pour un rpg...
    Par Neolander dans le forum Intelligence artificielle
    Réponses: 12
    Dernier message: 31/03/2008, 07h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo