SoundEditor 20e
Salut,
Il semble que chez moi, le seul problème concerne l'ouverture de fichier, car une partie seulement est lue, mais c'est le RIFF qui n'est pas reconnu.
D'ailleurs j'ai remarqué un truc.
Si j'essaie d'ouvrir un fichier, il est ouvert pendant 2 secondes environ puis se referme et 2 à 3 secondes après apparaît le message d'erreur annonçant que le RIFF n'est pas reconnu.
Mais si au lieu de fermer les fenêtres ouvertes immédiatement et que j'attend un peu, j'ai une répétition des messages d'erreur, sur les précédents qui ne se sont pas fermés. J'ai attendu pour voir... à trois répétitions j'ai commencé à vouloir les refermer une à une ( des doublons) et cela n'a pas été facile. temps de fermeture conjugué au temps de réapparition des autres... j'en avais plein l'une sur l'autre.
Maintenant j'atends plus je ferme aussi sec. (Ceci tant que la fenêtre MDI du fichier que j'ai tenté d'ouvrir est affichée, vide bien sûr)
Voilà, juste pour info
@+ Jacobus
Il semble que chez moi, le seul problème concerne l'ouverture de fichier, car une partie seulement est lue, mais c'est le RIFF qui n'est pas reconnu.
D'ailleurs j'ai remarqué un truc.
Si j'essaie d'ouvrir un fichier, il est ouvert pendant 2 secondes environ puis se referme et 2 à 3 secondes après apparaît le message d'erreur annonçant que le RIFF n'est pas reconnu.
Mais si au lieu de fermer les fenêtres ouvertes immédiatement et que j'attend un peu, j'ai une répétition des messages d'erreur, sur les précédents qui ne se sont pas fermés. J'ai attendu pour voir... à trois répétitions j'ai commencé à vouloir les refermer une à une ( des doublons) et cela n'a pas été facile. temps de fermeture conjugué au temps de réapparition des autres... j'en avais plein l'une sur l'autre.
Maintenant j'atends plus je ferme aussi sec. (Ceci tant que la fenêtre MDI du fichier que j'ai tenté d'ouvrir est affichée, vide bien sûr)
Voilà, juste pour info
@+ Jacobus
Les messages d'erreur sont-ils tous les mêmes ? Quel est exactement le texte ou les textes de ces messages ? La version que je t'ai envoyée change-t-elle quelque chose pour ce message ? Et pour le problème d'affichage de l'aide ? (c'était notre séquence "questions pour un champion"). La version 20e que je viens de mettre en ligne présente encore une petite différence concernant l'ouverture des fichiers, il serait également intéressant que tu compare avec la version 20d que je t'ai expédié.
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


Certains messages d'erreur comportent le nombre d'octets lus, puis le message affiche Formats de fichiers non reconnus(liste) et plus loin entre paranthèses (RIFF not found) Bref, je refais des tests et je t'envoie des captures en Gif, ce sera plus probant.
Merci. Pour les 20 000 euros, je suis sûr que le projet te rapportera plus que ça !
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 :
Pour l'intégration de ma lib ToolBarXP, j'ai résolu le prob.
j'ai du modifier une lib à cause de ta fenêtre conçu avec CreateWindowEx_(
je t'envoie la lib modifié et le code exemple
j'ai du modifier une lib à cause de ta fenêtre conçu avec CreateWindowEx_(
je t'envoie la lib modifié et le code exemple
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
T'es un chef, Régis ! 
Voici, juste pour vous apâter, un apperçu de mon travail en cours sur MonPiano :

Les notes figurant sur la partition sont bien entendu éditables à la souris en hauteur, position et longueur.

Voici, juste pour vous apâter, un apperçu de mon travail en cours sur MonPiano :

Les notes figurant sur la partition sont bien entendu éditables à la souris en hauteur, position et longueur.
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 touche au but. Je viens de réactualiser l'image ci-dessus.
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
Salut
Splendide !! Quel phénomène ce ZapMan !
Je viens de référencer freesoundeditor sur http://fr.audiofanzine.com/ dans la partie qui m'est réservée, ce qui devrait t'apporter quelques visites supplémentaires...enfin j'espère. la communauté comptant plus de 80000 membres avec plus de 800 connectés en permanence. il se pourrait donc que tu reçoives du courrier de ceux-ci...tous très Music.
Qu'est-ce-tu dis ? ta boîte est pleine !
Un petit blème pour télécharger les Zip sur freesoundeditor, j'y arrive pas.
j'obtiens que des documents html.
Dans le Métronome de MonPiano, m'est avis que la cadence se compte en BPM et non en BMP... une petite inversion
DropUpLoad : Gros travail d'utilité générale je dirais, ta démonstration est plus qu'intéressante pour tout le monde. Reste plus qu'à remplir la zone de téléchargement de freesoundeditor avec des appli au goût de "reviens-y" (Pas trop de temps en ce moment...mais ça va viendre )
L'empire n'a qu'à bien se tenir...grand maître Yoda
Là, là...je sens que tu as les oreilles qui pointent
@+ Jacobus

Splendide !! Quel phénomène ce ZapMan !
Je viens de référencer freesoundeditor sur http://fr.audiofanzine.com/ dans la partie qui m'est réservée, ce qui devrait t'apporter quelques visites supplémentaires...enfin j'espère. la communauté comptant plus de 80000 membres avec plus de 800 connectés en permanence. il se pourrait donc que tu reçoives du courrier de ceux-ci...tous très Music.
Qu'est-ce-tu dis ? ta boîte est pleine !

Un petit blème pour télécharger les Zip sur freesoundeditor, j'y arrive pas.
j'obtiens que des documents html.

Dans le Métronome de MonPiano, m'est avis que la cadence se compte en BPM et non en BMP... une petite inversion

DropUpLoad : Gros travail d'utilité générale je dirais, ta démonstration est plus qu'intéressante pour tout le monde. Reste plus qu'à remplir la zone de téléchargement de freesoundeditor avec des appli au goût de "reviens-y" (Pas trop de temps en ce moment...mais ça va viendre )
L'empire n'a qu'à bien se tenir...grand maître Yoda
Là, là...je sens que tu as les oreilles qui pointent

@+ Jacobus
1- Merci encore, c'est chic !Jacobus a écrit :1- Je viens de référencer freesoundeditor sur http://fr.audiofanzine.com/
2- Un petit blème pour télécharger les Zip sur freesoundeditor, j'y arrive pas.
3- Là, là...je sens que tu as les oreilles qui pointent![]()
2- Tous ? Ou seulement certains ? J'ai tout vérifier et ça passe chez moi !
3- C'est donc ça qui me chatouillais !
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 suis allée a la peche !! 
j'ai trouvé de quoi satisfaire ton apetit du MiDI
voici recuperé sur codearchive une petite librairie complete de la gestion du midi
puis il y a ça aussi !

j'ai trouvé de quoi satisfaire ton apetit du MiDI
voici recuperé sur codearchive une petite librairie complete de la gestion du midi
Code : Tout sélectionner
; German forum: http://robsite.de/php/pureboard/viewtopic.php?t=2786&highlight=
; Author: GPI
; Date: 09. November 2003
;info:Play Midis direct (with mci)
Procedure GetMidiLength(Nb)
a$=Space(#MAX_PATH)
i=mciSendString_("status mid"+Str(Nb)+" length",@a$,#MAX_PATH,0)
ProcedureReturn Val(a$)
EndProcedure
Procedure SetMidiTimeFormatToMS(Nb)
ProcedureReturn mciSendString_("set mid"+Str(Nb)+" time format milliseconds",0,0,0)
EndProcedure
Procedure SetMidiTimeFormatToTick(Nb)
ProcedureReturn mciSendString_("set mid"+Str(Nb)+" time format song pointer",0,0,0)
EndProcedure
Procedure LoadMidi(Nb,file.s)
;i=mciSendString_("open Sequencer!"+Chr(34)+file+Chr(34)+" alias mid"+Str(Nb),0,0,0)
i=mciSendString_("OPEN "+Chr(34)+file+Chr(34)+" Type SEQUENCER ALIAS mid"+Str(Nb),0,0,0)
If i=0
ProcedureReturn #True
Else
ProcedureReturn #False
EndIf
EndProcedure
Procedure PlayMidi(Nb)
i=mciSendString_("play mid"+Str(Nb)+" from "+Str(0),0,0,0)
ProcedureReturn i
EndProcedure
Procedure PlayMidiFrom(Nb,Start,endPos)
i=mciSendString_("play mid"+Str(Nb)+" from "+Str(Start)+" to "+Str(endPos),0,0,0)
ProcedureReturn i
EndProcedure
Procedure PauseMidi(Nb)
i=mciSendString_("pause mid"+Str(Nb),0,0,0)
ProcedureReturn i
EndProcedure
Procedure ResumeMidi(Nb)
i=mciSendString_("resume mid"+Str(Nb),0,0,0)
ProcedureReturn i
EndProcedure
Procedure StopMidi(Nb)
i=mciSendString_("stop mid"+Str(Nb),0,0,0)
ProcedureReturn i
EndProcedure
Procedure FreeMidi(Nb)
i=mciSendString_("close mid"+Str(Nb),0,0,0)
ProcedureReturn i
EndProcedure
Procedure SetMidiTempo(Nb,Tempo)
i=mciSendString_("set mid"+Str(Nb)+" tempo "+Str(Tempo),0,0,0)
ProcedureReturn i
EndProcedure
Procedure GetMidiPosition(Nb)
a$=Space(#MAX_PATH)
i=mciSendString_("status mid"+Str(Nb)+" position",@a$,#MAX_PATH,0)
ProcedureReturn Val(a$)
EndProcedure
Procedure GetMidiTempo(Nb)
a$=Space(#MAX_PATH)
i=mciSendString_("status mid"+Str(Nb)+" Tempo",@a$,#MAX_PATH,0)
ProcedureReturn Val(a$)
EndProcedure
Procedure IsMidiPlaying(Nb)
a$=Space(#MAX_PATH)
i=mciSendString_("status mid"+Str(Nb)+" mode",@a$,#MAX_PATH,0)
If a$="playing"
ProcedureReturn #True
Else
ProcedureReturn #False
EndIf
EndProcedure
Procedure IsMidiPaused(Nb)
a$=Space(#MAX_PATH)
i=mciSendString_("status mid"+Str(Nb)+" mode",@a$,#MAX_PATH,0)
If a$="paused"
ProcedureReturn #True
Else
ProcedureReturn #False
EndIf
EndProcedure
Procedure IsMidiReady(Nb)
a$=Space(#MAX_PATH)
i=mciSendString_("status mid"+Str(Nb)+" mode",@a$,#MAX_PATH,0)
Debug a$
If a$="not ready"
ProcedureReturn #False
Else
ProcedureReturn #True
EndIf
EndProcedure
;- Example
; OpenWindow(1,0,200,10,10,#PB_Window_SystemMenu,"Midi-Test")
;
; LoadMidi(1,"D:\download\vgmusic.com\music\dreamcast\sa_dc_06.mid")
; Debug GetMidiLength(1)
; SetMidiTimeFormatToMS(1)
; Debug GetMidiLength(1)
;
; PlayMidi(1)
;
; old=-1
; Repeat
; If IsMidiPlaying(1)
; event=WindowEvent()
; x=GetMidiPosition(1)/100
; If old<>x
; Debug "+"+Str(x)
; old=x
; EndIf
; Else
; event=WaitWindowEvent()
; EndIf
; Until event=#PB_Event_CloseWindow
; StopMidi(1)
; FreeMidi(1)
;
; ExecutableFormat=Windows
; EOF
Code : Tout sélectionner
; English forum: http://purebasic.myforums.net/viewtopic.php?t=8107&highlight=
; Author: Cor
; Date: 29. October 2003
Global hMidiOut
#Acoustic_Steel_Guitar = 25
#Channel1 = 1
#Channel2 = 2
#Channel3 = 3
#Channel4 = 4
#Channel5 = 5
#Channel6 = 6
Procedure MidiOutMessage(hMidi,iStatus,iChannel,iData1,iData2)
dwMessage = iStatus | iChannel | (iData1 << 8 ) | (iData2 << 16)
ProcedureReturn midiOutShortMsg_(hMidi, dwMessage) ;
EndProcedure
Procedure SetInstrument(channel,instrument)
MidiOutMessage(hMidiOut, $C0, channel, instrument, 0)
EndProcedure
Procedure PlayNote(channel,Note,velocity)
MidiOutMessage(hMidiOut, $90, channel, Note , velocity)
EndProcedure
Procedure StopNote(channel,Note)
MidiOutMessage(hMidiOut, $90, channel, Note , 0)
EndProcedure
midi.MIDIOUTCAPS
devices = midiOutGetNumDevs_()
For devnum=-1 To devices-1
If midiOutGetDevCaps_(devnum,@midi,SizeOf(MIDIOUTCAPS))=0
If midi\wVoices >0
midiport=devnum
EndIf
EndIf
Next
*hMidiOut.l
If midiOutOpen_(@hMidiOut,midiport,0,0,0) = #MMSYSERR_NOERROR
; set acoustic steel guitar as instrument
SetInstrument(#Channel1,#Acoustic_Steel_Guitar)
SetInstrument(#Channel2,#Acoustic_Steel_Guitar)
SetInstrument(#Channel3,#Acoustic_Steel_Guitar)
SetInstrument(#Channel4,#Acoustic_Steel_Guitar)
For cnt = 1 To 5
; normal sound
PlayNote(#Channel1,$2D,63)
PlayNote(#Channel2,$39,63)
PlayNote(#Channel3,$3C,63)
PlayNote(#Channel4,$40,63)
Delay (2000)
StopNote(#Channel1,$2D)
StopNote(#Channel2,$39)
StopNote(#Channel3,$3C)
StopNote(#Channel3,$40)
; this must be a staccato sound
PlayNote(#Channel1,$39,100)
PlayNote(#Channel2,$3C,100)
PlayNote(#Channel3,$40,100)
Delay (300)
StopNote(#Channel1,$39)
StopNote(#Channel2,$3C)
StopNote(#Channel3,$40)
Delay (200)
; this must be a muted sound
PlayNote(#Channel1,$2D,80)
PlayNote(#Channel2,$30,80)
PlayNote(#Channel3,$34,80)
Delay (300)
StopNote(#Channel1,$2D)
StopNote(#Channel2,$30)
StopNote(#Channel3,$34 )
Delay (285)
Next
; end: reset instruments to 0 (default)
SetInstrument(#Channel1,0)
SetInstrument(#Channel2,0)
SetInstrument(#Channel3,0)
SetInstrument(#Channel4,0)
; end: close MIDI output
midiOutClose_(hMidiOut)
EndIf
End
; ExecutableFormat=Windows
; EOF
Merci, Dobro
Ca pourra servir pour que MonPiano joue AUSSI avec un instrument Midi. Mais je garde ça pour une prochaine version, sinon je n'aurais jamais fini celle là !.

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 ne crois pas que ces exemples puissent aider pour ça. Sauf erreur, les instructions utilisées ici permettent d'envoyer un fichier midi complet vers le synthétiseur de la carte son, mais elles ne permettent pas d'ouvrir le ventre de ce fichier pour examiner son contenu. Et elles ne permettent pas de créer un fichier midi. C'est un peu comme l'instruction "PlaySound" qui te permet d'envoyer un fichier vers la carte son mais qui ne te permet pas de regarder à l'intérieur de ce fichier pour voir ce qu'il y a. J'ai le même problème avec les fichiers MP3 : facile de les envoyer vers la carte son, mais impossible de les décoder !
J'ai écrit un décodeur de fichier midi qui permet de regarder à l'intérieur du fichier.
http://purebasic.hmt-forum.com/viewtopi ... highlight=
MonPiano est déjà capable de lire des partitions Midi grâce à ça. Il me reste encore à écrire la partie qui va enregistrer au format Mdi ce que l'on a joué dans MonPiano.
J'ai écrit un décodeur de fichier midi qui permet de regarder à l'intérieur du fichier.
http://purebasic.hmt-forum.com/viewtopi ... highlight=
MonPiano est déjà capable de lire des partitions Midi grâce à ça. Il me reste encore à écrire la partie qui va enregistrer au format Mdi ce que l'on a joué dans MonPiano.
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 sais que le projet n'avance pas beaucoup mais je voulais tout de même laisser un petit merci en bonne et due forme... c'est grace à sound editor que j'ai pu comprendre le format wave...
http://purebasic.hmt-forum.com/viewtopic.php?t=3123
Dri
http://purebasic.hmt-forum.com/viewtopic.php?t=3123
Dri
