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

FMOD Discussion :

[C#] Changer la vitesse d'un WAV et sa tonalité


Sujet :

FMOD

  1. #1
    Membre expérimenté Avatar de dfiad77pro
    Homme Profil pro
    Responsable Architecture logicielle
    Inscrit en
    Décembre 2008
    Messages
    541
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable Architecture logicielle
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 541
    Points : 1 729
    Points
    1 729
    Par défaut [C#] Changer la vitesse d'un WAV et sa tonalité
    Bonjour,

    Je cherche à lire des notes avec FMOD mais je n'arrive pas a changer les paramètres du WAV ( tonalité de la note, vitesse):


    Le code suivant ne marche pas car il lit le son tel quel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
      // son a lire
    result = App.audio.systemAudio.createSound("./Sound/bank1/do.wav", FMOD.MODE.SOFTWARE | FMOD.MODE.LOOP_NORMAL, ref App.audio.sound[numDsp]);
    App.audio.erreurInfos(result);
                 
    App.audio.sound[numDsp].setMusicSpeed(50);
    App.audio.sound[numDsp].setVariations(1.5f, 1f, 1f);
             
    //effet
                 App.audio.systemAudio.createDSPByType(FMOD.DSP_TYPE.DISTORTION, ref App.audio.dsp[numDsp]);
                 App.audio.dsp[numDsp].setParameter((int)FMOD.DSP_DISTORTION.LEVEL, 1000.0f);
    App.audio.erreurInfos(result);
    App.audio.dsp[numDsp].setActive(true);
    
    result = App.audio.systemAudio.playSound(FMOD.CHANNELINDEX.FREE,  App.audio.sound[numDsp], false, ref App.audio.channel[numDsp]);
    App.audio.erreurInfos(result);
    App.audio.channel[numDsp].setVolume(1f);

  2. #2
    Membre actif
    Profil pro
    Programmeur Audio
    Inscrit en
    Décembre 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur Audio
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 127
    Points : 221
    Points
    221
    Par défaut
    Bonjour dfiad77pro,

    Je ne connais pas la version C# mais il doit y avoir la possibilité de changer la fréquence du canal de sortie.

    tu peux essayer ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    App.audio.channel[numDsp].setFrequency(frequence_de_base * pitch);
    Normalement ça devrait changer la vitesse ainsi que la tonalité du son.

  3. #3
    Membre expérimenté Avatar de dfiad77pro
    Homme Profil pro
    Responsable Architecture logicielle
    Inscrit en
    Décembre 2008
    Messages
    541
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable Architecture logicielle
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 541
    Points : 1 729
    Points
    1 729
    Par défaut
    ça change bien un truc mais le souci c'est qu'il faut que le pitch change indépendamment de la hauteur du son.

    Genre mon fichier de base est un do de 1sec, il faut que je puisse faire un do a l'octave au dessu qui dure aussi une seconde...


    Et comment désactiver la répétition permanente du Wav???

  4. #4
    Membre actif
    Profil pro
    Programmeur Audio
    Inscrit en
    Décembre 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur Audio
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 127
    Points : 221
    Points
    221
    Par défaut
    Dans ce là, il faut faire du traitement de signal. Ce n'est plus aussi simple que de changer une valeur.
    Tu peux toujours regarder du côté des VST.

    Pour la répétition, tu parles des boucles ?

  5. #5
    Membre expérimenté Avatar de dfiad77pro
    Homme Profil pro
    Responsable Architecture logicielle
    Inscrit en
    Décembre 2008
    Messages
    541
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable Architecture logicielle
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 541
    Points : 1 729
    Points
    1 729
    Par défaut
    argll,
    pour l'implémentation de VST, j'avais regardé mais j'ai pas trop compris le fonctionnement...

    Oui je parle bien de boucle, le Wav se répète sans arrêt...

  6. #6
    Membre actif
    Profil pro
    Programmeur Audio
    Inscrit en
    Décembre 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur Audio
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 127
    Points : 221
    Points
    221
    Par défaut
    Tu peux essayer la méthode setLoopCount, valable pour Sound ou Channel.

    je n'ai jamais testé les VST, bon courage

  7. #7
    Membre expérimenté Avatar de dfiad77pro
    Homme Profil pro
    Responsable Architecture logicielle
    Inscrit en
    Décembre 2008
    Messages
    541
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable Architecture logicielle
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 541
    Points : 1 729
    Points
    1 729
    Par défaut
    c'est bon y'a plus de boucle, manque plus qu'a changer la tonalité sans ralentir le son

  8. #8
    Membre actif
    Profil pro
    Programmeur Audio
    Inscrit en
    Décembre 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur Audio
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 127
    Points : 221
    Points
    221
    Par défaut
    Le plus dur reste à faire

  9. #9
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 977
    Points
    7 977
    Par défaut
    Citation Envoyé par dfiad77pro Voir le message
    c'est bon y'a plus de boucle, manque plus qu'a changer la tonalité sans ralentir le son
    Il y'a un module (DSP) tout fait dans FMOD pour faire du Pitch il me semblait ... pq tu prends pas ca ? (Le pitch ne touchant bien entendu pas a la "longueur" du son mais juste les fréquences comme c'est ce que je pense que tu souhaite)
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Membre actif
    Profil pro
    Programmeur Audio
    Inscrit en
    Décembre 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur Audio
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 127
    Points : 221
    Points
    221
    Par défaut
    La modification de la fréquence impacte la longueur de son justement. Plus exactement son taux d'échantillonnage !
    Ce qu'il souhaite est un pitch shifter, il existe des plugins VST.

    Je peux me tromper mais je n'ai jamais vue cette fonctionnalité dans FMOD

  11. #11
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 977
    Points
    7 977
    Par défaut
    C'est que je venais de dire ^^

    Et puis, pourquoi parler de VST sur le forum de fmod ?!, jusqu'a preuve du contraire Fmod ne gere pas les VST ... mais peut être est-ce le cas maintenant. (c'est pas une attaque hein )

    Et oui, tu te trompes car je l'ai deja utilisée cette fonctionnalitée de pitch shifting et ca allait nickel

    cf sur le site même la liste des dsp qui sont pret a l'emploi.

    Built-in DSP Effects
    The multi-track editor supports the DSP effects built into the FMOD Ex API. Create effect chains, apply them to layers within the multi-track editor and use game parameters to automate effect properties. DSP effects include:
    1. Lowpass & Highpass
    2. Delay, Flange, Chorus
    3. Tremolo
    4. Distortion
    5. Normalization
    6. Parametric EQ
    7. Pitch Shift
    8. Compression
    9. Reverb
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  12. #12
    Membre actif
    Profil pro
    Programmeur Audio
    Inscrit en
    Décembre 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur Audio
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 127
    Points : 221
    Points
    221
    Par défaut
    Autant pour moi

    Les VST sont utilisables via le système de plug-in, et pour le coup j'ai vérifié sur le site dans la liste des features.

    New file formats, output modes, and encoders may be added or downloaded by the user as DLLs. VST and Winamp DSP plug-in support for effects is included.
    Etant donnée qu'il y a un DSP tout prêt à l'emploie ça devrait répondre aux besoins de dfiad77pro.

  13. #13
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 977
    Points
    7 977
    Par défaut
    Bien vu pour le support VST dans Fmod j'avais encore jamais vu ca. Merci
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Sound : Changer la vitesse de lecture sans changer la tonalité
    Par thenaoh dans le forum ActionScript 3
    Réponses: 0
    Dernier message: 18/10/2013, 12h33
  2. Réponses: 4
    Dernier message: 08/02/2011, 16h57
  3. changer vitesse animation flash avec variable php
    Par wrathchild dans le forum Flash
    Réponses: 0
    Dernier message: 01/05/2008, 20h25
  4. Changer la vitesse du processeur
    Par korospoukine dans le forum Composants
    Réponses: 2
    Dernier message: 14/12/2007, 15h00

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