@ Flype :
Bug : le problème obtenu quand on pose un fichier d'un mauvais format sur l'application SoundEditor.exe n'est, pour une fois, pas vraiment de ma faute. La vérification du type de fichier que tu propose existe déjà dans le programme ! Elle est effectuée par la procédure ReadWaveChunck. Il se trouve simplement que la fonction "MessageRequester", chargée d'annoncer à l'utilisateur le problème de format, plante inexpliquablement quand elle utilisée dans ce contexte. On a affaire ici, incontestablement à un bug de PurePasic. Si je remplace les appels à MessageRequester par des appels à MessRequesterSE définie comme suit :
Code : Tout sélectionner
Procedure MessRequesterSE(title$,SError$,option)
hw=OpenWindow(99, 216, 0, 459, 237, #PB_Window_BorderLess | #PB_Window_ScreenCentered , "New window ( 0 )")
If hw
If CreateGadgetList(WindowID())
Frame3DGadget(1, 8, 8, 443, 199, "Title")
TextGadget(2, 12, 36, 433, 167, "SError", #PB_Text_Center)
ButtonGadget(3, 364, 212, 87, 20, "OK")
StartDrawing(WindowOutput())
DrawingMode(4)
Box(1, 1, 457, 235)
SetGadgetText(1,title$)
SetGadgetText(2,SError$)
Repeat
Event = WaitWindowEvent()
If Event = #PB_EventGadget
GadgetID = EventGadgetID()
If GadgetID = 3
Quit = 1
EndIf
EndIf
If GetAsyncKeyState_(#VK_ESCAPE) Or GetAsyncKeyState_(#VK_ENTER)
Quit = 1
EndIf
SetWindowPos_(hw,#HWND_TOP,0,0,0,0,#SWP_NOMOVE|#SWP_NOSIZE) ; keep the window over the main window - maintient la fenêtre au premier plan
Box(1, 1, 457, 235)
Until Quit
EndIf
CloseWindow(99)
EndIf
EndProcedure
tout se passe à merveille et le message est correctement affiché à l'utilisateur. C'est peut-être le contexte MDI qui pose problème à MessageRequester ?
En attendant de trouver comment contourner ce bug, j'intègre la procédure ci-dessus dans la version 19-4 qui est imminente. Cela règlera ce problème. Si on doit rester sur ce principe, j'essaierai quand même de faire une fenêtre d'erreur un peu plus jolie !
Format Raw : pourquoi pas ! KarlKox et moi-même devons de toute façon travailler sur le module "Gestion des décodeurs" qui devra pouvoir gérer l'ouverture des différents formats de fichiers. J'intégrerai une option RAW
Recorder : Cool ! SoundEditor ne peut en effet se passer d'une fonction de ce type. Ca tombe vraiment bien que tu ais déjà bossé dessus. Dis-moi ce que tu attends de moi pour faciliter l'intégration de ton travail dans SoundEditor.
@ Jacobus : vraiment désolé de la suite de tuiles que tu rencontre. Le problème que tu décrits n'a semble-t-il aucun rapport avec le précédent et semble plutôt en rapport avec la mémoire. Y-a-t'il quelqu'un d'autre qui pourrait nous tester SoundEditor sur Win NT/2000 pour savoir si le problème de Jacobus est propre à sa configuration ou à cette version de Windows ??????? De ton côté, Jacobus, tu pourrais peut-être faire avancer le schmilblik en exécutant la fonction OpenSound en mode trace, pour voir exactement à quel moment ça part dans les choux.
@ Dr DRI : tu n'a trompé personne en envoyant ton message 2 fois. Ca ne fait toujours que 2 idées et pas 4 (ni 3)
Tes deux idées sont sans aucun doute trés intéressantes. Mais c'est plutôt coton à réaliser ! La gestion de la fonction "Annuler" est pour l'instant un peu sommaire dans SoundEditor puisqu'il n'existe même pas de "Redo" (ou "Recommencer"). J'aimerais bien l'améliorer dans le sens que tu suggère, mais il y a tant à faire !!!! On y pensera un peu plus tard... à moins que tu ai envie de te lancer sur le sujet ??
D'une manière générale, je crois qu'il y a plein d'idées fantastiques à prendre dans Photoshop, comme la notion de sélection à "contour progressif". Presque tout ce qu'Adobe a imaginé pour l'image pourrait être transposé au son et je crois que nous avons là une source d'inspiration formidable qui, à ma connaissance, n'a pas encore été exploitée par les autres programme de son.
@ Oliv :
Taille des datas : le fait de diviser par deux la taille des datas, dans ton exemple, devrait fonctionner sans problème. Je ne faisais que suggérer une méthode qui permet de vérifier à coup SUR, et quelle que soit la situation, qu'on a bien une taille de data correcte.
Fichiers récents : suite à une suggestion de Flype sur ma M.P., je vais faire une petite vérification des fichiers récents à l'ouverture du fichier "Pref" pour virer tous les fichiers qui n'existent plus. Ca évitera ce genre de truc pas trés propre (mon nom de bureau dans votre liste).
@ Dobro : alors, ça bosse ???
@ tous : j'ai terminé le resampler et les fonctions FadeIn, FadeOut hier soir en rentrant du théatre. Il me reste la fonction "Inverser" (PFFF.. c'est rien du tout, ça...). J'intègre le travail de Flype et je vous envoi ça.