PureBasic

Forums PureBasic
Nous sommes le Jeu 20/Juin/2013 7:50

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 154 messages ]  Aller à la page Précédente  1 ... 6, 7, 8, 9, 10, 11  Suivante
Auteur Message
 Sujet du message: Re: Bonjour
MessagePosté: Dim 16/Avr/2006 22:17 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
meganet a écrit:
Bonjour,
vue que dans la v4 il n'y à rien de plus, pourquoi tu n'utilise pas la dll FMOD?
Emplus elle est multi pladeforme.
Et après pas mal de temps, j'utilise cette dll sans lib et sans problème!
Donc franchement, elle dispose de tout ce qu'il te faut pour nono.
BN @+++.


au debut Nono utilisait Cette Dll....

mais probleme elle n'est pas libre !! j'ai pas envie d'avoir a payer une licence
pour que mon soft genere du son, alors que le PureBasic peut le faire ...!!
si un jour... je voulais le commercialiser ... (on peut rever non ? :D)
bref ! je me sentais les mains Lié avec cette Dll , (bien que je la trouve super :D )

voila c'est tout bete hein ? :d

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Jeu 12/Mar/2009 0:30 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
retour de Nono :) Nono2009

seulement en librairie purebasic !!

a installer dans votre dossier de librairies de pureBasic

a telecharger ici : http://michel.dobro.free.fr/download.php?view.24

ps :Nono n'est plus bridé dans le temps ;)


l'avantage de Nono c'est qu'il n'est point besoin de récupérer une voix sur internet, ou un quelconque moteur de synthèse vocal , pour qu'il parle Nono contient tout !! :)

de plus vu qu'il est en librairie , il est facilement intégrable dans vos programme , sans ajout de quelque dll ou fichier que ce soit ! :)

inconvénient :
vos programme pèseront 4 Mega de plus .... c'est le poid de Nono

et aussi , c'est pas de la synthese pro, mais bon je fais ça tout seul,
j'ai vu sur internet, que la concurence, c'etait .... des universités, et des centres de recherche !! .... :lol: , bon toute proportion gardée, dites moi ce que vous en pensez ...
je prépare une future version, qui devrai etre pas mal .. :)
je travaille surtout sur la fluidité, avant d'attaquer les problemes de dictions éventuel de certains mots

exemple d'appel :
Code:
; nono(A$, B, C )
; A$: phrase_a_dire$
; B: panoramique de : 0=gauche a 200=droite : 100=Centre
; C: si 0=affiche la tete , si 1=n'affiche pas la tete (moins de temps machine pris)

; exemple :
phrase.s="coucou, je m'appelle Nono , et je suis enchanté de pouvoir vous parler "
nono(phrase.s,100,1)

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Jeu 12/Mar/2009 8:40 
Hors ligne

Inscription: Sam 23/Fév/2008 17:58
Messages: 204
Sur nono2009 j'ai une erreur:
"le fichier Tampon ne peut être ouvert (nonoparle)
prévenir Dobro en donnant le mot" ??
Code:
; exemple d'appel

; nono(A$, B, C )
; A$: phrase_a_dire$
; B: panoramique de : 0=gauche a 200=droite : 100=Centre
; C: si 0=affiche la tete , si 1=n'affiche pas la tete (moins de temps machine pris)

; exemple :
phrase.s = "coucou, je m'appel Nono , et je suis enchanté de pouvoir vous parler "
nono(phrase.s, 100, 1)

Dans tous le cas Merci et Bravo Dobro pour Speak
Je n'ai pas trouvé la source de nono parcontre j'ai celui de Speak
Voici un exemple avec choix de la personne et
variation sur Volume et Vitesse de Speak
Code:
voix$ = getvoix()  ; on recupere le nombre et le nom des voix installé
; getvoix() retourne une chaine "nbr_de_voix,voix1$,voix2$,voix3$........ etc "
Dim t_v.s(10)
Debug voix$
nombre.i = Val(StringField(voix$, 1, ",")) ; recupere le nombre de voix installé (premier element de la chaine)
voix$ = Right(voix$, Len(voix$)-2) ; on retire le nombre de voix, et sa virgule de la liste des noms de voix
vi$ = ""
Speak(vo$, "Bonjour, comment allez vous ?", 100, -5) ; Speak2 (Text$,Volume,vitesse de diction)
t_v(0) = Str(nombre)
;**************************************************************************************************************************
If OpenWindow(0, 0, 0, 300, 100, "ComboBoxGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  ComboBoxGadget(0, 10, 10, 290, 20, #PB_ComboBox_Editable)
EndIf

;**************************************************************************************************************************
For i = 1 To nombre ;
  Debug StringField(voix$, i, ",") ; ressort tout les noms des voix installées
  t_v(i) = StringField(voix$, i, ",")
  AddGadgetItem(0, -1, t_v(i))
 
Next i
mgg$ = gg$
Repeat
  gg$ = GetGadgetText(0)
Until (WaitWindowEvent() = #PB_Event_CloseWindow) And gg$<>mgg$

Debug gg$

#stpx = 20
For vol.i = -100 To 100 Step #stpx
  For vit.i = -100 To 100 Step #stpx
    chx.i = Abs(vol*vit)
    ch.i = (chx%(nombre))
    If ch = 0 : ch + 1 : EndIf
    vo$ = t_v(ch) ; ou l'on donne directe le nom de virginie
    text$ = "Bonjour " + t_v(ch) + " , Volume , " + Str(Vol) + " , vitesse , " + Str(vit)
    ;Debug formn(ch) + " " + forms(gg$) + " , " + forms(text$)
    Speak(gg$, text$, Vol, vit) ; Speak2 (voix$,Text$,Volume,vitesse de diction)
   
    ;     Debug formn(ch) + " " + forms(vo$) + " , " + forms(text$)
    ;     Speak(vo$, text$, Vol, vit) ; Speak2 (voix$,Text$,Volume,vitesse de diction)
   
  Next
Next


A+ et encore Merci


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Jeu 12/Mar/2009 9:51 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
merci pour ton retour :)

quelqu'un d'autre a ce probleme ?

bon je vais prendre mon temps pour regarder ça ! ..

c'est quand meme curieux qu'un prg pure basic puisse tourner sur certaines
machines , et pas dautres !! :?


Merci encore pour ton retour d'infos :) et ton exemple

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Jeu 12/Mar/2009 11:00 
Hors ligne
Avatar de l’utilisateur

Inscription: Sam 23/Sep/2006 18:32
Messages: 4468
Localisation: Isere
Bon bah comme dab, pour moi jamais rien ne marche :?
J'ai fait "tout ça que tu m'as dit"

J'ai posé le nono dans son ecrin
"PureBasic\v4.30\PureLibraries\UserLibraries"
Et y m'a pas dit un mot :cry:

Peut etre il aime pas W2000 ou la v4.30 :roll:


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Jeu 12/Mar/2009 13:15 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
Kwai chang caine a écrit:

Peut etre il aime pas W2000 ou la v4.30 :roll:


si je met en téléchargement une lib,
c'est qu'elle tourne chez moi en 4.30 !! c'est un minimum :)
je suis passé définitivement en v4.30 depuis l'officiel

il n'y a aucune raison que cela ne fonctionne pas sous 2000 , je n'utilise pas d'Api !!

mais par contre, je sais qu'en mode debug lorsque je test ma lib_source
(avant de faire la lib donc... en mode procedure, si tu veux ,)
que j'ai un bug sur la fonction FileSeek () qui refuse un parametre negatif !!

ce qui n'etais pas le cas avant !!

bref, apparemment on ne peux plus demander a la tete de lecture de reculer !! (message d'erreur qui le precise"pas de chiffre negatif")

je vais vérifier ce point en detail , pour mettre en exergue un bug éventuel de purebasic !!

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 1:31 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
bon apres ce faux depart revoici ma lib

elle a un peu grossi 13 mega hum !!

http://michel.dobro.free.fr/download.php?view.24

j'ai du faire marche arriere sur le procedé employé, mais finalement je ne regrette pas, la diction est carrement mieux maintenant !! :)
et plus de fichier tampon ecris sur le disque, du coup plus de bug ! :D

pour ceux qui auront le courage de la telecharger et de la tester :)

j'aimerai bien que fred puisse mettre le mp3 sur la commande sound() !

parce que jongler avec movie() qui n'a rien a voir niveau syntaxe avec sound() c'est pas évident :)

qu'il ne parle pas de droit etc... si l'on peut lire le mp3 avec movie() pourquoi pas avec sound ? 8O


j'ai essayé aussi avec les ogg , mais alors c'est lent a charger les ogg !!

bref , je suis reveu au wav , c'est pourquoi la lib fait 13 Mo

lorsque purebasic saura gerer mieux le son , j'arrangerai a ce moment la :)

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 2:20 
Hors ligne
Avatar de l’utilisateur

Inscription: Jeu 29/Juil/2004 16:33
Messages: 2123
Localisation: . <------ ici
ouahhhhh c'est méga génial ta lib Dobro bravo :wink:

bon la voix est un peut robotique mais le résultat est super cool.





@++

_________________
Windows 8 x64, processeur core i7 2.93ghz, mémoire ram 10Go, 2x ati radeon hd 5750 1Go chacune
PureBasic 5.11 x86 & x64 DirectX 11


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 7:23 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
merci :)

si toutefois ,il avait du mal a dire un mot , n'hésite pas a me dire lequel
j'arrangerai ça,dans une futur version :)

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 11:27 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
pour info Nono2009 c'est

c'est 38233 lignes de codes !!!

1506 sons (phonèmes) qui compose la voix

a lui seul l'analyseur syntaxique fait 20494 ligne de code !! :lol:

lorsque je charge la total dans japbe, c'est souvent qu'il plante !!
a cause de la taille ...

j'ai separé par "xinclude" l'analyseur du moteur de nono
pour etre serein avec l'éditeur Japbe
cependant, malgres cela, j'ai souvent un gros freeze de l'éditeur ;)

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 12:50 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 29/Juin/2007 17:50
Messages: 1901
@Dobro

Je court-circuite un tout petit peu (désolé). Je viens direct du tout premier post où tu parle d'une absence d'analyse grammaticale.

Voici un exemple de code gérant partiellement les accords dans un groupe nominal.

Le coeur du programme se trouve en fin de listing, après la ligne de commentaire "Test".

Il y a la datasection qui stocke les noms (un nom féminin, se voit rajouter le signe §)
Il y a la sélection du nom, puis l'affichage du GN en fonction de trois options : défini ou non, pluriel ou non, prépositionnel ou non

Code:
#Masc = 1
#Defini = 2
#Pluriel = 4
#Prep = 8 ; à

;Type Mot
#NomCommun = 8
#AdjQual = 16

Structure MotInfo
   Type.I
   Ctn.S
   Genre.I
   
   Attr.I
EndStructure

   Global NewList Mot.MotInfo()

Procedure.S DvpAlpha(Niveau)
   Protected Result.S
   Protected I.I
   Protected Niv.I
   For I = 1 To Len(Mot()\Ctn)
      If Mid(Mot()\Ctn, I, 1) = "["
         Niv + 1
         Goto StartAlpha
      EndIf
      If Mid(Mot()\Ctn, I, 1) = "]"
         Niv - 1
         Goto StartAlpha
      EndIf
      If Niv <= Niveau
         Result + Mid(Mot()\Ctn, I, 1)
      EndIf
StartAlpha:
   Next I
   ProcedureReturn Result
EndProcedure

Procedure.I VoyPreTest(Lettre.S)
   Protected Result.I
   Select LCase(Lettre)
      Case "a", "e", "i", "o", "u", "é", "è", "ê", "à", "â", "î", "û", "ô", "ù"
         Result = 1
   EndSelect
   ProcedureReturn Result
EndProcedure

Procedure.S Article()
   Protected Result.S
   Attr = Mot()\Attr
   If Attr & #Defini
      If Attr & #Pluriel
         If Attr & #Prep
            Result = "aux"
         Else
            Result = "les"
         EndIf
      Else
         If Attr & #Masc
            If Attr & #Prep
               Result = "au"
            Else
               Result = "le"
            EndIf
         Else
            If Attr & #Prep
               Result = "à la"
            Else
               Result = "la"
            EndIf
         EndIf
         If VoyPreTest(Left(Mot()\Ctn, 1) )
            If #Prep
               Result = "à l'"
            Else
               Result = "l'"
            EndIf
         EndIf
      EndIf
   Else
      If Attr & #Pluriel
         Result = "des"
      Else
         If Attr & #Masc
            Result = "un"
         Else
            Result = "une"
         EndIf
      EndIf
      If Attr & #Prep
         Result = "à " + Result
      EndIf
   EndIf
   If Right(Result, 1) <> "'"
      Result + " "
   EndIf
   ProcedureReturn Result
EndProcedure

Procedure.S Nom()
   Protected Result.S
   If Mot()\Attr & #Pluriel
      If Right(Mot()\Ctn, 2) = "au"
         Result = Mot()\Ctn + "x"
      Else
         Result = Mot()\Ctn + "s"
      EndIf
      If Right(Result, 3) = "als"
         Result = ReplaceString(Result, "als", "aux")
      EndIf
   Else
      Result = Mot()\Ctn
   EndIf
   ProcedureReturn Result
EndProcedure

Procedure.S GN(Nombre.I)
   Protected Result.S
      Mot()\Attr = Mot()\Genre | Nombre
      Result = Article() + Nom()
   ProcedureReturn Result
EndProcedure

   Repeat
      AddElement(Mot() )
      Read.S Mot.S
      If Left(Mot, 3) = "/!\"
         If Len(Mot) = 3
            Break
         EndIf
         Select Right(Mot, Len(Mot) - 3)
            Case "Nom"
               Type = #NomCommun
            Case "Adj"
               Type = #AdjQual
         EndSelect     
      EndIf
      Mot()\Type = Type
      If Right(Mot, 1) <> "§"
         Mot()\Genre = #Masc
      Else
         Mot = Left(Mot, Len(Mot) - 1)
      EndIf
      Mot()\Ctn = Mot
   ForEver

;- Test
   
DataSection
Data.S "/!\Nom"
Data.S "bateau", "cheval", "pont", "voile§"
Data.S "/!\"
EndDataSection

   SelectElement(Mot(), 2)
   Debug GN(#Pluriel|#Defini)

   SelectElement(Mot(), 1)
   Debug GN(#Pluriel|#Prep)

   SelectElement(Mot(), 4)
   Debug GN(0)



Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 13:21 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
Ollivier a écrit:
@Dobro

Je court-circuite un tout petit peu (désolé). Je viens direct du tout premier post où tu parle d'une absence d'analyse grammaticale.


8O tu court circuit un petit peu 8O

le premier post date d'octobre 2004 !!
un peu plus de 4 ans !! :lol:

depuis longtemps maintenant Nono est équipé d'un analyseur syntaxique
même que dans le post precedent , j'ai signalé qu'il faisait

20494 ligne de codes !! ;)


tu fait dire ce que tu veux a Nono , il est en principe capable de le dire

il lit donc grace a son analyseur syntaxique tout ce que tu as ,a lui faire dire !!

il faut qu'il tienne compte de tout !!

les chameaux , ou les chats mot

les tortues, ou le tords, tue !

etc !!!


les mange, venge, range, etc ...
il faut qu'il les interprete comme il faut !

cela va bien au dela de ton exemple :)

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 18:40 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
au fait j'ai oublié un petit bug dans nono , mais tant mieux :D

j'ai pas bridé la vitesse de diction a 50 comme je le croyais
parceque j'ai merdé le code , mais tant mieux parceque je me suis rendu compte que sur des pc plus lent que le miens genre un pc a 1,6 Ghz
50 c'est pas asséz , et ça fait parler nono avec une saccade vraiment importante ...

donc si vous avez un pc < a 2Ghz n'hesitez pas a mettre 70 a la lace de 50 :)

attention un chiffre trop grand empechera nono de parler :)

_________________
Image


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 18:49 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 09/Oct/2005 16:51
Messages: 5323
Dobro a écrit:
au fait j'ai oublié un petit bug dans nono , mais tant mieux :D

j'ai pas bridé la vitesse de diction a 50 comme je le croyais
parceque j'ai merdé le code , mais tant mieux parceque je me suis rendu compte que sur des pc plus lent que le miens genre un pc a 1,6 Ghz
50 c'est pas asséz , et ça fait parler nono avec une saccade vraiment importante ...

donc si vous avez un pc < a 2Ghz n'hesitez pas a mettre 70 a la lace de 50 :)

attention un chiffre trop grand empechera nono de parler :)


Le plus censé dans un programme que tu vas diffuser serait justement de calculer la vitesse de diction par rapport à la vitesse du proce. :)
J'ai pas encore testé ta lib mais je commenterai lorsque ce sera fait :)

_________________
.: Ar-S :. - Windows 8 x64 - Radeon HD 7870 - PB 5.11
LDV MULTIMEDIA : Assistance informatique Isère (38) Oyeu
PURE BASIC forum non officiel : Forum PB


Haut
 Profil  
 
 Sujet du message:
MessagePosté: Sam 14/Mar/2009 19:04 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
c'est vachement subjectif , ç'est vrais que ce serait bien de pourvoir le faire

mais voila, je crois qu'a moins de disposer de tout les type de proc, c'est infaisable !!
sur un proc type P4 a 1,6ghz cela peut paraitre lent
et super rapide que un proc core duo ou quatro cadencé a la meme vitesse :)

_________________
Image


Haut
 Profil  
 
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 154 messages ]  Aller à la page Précédente  1 ... 6, 7, 8, 9, 10, 11  Suivante

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye