Petit synthétiseur vocal

Sujets variés concernant le développement en PureBasic
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Petit synthétiseur vocal

Message par Kwai chang caine »

Bonjour

Ayant eu besoin de "faire causer" une de mes applis, j'ai utilisé un des synthétiseur vocal en ligne disponible sur le net
En effet, n'ayant ni le courage, ni l'envie d'installer les diverses voix SAPI qui existent.
En fait bien que géniales, je trouve le système un peu compliqué, mais surtout je n'aime pas le fait qu'il ne soit pas portable. :(

Alors m'ai venu une idée, pourquoi ne pas essayer de créer un petit synthétiseur vocal perso, sans prétention, permettant au fur et à mesure de pouvoir ajouter ou retirer des mots dont on aurait besoin ou non.

Je me suis dit, que principalement, la langue française est constitué de syllabes, et que moyennant une bidouille on doit pouvoir faire des mots en les mettant bout à bout :D

J'ai fait un essai rapide, pour voir si PlaySound() pourrait réagir assez rapidement, et pour un début de quelques minutes, je trouve ça pas trop mauvais ...
Bien sur ça cause comme les PC des années 70 ..Mais parfois ça suffit dans un giciel pour que le PC se fasse comprendre, et c'est tout ce que pour l'instant je désire.
Faire du tout simple sans installation et qui marche partout :D

Code : Tout sélectionner

Delai = 340

InitSound()
LoadSound(0,"Bon.wav")
LoadSound(1,"Jour.wav")
LoadSound(2,"Je.wav")
LoadSound(3,"Ma.wav")
LoadSound(4,"Pet.wav")
LoadSound(5,"Leu.wav")
LoadSound(6,"K.wav")
LoadSound(7,"C.wav")

For i = 0 To 7
 PlaySound(i ,#PB_Sound_MultiChannel)
 Delay(Delai)
Next

PlaySound(7 ,#PB_Sound_MultiChannel)
Delay(Delai)
http://erdsjb.free.fr/PureStorage/Provi ... Vocale.zip

Bien sur il faudrait ajouter une tempo différente pour chaque syllabe, et aussi un nombre de répétition comme dans le cas de "KCC" qui éviterait d’écrire deux fois le "C", et peut être aussi d'autres fonction comme les blancs, ou autres joyêuseries qui viendrait au fur et à mesure de la découverte de notre chère langue :mrgreen:
Gérer peut être ça avec une MAP....ou autre ....
Ne charger en mémoire que les WAV utilisés...ou bien les charger et décharger au fur et à mesure...(Pas fait d'essais)

J'ai donc après avoir fait les essais, recherché un lexique syllabaire de la langue française, et c'est la que je suis tombé sur mon séant, en m’apercevant que cela n'existe pas ou presque, car je ne suis pas le seul a chercher ça apparemment
Je suis tombé sur ça, mais y'a de la phonétique et sincèrement certaines syllabes ne me causent même pas 8O :
http://www.lexique.org/listes/liste_syllabes.txt

Alors ça commence bien, même la liste il faudrait se la créer à la mano :cry:
J'ai vu aussi un code delphi qui arrivaient à séparer les syllabes...mais bon ...

J'avais eu l'idée de faire lire la liste des syllabes enregistrer, puis essayer de créer un code qui découperait les extraits en mini WAV comme ans mon exemple.
Etant donné que l'on connait l'ordre des Syllabes dictées, il serait alors facile de renommer les WAV, même si il en a plusieurs centaines.

J'ai du mal à me rendre compte combien de syllabes j'aurais besoin pour parler un "petit negre" de base, et combien ferait le dossier DATA wav final...
Est ce que ce serait jouable ????
Faut il plusieurs générations pour créer tout ça ??

Je voulais juste partager avec vous mes questions, et voir si des fois certains de vous auraient un autre idée plus simple

Bonne journée
Dernière modification par Kwai chang caine le lun. 21/mai/2012 14:34, modifié 1 fois.
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Petit synthétiseur vocal

Message par Ar-S »

Ce lien me parait pas mal explicite : http://virga.org/cvf/alphabet.php
Dernière modification par Ar-S le lun. 21/mai/2012 14:42, modifié 1 fois.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Petit synthétiseur vocal

Message par Kwai chang caine »

Merci ARS.
Oui j'en ai trouvé des liens avec noir de formules incompréhensibles et même avec des formules mathématiques a faire pâlir HuitBit et Kelimbabree réunis 8O

Chouf moi celui la de lien :mrgreen:
http://www.shokhirev.com/nikolai/abc/alg/hmm/hmm.html

Mais pas de liste de syllabes, hors mis celle mise au dessus, et encore moins de fichiers WAV dispo..faut pas rêver :lol:
Il parait qu'une grand-mère de 95 ans ou un truc comme ça s'est amusée a recenser toutes les syllabes du français...mais elle veut pas partager son travail, elle garde ça sur ces vieux morceaux de papiers :lol:
Remarque c'est son droit, c'est apparemment un bouleau de dingue.

Mais je ne pense pas qu'il soit nécessaire de répertorier TOUTES les syllabes, un certain grand nombre devrait suffire, surtout pour ce qu'aurait à te raconter un PC , c'est quand même pas du molière :lol:
Dernière modification par Kwai chang caine le lun. 21/mai/2012 14:46, modifié 1 fois.
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Petit synthétiseur vocal

Message par Ar-S »

Les wav sont dispos sur ce lien (les petits 'tambours' à droite).
Au moins tu seras à quoi correspond tel symbole, que le a postérieur ou vélaire est le â de tâche ou que le e féminin central, non labialisé est le e de le...

J'avais jamais entendu Vélaire :D
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Petit synthétiseur vocal

Message par Kwai chang caine »

Excuse moi j'avais pas vu les tambours :oops:

En fait, c'est pas vraiment les syllabes, j'ai téléchargé AGNEAU et c'est le mot que le "mossieu" y dit :D
Je venais de penser, je pourrais aussi, installer une SAPI, une fois trouvé ou crée la liste des syllabes, avec du code lui faire toutes dire, et les enregistrer par un moyen quelconque...peut être même directement en WAV....pourquoi ne pas rêver :lol:
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
graph100
Messages : 1318
Inscription : sam. 21/mai/2005 17:50

Re: Petit synthétiseur vocal

Message par graph100 »

tu dois pouvoir réécrire un texte en phonétique, et à partir de la déterminé quel son jouer.
Bien sur il faut jouer le son avec la longueur qu'il faut.
Une map pour les son me parait l'idéal.

De mon coté, l'idée m'a effleuré de commencer un tel projet (et j'ai commencé à faire comme toi ^^ avec plein de wav moisi que j'ai enregirstré xD)
mais je me suis orienté vers une autre dimension : le transcodage d'un son comme "a" en un spectre caractéristique, dans l'espoir de pouvoir le décliner avec des voix possédant différentes intonations et tons (féminin, masculins, surprise etc...)
malheureusement je n'ai pas eu le temps ni vraiment la motivation d'aller plus loin que le rassemblement des codes nécessaires pour utiliser le micro, écrire un wav, lire un wav et l'analyser.

je peux te filer ces bouts de code si tu le désires ^^
_________________________________________________
Mon site : CeriseCode (Attention Chantier perpétuel ;))
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Petit synthétiseur vocal

Message par Backup »

Kwai chang caine a écrit :Alors m'ai venu une idée, pourquoi ne pas essayer de créer un petit synthétiseur vocal perso, sans prétention, permettant au fur et à mesure de pouvoir ajouter ou retirer des mots dont on aurait besoin ou non.

Je me suis dit, que principalement, la langue française est constitué de syllabes, et que moyennant une bidouille on doit pouvoir faire des mots en les mettant bout à bout :D

le mec , fait comme si il n'avait jamais lu cette idée sur notre Forum ! j'hallucine :roll:


Nono en DLL avec un petit Editeur dédié , téléchargeable ici :
http://michel.dobro.free.fr/download.php?view.38

nono c'est tres exactement ce principe , qui pour ma part m'est venu du jeux Maupiti Island , et du composant SPO 256
composant a la base d'une bidouilles de Synthese Vocal sur ATARI ( au moins je site mes sources ... MOA )

pour la petite histoire j'ai commencé ce Synthe vocal a l’époque du Dark BASIC 1er Version ;)
certains qui fréquentaient le Forum du Dark , s'en souviennent peut etre :)


l'archive ci dessus , contient ma DLL ,et un petit Traitement de texte qui exploite NONO
la DLL reçoit les Phrases en "clair"

Nono est muni d'un analyseur syntaxique assez puissant ;)
et accessoirement d'une tete :lol: (tete qui au passage m'a surement été piqué par un mec en tee shirt vert dans une pub )
Image

bien séparer les ensemble de mots avec une virgule , la virgule impose une pause
genre "il etait une bergère, et ri, et ron, petit patapon."

bien sur du point de vue auditif , sortira mieux sous la forme :
il etait t'une beregère, et ri, et ron, petit patapon."

l'analyseur a ses limites :)

le sujet, sur notre forum , se trouve en autre ici :
http://www.purebasic.fr/french/viewtopi ... hilit=nono

voila voila :)

note que je t'encourage a continuer .. c'est juste ta présentation qui ... m'a fait réagir ..;)
Dernière modification par Backup le mar. 22/mai/2012 8:28, modifié 1 fois.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Petit synthétiseur vocal

Message par G-Rom »

pour la petite histoire j'ai commencé ce Synthe vocal a l’époque du Dark BASIC 1er Version
certains qui fréquentaient le Forum du Dark , s'en souviennent peut etre
c'est ce que j'allais te dire, quand j'ai commencer la prog , j'avais vu ton syntétiseur , je me suis dit , ce mec est un dieu ( à la kcc :D )
en fait , t'es qu'une biquette :mrgreen: ( ca t'appendra à didire quequeque je baigaigaile... ( j'attends ta réponse d'ailleurs ) )

==>[]
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Petit synthétiseur vocal

Message par Backup »

G-Rom a écrit : ( j'attends ta réponse d'ailleurs ) )
répondu ! :)
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Petit synthétiseur vocal

Message par Kwai chang caine »

@GRAPH100
Merci, apparement j'suis pas le seul à avoir eu cette idée :lol:
Pour l'histoire du transcodage....j'ai bien peur que ça me dépasse.
Par contre j'ai vu un code de danilo, qui permet d'accelerer et ralentir les sons avec les touches pour les jeux de voitures, faire "Vrooom vroom" (Imiter l'acceleration)
Donc on doit pouvoir demander de descendre ou monter d'un ton pour faire plusieurs femmes ou homme, le probleme c'est que surement ça va changer la vitesse de lecture...

En tout cas merci de ta réponse 8)
le mec , fait comme si il n'avait jamais lu cette idée sur notre Forum ! j'hallucine
Bah le mec, il l'a peut etre vu et encore il en ai pas sur....et si il l'avait vu il s'en rappellait plus :oops:

Et puis comme le mec s'efforce d'oublier un autre mec a qui il doit faire des vacances, le mec....et bah la premiere pensée du mec...est pas de reflechir en se disant, est ce que le mec que le mec ne citera pas, car il a juré craché, et qu'il a qu'une parole, il aurait pas pensé à la meme chose que lui le mec....

Image

En tout cas, ce que tu as fait, est exactement ce que j'avais pensé faire, c'est donc que c'est pas si con, ce que je disait :mrgreen:
Apparement tu as intégré les wav, enfin je pense car à un moment tu dit que ta DLL sera trop grande et qu'il faut que tu comprimes les sons...

En fin de compte si tu es arrivé à le faire, on se demande pourquoi les autres mecs ...(SAPI) ils sont pas parti sur la même idée, car apres tout que ce soit portable c'est autrement plus genial, que de se taper l'installation qui en plus est pas si simple :?
Ou alors faire de la synthese vocale....mais en portable....

En tout cas malgré que cela ne vienne pas d'une bonne intention, merci pour le lien :wink:
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Petit synthétiseur vocal

Message par Backup »

ben le gros probleme de base en ce qui concerne l'utilisation de Morceau de Son ( on va appeler ça des Allophones,diphong , etc .. .. leur vrais nom )
c'est que ce systeme est sous Brevet !

donc, non commercialisable :?

ici le Brevet en question !
https://data.epo.org/publication-server ... patch=.pdf

Ce qui me gonfle c'est que leur Brevet a été déposé en 2006 , alors que mon Synthétiseur Vocale date de bien avant 2004 !
qu'ils ne viennent pas me gonfler ;)

de plus ce systeme existait deja du temps de l'atari ST , avec le Jeux Maupiti Island de Gerome Lange




le System des Apis n'est pas vraiment une difficulté a installer , c'est souvent qu'il faut installer une Voix
et celle-ci sont souvent payante !
Bah le mec, il l'a peut etre vu et encore il en ai pas sur....et si il l'avait vu il s'en rappellait plus :oops:
ben la preuve :
http://www.purebasic.fr/french/viewtopi ... k&start=30

je suis désolé d'etre incontournable en Purebasic :lol:

dans mes 11785 messages , je n'ai pas fais que me prendre la tete :wink:
Dernière modification par Backup le mar. 22/mai/2012 16:05, modifié 1 fois.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Petit synthétiseur vocal

Message par Backup »

ps : j'ai Reedité mon message ci dessus :)
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Petit synthétiseur vocal

Message par Kwai chang caine »

L'autre mec a écrit :ben la preuve :
Non je parlais de ton NONO, pas des SAPI.
Je sais bien que le reste je connaissais, j'en ai parlé dans mon premier POST :wink:
C'est super...mais j'y trouve lourd à utiliser :(
Le mec a écrit :Ayant eu besoin de "faire causer" une de mes applis, j'ai utilisé un des synthétiseur vocal en ligne disponible sur le net
En effet, n'ayant ni le courage, ni l'envie d'installer les diverses voix SAPI qui existent.
L'autre mec a écrit :ben le gros probleme de base en ce qui concerne l'utilisation de Morceau de Son ( on va appeler ça des Allophones .. leur vrais nom )
c'est que ce systeme est sous Brevet !
donc, non commercialisable
Par Allophones je pense que tu parles de ce que l'on trouve sur les sites qui permettent de faire comme NONO ???
Je viens de lire ta modif...et de ce que je comprends...t'as pas le droit d'utiliser ta propre voix ??? 8O

Car comme je l'ai dit, admettons que y'ai 500 syllabes....bon c'est vrai que faut avoir de bon copains...ou copines
Mais on ecrit ça sur une feuille, un micro ...un resto et hop la gonzesse on lui demande de jacqueter la liste sans s'arreter :D
Avec un espace court entre chaque syllabe.
Apres je pense que ce serait pas trop compliqué de détecter les blancs et couper le big fichier en petits morceaux, et connaissant l'ordre des syllabes, facile de les renommer
Comme ça on peut faire X Dll avec la voix des potes et potesses, en voyant la tienne..je me dit que 16K c'est pas la mer à boire :D

En plus cool, je pense que ça plairait comme jeux, car apres tu peux faire dire à la personne ce qu'elle veut jamais te dire :lol:
Style "Tiens mon cheri....v'la 6000 balles pour t'acheter le dernier ultrabook dont tu reves" 8O

Ca pourrait même faire une animation pour un "Diner presque parfait" :lol:
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Petit synthétiseur vocal

Message par Backup »

Bah le mec, il l'a peut etre vu et encore il en ai pas sur....et si il l'avait vu il s'en rappellait plus :oops:
si si ! lis mieux

ben la preuve : (sur le meme lien )
Kwai chang caine a écrit :Bah, j'lai mis car peut etre que certains comme moi ne le connaissent pas :roll:

Petit a petit les PC y font tout :?

Le jour ou y'a un pelo qui me sort un giciel, qui fait la vaisselle ......et la bouffe....je quitte ma femme :lol:
Parce que pour le sexe, c'est bon maintenant, j'ai virtualgirlHD :D

Je reesaye ton petit NONO <<<-- preuve que tu le connaissais ;)
Par contre c'est loin et je ne me rappelle plus si c'etait a mon boulot ou chez moi :roll:
Je vais deja essayer chez "oime"
Kwai chang caine a écrit :Je viens de lire ta modif...et de ce que je comprends...t'as pas le droit d'utiliser ta propre voix ??? 8O
ben oui ! c'est pas le fait que ce soit TA voix , mais le Fait que tu utilises la concaténation de Morceaux de Son pour Générer une Synthese Vocale !

( mais moi je les Emmerde , mon Nono existait Avant leur Brevet :D (l'antériorité , fait , qu'il ne peuvent pas m’empêcher de l'utiliser )

pour en revenir sur une Application X ou y , le plus simple c'est d'enregistrer la phrase complète
dans ce cas , ce sera plus fluide , plus cool a entendre , et surtout moins Gros a contenir ! ;)

un Synthetiseur Vocale, c'est surtout utile lorsqu'on a vraiment beaucoup de chose a dire (Straits)
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Petit synthétiseur vocal

Message par G-Rom »

mais le Fait que tu utilises la concaténation de Morceaux de Son pour Générer une Synthese Vocale !
C'est facilement contournable , tu utilises 1 seul fichier qui contient tout les phonèmes , tu seek dedans , et hop , tu met une quenelle au brevet :mrgreen:
c'est con la loi... mais c'est comme ça ;)
Répondre