Sujet Réalisez vous même vos modules avec Dev-C++
- 14 réponses
- 6 participants
- 1 280 vues
- 9 followers
Anonyme
Premier post
1 Posté le 29/04/2006 à 10:10:16Ré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
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
- 1
- 2
Nyl auster
3862
Squatteur·euse d’AF
11 Posté le 15/06/2006 à 14:57:45
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 ?
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 ?
BellesOndes
380
Posteur·euse AFfamé·e
12 Posté le 29/06/2006 à 19:11:59
La vache je flagge le truc GG j'y suis pas arrivé avant...
http://www.bellesondes.fr
BellesOndes
380
Posteur·euse AFfamé·e
14 Posté le 30/06/2006 à 12:10:58
GG = Good Game = Bien joué
Pardon pour les raccourcis de langage.
Pardon pour les raccourcis de langage.
http://www.bellesondes.fr
Anonyme
15 Posté le 09/07/2006 à 12:03:39
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
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
- < Liste des sujets
- Charte
- 1
- 2