Se connecter
Se connecter

ou
Créer un compte

ou
Agrandir
Ajouter ce produit à
  • Mon ancien matos
  • Mon matos actuel
  • Mon futur matos
SynthEdit SynthEdit
Photos
1/72

Sujet Réalisez vous même vos modules avec Dev-C++

  • 14 réponses
  • 6 participants
  • 1 280 vues
  • 9 followers
1 Réalisez vous même vos modules avec Dev-C++
**Il y a un problème d'affichage de l'antislash avec ce forum, remplacez le caractère "/" par un antislash (le même de l'autre côté) dans les chemins proposés.

Aide à couper coller :


Il faut bien débuter, la joie du code libre...

Réalisez vous même vos modules avec Dev-C++

SE va devenir une référence incontournable dans quelques années, notament lorqu'il sera compatible Mac. Les développeurs ont tout intéret à s'initier au C++.
La difficulté principale est d'admettre qu'il n'est pas néccessaire de tout comprendre pour commencer à programmer avec la SDK de SE.

/*****************************************/

http://www.bloodshed.net/dev/devcpp.html

-Installez Dev-C++ 4-9-9-2 avec les options proposées par défaut de l'installeur.

-Téléchargez la SDK de SE sur le site de Synthedit.

http://www.synthedit.com/files/se_sdk2.zip

-Décompresser le contenu du fichier zip dans un répertoire " SE "
à la racine du répertoire du programme Dev-C++ : ** " C:/Dev-Cpp/SE "
,
Il faudra préciser ce chemin dans les paramètres du compilateur :
** " C:/Dev-Cpp/SE/se_sdk2 " .

/*******************************************/

-Ouvrir le programme Dev-C++

-Allez dans le Menu > Option d'Environnement
>Interface
>Choisissez la langue "french"
, (if you want)

!!!!-Allez dans le Menu > Outils
>Option du Compilateur
>Répertoires
>Répertoire c++ .h

!!!! Ajouter ce chemin : ** "C:/Dev-Cpp/SE/se_sdk2".


-Allez dans le Menu > Fichier
>Importer Projet MS Visual C++


-Importez le fichier "se_gain.dsp" (fichier MS Visual C++) qui se trouve normalement dans le répertoire "se_gain_mk2".


/************************************/

-Allez dans le Menu > Projet
>option du projet

Réglage du projet :

1 Général :
type=DLL

2 Fichiers :
Ne rien modifier (+ tard si vous voulez)

3 Compilateur :
Ne rien modifier (+ tard si vous voulez)


4 Paramètres :

Compilateur : (à couper coller)
-D__GNUWIN32__ -W -D_M_IX86=500 -DNDEBUG -D_WINDOWS -DWINDOWS=1 -fexceptions

C++ : (à couper coller)
-D__GNUWIN32__ -W -D_M_IX86=500 -DNDEBUG -D_WINDOWS -DWINDOWS=1 -fexceptions

!!!! Editeur de liens: (à couper coller)
-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32

Il est important de supprimer la référence "--implib ".release/se_gain.lib" à la fin de la ligne des paramètres de l'éditeur de liens.

!!!! Si vous supprimez ces paramètres vous risquez de ne pas pouvoir compiler votre module !!!

!!! Il est fortement conseillé de garder ces paramètres !

note : -mcpu=pentium est obsolète, le choix de l'optimisation du code se change avec les paramètres du compilateur :
options du projet>
Compilateur>
>Génération du code
>Générer les instructions pour la machine suivante
>Choisissez votre processeur

Pour infos :
paramètres du mode DLL par défaut de Dev-cpp:

Compilateur :
-DBUILDING_DLL=1
C++ :
-DBUILDING_DLL=1
Editeur de liens:
--no-export-all-symbols --add-stdcall-alias


5 Répertoires :

Répertoire d'inclusion : facultatif

Ceci n'est pas obligatoire si le chemin est déjà indiqué dans les options du compilateur.


6 Construction:

Cochez la case : "Changer le nom de fichier de sortie" et remplacez l'extension "exe" par "sem"


7 Makefile :
Ne rien modifier

8 Information de version :
Ne rien modifier (+ tard si vous voulez)

/*******************************/

-Allez dans le Menu > Exécuter
>Compiler



Votre module est compilé ! (...)


/********************************/
Faq :

Si vous travaillez sur un module sans GUI (Graphic User Intreface), supprimez (clique droit) les fichiers " SEGUI*.* " de votre projet
car ils seront compilés pour rien.
ex :
avec =130 ko
sans =56 ko

Vous pouvez aussi supprimer les fichiers *.h (sauf Module.h et GuiModule.h) de votre projet car le programme sait qu'ils
se trouvent dans le répertoire "se_sdk2".

!!!! Ne modifiez que les fichiers : Module.cpp (DSP), Module.h (DSP), GuiModule.cpp (GUI), GuiModule.h (GUI).

Le reste des fichiers *.cpp correspond à la SDK de SE, ils sont dans le répertoire "se_sdk2".
Vous ne pouvez pas supprimer les fichiers *.cpp de votre projet.

La syntaxe du code en assembleur est à modifier pour le module "waveshaper".
Le "scope" peut être compilé sans problème.

Les modules compilés avec Dev-C++ sont de 30 à 400% + rapide que les modules réalisés avec Borland 5.5 ... à tester.

/*****************************/

Pour commencer il suffit de modifier le processus :
"void Module::sub_process(long buffer_offset, long sampleFrames )"
du fichier Module.cpp et de déclarer vos variables dans le fichier Module.h.

void Module::sub_process(long buffer_offset, long sampleFrames )
{
// assign some pointers to your in/output buffers. usually blocks (array) of 96 samples
float *in1 = buffer_offset + input1_buffer;
float *in2 = buffer_offset + input2_buffer;
float *out1 = buffer_offset + output1_buffer;

while(--sampleFrames >= 0) // sampleFrames = how many samples to process (can vary). repeat (loop) that many times
{
float input1 = *in1; // get the sample 'POINTED TO' by in1
float input2 = *in2;

// do the actual processing (multiplying the two input samples together)
float result = input1 * input2;

*out1 = result; // store the result in the output buffer

// increment the pointers (move to next sample in buffers)
in1++;
in2++;
out1++;
}

Pour utiliser les fonctions mathématiques il faut déclarer au début du fichier Module.cpp
l'include "math.h"

#include "math.h"

Le module se_gain_mk2 est un bon exemple pour commencer, il intègre une procédure d'économie de cpu.
Je l'utilise pour mon filtre KX-LPF, si le signal d'entrée est à 0.00 volt, celui-ci se met en veille.


X. Kalensky le 28 04 2006.

KX77FREE.FREE.FR
Afficher le premier post
11
Comment as tu commencé le c++,
tu as potassé des bouquins avant?
edit: ou bien tu t'es débrouillé directement via les forums sur le SDK/ aide SDK en ligne? (que je viens juste de parcourir d'un oeil enthousiaste).
Je commence par essayer de bien comprendre les principes importants
(variables, fonctions, opérateur logiques, boucles, tableau, pointeurs) afin d'y voir plus clair. (ça vient doucement, je maitrise pas mais je commence à piger la logique du truc).

Y'a t'il une autre source internet que les liens donnés sur le site SE qui t'a particulièrement aidé pour progresser dans la programmation orientée vers la gestion de l'audio/ de la musique ?
12
La vache je flagge le truc GG j'y suis pas arrivé avant...

http://www.bellesondes.fr

13

Citation : GG



?
14
GG = Good Game = Bien joué

Pardon pour les raccourcis de langage.

http://www.bellesondes.fr

15
IMPORTANT !!!

http://www.codeblocks.org/downloads.shtml

L'IDE code::bloks semble parfaitement fonctionner.

Dev-c++ n'est pas 100% compatible avec la sdk de SE !!!

pour plus d'infos :https://nay-seven.com/index.php

a+

Xavier