SoundEditor 19-2
SoundEditor 19-2
http://www.freesoundeditor.com/download ... editor.zip
http://www.freesoundeditor.com/download ... editor.pdf
http://www.freesoundeditor.com/download ... matwav.zip
StructureSoundEditor.pdf est un descriptif de la structure du programme pour ceux qui voudraient comprendre un peu mieux où nous allons.
Je dis "nous" parce qu'un petit tas de fondus m'a rejoint dans l'aventure, pour le meilleur et pour la transpire.
KarlKox, Jacobus et Oliv sont de la partie et SoundEditor devient donc un projet collectif.
D'autres as de la programmations (parmi les meilleurs du monde) sont en train de réfléchir à l'idée (pour info : à partir du moment où tu réflechis à cette idée, tu deviens ipso de facto un as de la programmation parmi les meilleurs du monde. C'est comme ça, ça s'explique pas...)
Je ferais un message plus détaillé d'ici quelques temps pour expliquer exactement où nous allons.
Le projet est bien sûr ouvert à tous ceux qui aiment bidouiller la musique et le son. Il est définitivement "Open Source".
La version beta 19-4 en cours d'élaboration comprendra :
- fonctions Fade In et Fade Out
- fonction "Inverser" pour mettre un son à l'envers
- la touche "Pause" qui manquait
- un "resampler" pour changer la fréquence d'échantillonage, le nombre d'octets par échantillon (bytedepth) et le nombre de canaux (mono, stéréo, etc.)
- un synthétiseur basique (triangle, sinus, carré et son dessiné à l'aide d'une courbe de bezier)
A venir pour... peut-être pas bientôt, mais dans pas si longtemps...
- lecture et ecriture de fichiers OGG et MP3
grace à KarlKox
Tous les bugs qui m'ont été signalés ont été corrigés (à part un tout petit problème d'affichage dans le module de filtre). Alors si vous en trouvez, ne manquez pas de le faire savoir !
http://www.freesoundeditor.com/download ... editor.pdf
http://www.freesoundeditor.com/download ... matwav.zip
StructureSoundEditor.pdf est un descriptif de la structure du programme pour ceux qui voudraient comprendre un peu mieux où nous allons.
Je dis "nous" parce qu'un petit tas de fondus m'a rejoint dans l'aventure, pour le meilleur et pour la transpire.
KarlKox, Jacobus et Oliv sont de la partie et SoundEditor devient donc un projet collectif.
D'autres as de la programmations (parmi les meilleurs du monde) sont en train de réfléchir à l'idée (pour info : à partir du moment où tu réflechis à cette idée, tu deviens ipso de facto un as de la programmation parmi les meilleurs du monde. C'est comme ça, ça s'explique pas...)
Je ferais un message plus détaillé d'ici quelques temps pour expliquer exactement où nous allons.
Le projet est bien sûr ouvert à tous ceux qui aiment bidouiller la musique et le son. Il est définitivement "Open Source".
La version beta 19-4 en cours d'élaboration comprendra :
- fonctions Fade In et Fade Out
- fonction "Inverser" pour mettre un son à l'envers
- la touche "Pause" qui manquait
- un "resampler" pour changer la fréquence d'échantillonage, le nombre d'octets par échantillon (bytedepth) et le nombre de canaux (mono, stéréo, etc.)
- un synthétiseur basique (triangle, sinus, carré et son dessiné à l'aide d'une courbe de bezier)
A venir pour... peut-être pas bientôt, mais dans pas si longtemps...
- lecture et ecriture de fichiers OGG et MP3
grace à KarlKox
Tous les bugs qui m'ont été signalés ont été corrigés (à part un tout petit problème d'affichage dans le module de filtre). Alors si vous en trouvez, ne manquez pas de le faire savoir !
Dernière modification par ZapMan le mar. 14/sept./2004 1:51, modifié 4 fois.
Tout obstacle est un point d'appui potentiel.
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
ben oui ça fait 3 jours que j'essaie de te joindre sur message privé, email
ect... j'ai pas essayé le tam tam !! et les signaux de fumée !!
pour te dire que j'arrive pas a lire des fichiers sons en 32 bits est-ce normal ??
ces fichiers sons; sont generé par soundforge !!!
juste pour dire au passage que j'ai fini le module "vibrato" mais pas testé en 32 bits (et pour cause !!)

autre choses pourra t'on faire des modules "independant" ????
comme des dlls par exemple !!
ect... j'ai pas essayé le tam tam !! et les signaux de fumée !!
pour te dire que j'arrive pas a lire des fichiers sons en 32 bits est-ce normal ??
ces fichiers sons; sont generé par soundforge !!!
juste pour dire au passage que j'ai fini le module "vibrato" mais pas testé en 32 bits (et pour cause !!)

autre choses pourra t'on faire des modules "independant" ????
comme des dlls par exemple !!

Dernière modification par Backup le dim. 01/août/2004 17:23, modifié 1 fois.
Aussitot demandé, aussitôt satisfait (pour les rapports de bugs)
Alors, hum... voilà.. la vérité c'est que je n'ai pas fait de test en 32 bits depuis un bon bout de temps. J'ai honte !!
Personnellement, je travaille toujours en 16 bits, J'ai aussi testé en 8 bits parceque je sais que certains l'utilisent pour économiser de la place, mais pas le 32.
Je regarde ça. En attendant, tu peux travailler en 16 bits.
Mon mail, c'est seproject@freesoundeditor.com
Pour les DLL, c'est oui, absolument. J'ai proposé, pour l'instant, l'écriture de filtres sous forme d'Include parce que c'était plus facile pour le commun des mortels, mais je compte bien avoir un jour des programmeurs en C qui voudront écrire des filtres. Il y a vraiment peu à faire pour gérer des filtres sous forme de DLL.
Alors, hum... voilà.. la vérité c'est que je n'ai pas fait de test en 32 bits depuis un bon bout de temps. J'ai honte !!
Personnellement, je travaille toujours en 16 bits, J'ai aussi testé en 8 bits parceque je sais que certains l'utilisent pour économiser de la place, mais pas le 32.
Je regarde ça. En attendant, tu peux travailler en 16 bits.
Mon mail, c'est seproject@freesoundeditor.com
Pour les DLL, c'est oui, absolument. J'ai proposé, pour l'instant, l'écriture de filtres sous forme d'Include parce que c'était plus facile pour le commun des mortels, mais je compte bien avoir un jour des programmeurs en C qui voudront écrire des filtres. Il y a vraiment peu à faire pour gérer des filtres sous forme de DLL.
Dernière modification par ZapMan le mar. 14/sept./2004 1:52, modifié 2 fois.
Tout obstacle est un point d'appui potentiel.
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Je veux, mon neveux !!
Je trépigne sur place.
Mince ! Dobro ! Maintenant tout le monde sait que tu es un as de la programmation parmi les meilleurs du monde !
Je trépigne sur place.
Mince ! Dobro ! Maintenant tout le monde sait que tu es un as de la programmation parmi les meilleurs du monde !
Tout obstacle est un point d'appui potentiel.
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
mais je compte bien avoir un jour des programmeurs en C qui voudront écrire des filtres. Il y a vraiment peu à faire pour gérer des filtres sous forme de DLL.
pourquoi en C ? en purebasic on peut faire des dll !!

Mince ! Dobro ! Maintenant tout le monde sait que tu es un as de la programmation parmi les meilleurs du monde !
je mange pas de carrotes !!!

Dernière modification par Backup le dim. 01/août/2004 17:50, modifié 1 fois.
Of Course, bien sûr. Je voulais juste dire que les programmeur C ne peuvent pas faire de fichiers Include pour PureBasic et donc ils doivent forcément en passer par une DLL.
Un dernier petit mot avant d'aller me coucher : ceux qui ont Windows NT vont avoir un problème avec "SetLayeredWindowAttributes"
Il faut remplacer la procédure "SetWinTransparency" par ça :
A demain (il est 3h30 du matin à Nouméa)
Un dernier petit mot avant d'aller me coucher : ceux qui ont Windows NT vont avoir un problème avec "SetLayeredWindowAttributes"
Il faut remplacer la procédure "SetWinTransparency" par ça :
Code : Tout sélectionner
Procedure SetWinTransparency (WinHandle.l, Transparency_Level.l)
; PROCEDURE FROM DANILO - Thanks to "Rings" for the NT compatibility
SetWindowLong_(WinHandle,#GWL_EXSTYLE,#WS_EX_LAYERED)
lib=OpenLibrary(1,"user32.dll")
If lib
;SetLayeredWindowAttributes_(WinHandle,0,Transparency_Level,2)
CallFunction(1,"SetLayeredWindowAttributes",WinHandle,0,Transparency_Level,2)
EndIf
CloseLibrary(1)
EndProcedure
Dernière modification par ZapMan le dim. 01/août/2004 17:49, modifié 1 fois.
Tout obstacle est un point d'appui potentiel.
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Rectification ! C'est VOUS qui habitez à l'autre bout de la planète (la preuve : je n'ai pas du tout l'impression d'avoir la tête en bas)
Merci, Oliv, tu assures !
Merci, Oliv, tu assures !
Tout obstacle est un point d'appui potentiel.
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
-
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Ben ici, on se lève tôt (à 6h30) et normalement on se couche tôt (vers 10-11h). Nous sommes en hiver (ça caille à mort ! au moins 20 degrés !) le soleil se couche vers 5h30 et se lève vers 6h.
@Dobro : à peine rentré du boulot, je me suis précipité pour écouter ce que fait ton filtre (tellement content d'avoir une contribution !).
C'est propre, c'est simple et ça marche ! Cela dit, ça n'est pas ce qu'on appelle habituellement un vibrato : le vibrato est une modulation de fréquence. Toi, tu proposes une modulation d'amplitude. Je ne sais pas exactement quel nom donner à ton filtre (on aura sûrement un vibrato de type classique d'ici peu et il ne faudrait pas qu'il y ait de confusion).
Histoire de faire mon difficile, j'ajouterais que je verrais bien un réglage de la fréquence d'oscillation (qui dépend actuellement de la profondeur d'amplitude, ce qui est un peu bizarre). Ton oscillation est un signal triangulaire. Le nec plus ultra serait de pouvoir choisir la forme du signal (une modulation d'amplitude à base de signal carré est souvent intéressante).
Allez Dobro ! Transforme l'essai et fais nous un truc encore mieux !
Pour ceux que ça intéresse, voilà le code de Dobro (c'est une reprise du code du filtre Volume qui fait partie du "pack" de SoundEditor plus quelques lignes de modif) :
Aller, je me mets tout de suite à tester les sons 32 bits pour voir ce qui cloche.
@Dobro : à peine rentré du boulot, je me suis précipité pour écouter ce que fait ton filtre (tellement content d'avoir une contribution !).
C'est propre, c'est simple et ça marche ! Cela dit, ça n'est pas ce qu'on appelle habituellement un vibrato : le vibrato est une modulation de fréquence. Toi, tu proposes une modulation d'amplitude. Je ne sais pas exactement quel nom donner à ton filtre (on aura sûrement un vibrato de type classique d'ici peu et il ne faudrait pas qu'il y ait de confusion).
Histoire de faire mon difficile, j'ajouterais que je verrais bien un réglage de la fréquence d'oscillation (qui dépend actuellement de la profondeur d'amplitude, ce qui est un peu bizarre). Ton oscillation est un signal triangulaire. Le nec plus ultra serait de pouvoir choisir la forme du signal (une modulation d'amplitude à base de signal carré est souvent intéressante).
Allez Dobro ! Transforme l'essai et fais nous un truc encore mieux !
Pour ceux que ça intéresse, voilà le code de Dobro (c'est une reprise du code du filtre Volume qui fait partie du "pack" de SoundEditor plus quelques lignes de modif) :
Code : Tout sélectionner
; FILTRE VIBRATO - VIBRATO FILTER
; By Dobro
;
; You can use this filter as an exemple to create new one's
;
; Vous pouvez utiliser ce filtre comme exemple pour en créer de nouveaux
;
; A filter need 2 or 3 procedures to be operational
; - the first one will add your controls (gadgets) in the filter window when it's open. If you have no need of control, you can forget it.
; - the second one will be called by the event loop of the filter window (this exemple has not this one)
; - the third must apply your effect on the sound
;
; Un filtre nécessite 2 à 3 procédures pour être opérationnel
; - la première ajoutera vos gadgets dans la fenêtre de filtre quand elle sera ouverte. Si votre filtre ne nécessite aucun gadget, vous pouvez l'oublier.
; - la deuxième sera appellée par la boucle des évènement de cette fenêtre (cet exemple n'en comporte pas)
; - la troisième doit appliquer votre effet sur le son
Procedure vibCreateButtons ()
#ComboGadget=1 ; gadgets can have any number from 1 to 399.
; les gadgets peuvent avoir un numéro compris entre 1 et 399.
values$="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20"
ComboBoxGadget(#ComboGadget,100,23,70,250)
FontID1 = LoadFont(1, "Arial", 16, #PB_Font_Bold)
SetGadgetFont(#ComboGadget, FontID1)
For lcg=1 To 20
AddGadgetItem(#ComboGadget,-1,StringField(values$, lcg, ","))
Next
SetGadgetState(#ComboGadget,5)
PBase=40 ; this filter gadget is 40 points high. You can use more !
; Le gadget de ce filtre occupe un espace de 40 points de haut. Vous pouvez faire plus grand !
ProcedureReturn PBase
EndProcedure
Procedure vibCompute (*hsound) ; *hsound is the adress of the WAVE sound on wich you will apply your effect
; *hsound est l'adresse du son WAVE sur lequel vous allez appliquer votre effet
CValues$="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20"
vol.f = ValF(StringField(CValues$, GetGadgetState(#ComboGadget)+1, ","))
wBitsPerSample.w=PeekW(*hsound+34)
*pt=*hsound+44
lim = *hsound+44+PeekL(*hsound+40)
While *pt<=lim
Select wBitsPerSample
Case 8
sv1 = PeekB(*pt)
If sv1<0
sv1+256 ; Convert signed to unsigned
EndIf
sv1-128 ; 8bits wave signal is from 0 to 256 with a midpoint at 128
; ********** ici Vibrato by Dobro
compt+sens
If compt=0
sens=1
EndIf
If compt>10000*(vol/10)
sens=-1
EndIf
sv = Round(sv1*compt/10000,0)
; ********** fin du code de Dobro
If sv>127 ; saturation
sv=127
EndIf
If sv<-127
sv=-127
EndIf
sv+128
PokeB(*pt,sv)
Case 16
; ********** ici Vibrato by Dobro
compt+sens
If compt=0
sens=1
EndIf
If compt>10000*(vol/10)
sens=-1
EndIf
sv = Round(PeekW(*pt)*compt/10000,0)
; ********** fin du code de Dobro
If sv>($FFFF/2)-1
sv=($FFFF/2)-1 ; saturation
EndIf
If sv<-($FFFF/2)+1
sv=-($FFFF/2)+1 ; saturation
EndIf
PokeW(*pt,sv)
Case 32
; ********** ici Vibrato by Dobro
compt+sens
If compt=0
sens=1
EndIf
If compt>10000*(vol/10)
sens=-1
EndIf
sv = Round(PeekL(*pt)*compt/10000,0)
; ********** fin du code de Dobro
If sv>($FFFFFFFF/2)-1
sv=($FFFFFFFF/2)-1 ; saturation
EndIf
If sv<-($FFFFFFFF/2)+1
sv=-($FFFFFFFF/2)+1 ; saturation
EndIf
PokeL(*pt,sv)
EndSelect
*pt+wBitsPerSample/8
Wend
ProcedureReturn *hsound ; this is very important !!!!!!!!!
EndProcedure
;
; Now, give the names of your effect and register the adresses of your procedures
RegisterFilter("Vibrato","Vibrato","Vibrato","by Dobro",@vibCreateButtons (),0,@vibCompute ())
; "FrenchName","EnglishName","GermanName","Your name",procedure adress for create button, procedure adress for events managing, procedure adress for filtering computing
Tout obstacle est un point d'appui potentiel.
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
il existe 2 Types de vibrato !!!
le vibrato acces sur la modulation de frequence( a la machoire pour les saxo) , et l'autre acces sur la modulation d'amplitude !!( a l'air !!) <--- celui qui est employé dans les effets pour guitariste !!!! et saxophoniste et chanteur !!!
moi perso le vibrato acces sur le modulation d'amplitude j'appel ça un
"tremolo" mais bon !! ça reste LE vibrato !!
ici tu trouvera des infos sur les 2 types de vibrato !!!
http://www.sfa.asso.fr/fr/gsam/manifest ... lr=lang_fr
d'ailleur a ce titre tu devrai renommer ton module echo-reverberation
car ça n'est qu'un echo !! la reverberation c'est autre chose !!
l'histoire me donne raison !!
visible ici : http://www.vibroworld.com/magnatone/vibrato.html

le vibrato acces sur la modulation de frequence( a la machoire pour les saxo) , et l'autre acces sur la modulation d'amplitude !!( a l'air !!) <--- celui qui est employé dans les effets pour guitariste !!!! et saxophoniste et chanteur !!!
moi perso le vibrato acces sur le modulation d'amplitude j'appel ça un
"tremolo" mais bon !! ça reste LE vibrato !!
ici tu trouvera des infos sur les 2 types de vibrato !!!
http://www.sfa.asso.fr/fr/gsam/manifest ... lr=lang_fr
d'ailleur a ce titre tu devrai renommer ton module echo-reverberation
car ça n'est qu'un echo !! la reverberation c'est autre chose !!

l'histoire me donne raison !!
visible ici : http://www.vibroworld.com/magnatone/vibrato.html
alors c'est qui le "Pro " ??The History of Tremolo and The beginnings of Vibrato
Simply put, Tremolo is a cyclic change in volume. Tremolo, a.k.a. amplitude modulation, is a very pleasing effect and probably the first built into an amp, starting in the late 1940's with Danelectro, Gibson, and Premier. In 1955 Fender introduced the Tremolux (model 5E9). This was Fender's first amp with Tremolo. Meanwhile, in nearby Inglewood, Magna Electronics known for student lap-steel/amp combos was manufacturing real professional amps that incorporated unique designs and revolutionary new features such as Stereo Vibrato.
So in 1956 Fender introduced the Vibrolux. The Vibrolux supposedly had Vibrato (pitch modulation), but in reality this was just another variation on the Tremolo already found in the Tremolux. In fact, NO Fender amp has EVER had true pitch-bending vibrato, regardless of catalog hype to the contrary.
Try this Experiment at Home
Plug your guitar into your amp and power it up. Now strum a chord and turn the volume control up and down rhythmically and repeatedly. You will hear Tremolo. This is what Fender and many others called Vibrato.
Now try this
Fret one of your guitar strings and rhythmically rock your finger back and forth in a sideways motion stretching the string slightly. Notice the pitch is changing, This is Real Vibrato.
Don L. Bonham's Patented Vibrato Circuits
Sometime in the 1950's, Magna Electronics Inc. started to manufacture the now famous Magnatone guitar amps. They were the first and only guitar amps with real Vibrato. Vibrato a.k.a. frequency modulation, is a cyclic pitch change. Magnatone amps had great tone and features, but were under powered, too heavy, and exspensive compared to the market leaders, Fender and Gibson. These other amp manufacturers probably knew this and were quick to change their amp labeling and advertising to indicate that their amps also had Vibrato. Even the Vibrosonic, made by Fender in 1959, had only a complex Tremolo circuit.
On June 13, 1961, Don L. Bonham was granted a U.S.Patent # 2,988,706 for his Vibrato circuits. By now the Estey Organ Company had bought Magna Electronics and redesigned many of the amps. Magnatone amps were still the only ones with electronic Vibrato but by 1965 Fender and the others had the bigger share of the Market. Well why not, their guitar amps supposedly had vibrato and were less exspensive. To this day the only guitar amp that effectively incorporate Real Vibrato, was the Magnatone line of Amps.
There are other acoustic and electronic ways to make Vibrato i.e. Leslie's Doppler effect and Hammond's distributor RC Network, but none is as magical as the "Golden" Voice of Magnatone. This is what the Vibroman 2.0 Stereo Tube Effects is designed from, using the very same Varistor arrangement as the Magnatone Model 280.

Bon, pour commencer, on va dire que c'est toi, sans aucun doute possible, n'en discutons plus.Dobro a écrit :alors c'est qui le "Pro " ??
Cela dit, tel que je comprends ton article, il semble que, bien que tu n'ai pas tort, j'ai quand même raison :
(le Vibrolux était supposé avoir un vibrato (modulation de fréquence), mais en réalité ça n'était qu'une variation du Tremolo....The Vibrolux supposedly had Vibrato (pitch modulation), but in reality this was just another variation on the Tremolo...
Et :
Note la majuscule pour le R de Real Vibrato ! Le vrai vibrato correspond donc bien à une variation de fréquence, ce que confirme le webster...Plug your guitar into your amp and power it up. Now strum a chord and turn the volume control up and down rhythmically and repeatedly. You will hear Tremolo. This is what Fender and many others called Vibrato.
Now try this
Fret one of your guitar strings and rhythmically rock your finger back and forth in a sideways motion stretching the string slightly. Notice the pitch is changing, This is Real Vibrato...
WordNet Dictionary a écrit : Noun 1. vibrato - (music) a pulsating effect in an instrumental or vocal tone produced by slight and rapid variations in pitch
AudioFanzine a écrit : Vibrato : Variation rapide de la hauteur d'un son autour de la fréquence (pour imiter, par exemple, le léger mouvement d'un doigt sur la corde d'un violon). Ne pas confondre avec tremolo.
Tremolo : Modulation du niveau d'un son autour d'un niveau moyen. Ne pas confondre avec vibrato
hyperdictionary a écrit :Vibrato : [n] (music) a pulsating effect in an instrumental or vocal tone produced by slight and rapid variations in pitch
voiceteacher.com a écrit :I define vibrato as a "slight variation of pitch resulting from the free oscillation of the vocal cords".
(ce qui fait bien varier la fréquence et non le volume du sonwww.personal.psu.edu a écrit : What is vibrato when playing guitar?
To make a vibrato sound, all you have to do is wiggle your finger up and down to produce a vibrating type effect.
et beaucoup d'autres...Dictionnaire des arts médiatiques a écrit :MUSIQUE - (n.m.) Variation de la fréquence d'une onde sonore ou d'un signal électrique.
En résumé, je dirais que la définition du "Vrai" vibrato c'est une oscillation de fréquence et que ton programme est un tremolo (au moins, comme ça, on sait comment l'appeller !!) mais que tu es complètement excusable de l'avoir initialement appellé vibrato puisque tu n'es pas le premier à confondre les deux.
Ca te va ?
On tout cas, tout ça nous a permis de devenir plus savants, et c'est trés bien. Je vais faire le même travail de recherche sur "réverbération" pour clarifier aussi les choses de ce côté là.
A bientôt !
Tout obstacle est un point d'appui potentiel.
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Bibliothèques PureBasic et autres codes à télécharger :https://www.editions-humanis.com/downlo ... ads_FR.htm
Il y a aussi ça http://perso.wanadoo.fr/vb-audio/us/sp/ ... ffect0.htm