Zurück   Flashforum > Flash > ActionScript > Softwarearchitektur und Entwurfsmuster

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01-02-2006, 19:43   #1 (permalink)
Ize
Noob
 
Registriert seit: May 2005
Beiträge: 20
samplebasierte sprachsynthese?

ich hab mir gedacht das müsste doch eigentlich mit flash gehen...
mal bisschen rumgefummelt aber ich häng irgendwie

hier ne billige demo:
http://ize.badne.ws/SoundQue.swf

wenn man sich anstrengt kann man "hey, no, yes" raushören *G*

naja...meine samples sind warscheinlich auch eher suboptimal gecutted aber egal

hier ist meine fla mit den source wave dateien und gecutted in einzelne laute:
http://ize.badne.ws/SoundQue.rar

würd mich freuen wenn jemand interesse daran zeigt da ich denke dass das ne ganz lustige sache werden könnte mit ein bisschen arbeit
Ize ist offline   Mit Zitat antworten
Alt 01-02-2006, 23:32   #2 (permalink)
Neuer User
 
Registriert seit: Feb 2006
Ort: undefined
Beiträge: 70
Der hat doch mal ne Hackstock-Sprache

Ich denke, ein guter Cut der Samples vorausgesetzt, wäre da was zu reißen.
Hab mir jetzt dein File nicht angeschaut. Generell sollte,um solche Sample-Synchronisierungsfehler zu vermeiden, ein Sync Workaround eingestzt werden. Solcher findet sich eigentlich in sämtlichen Flash-Sequenzern.
Da geht es um den internen SampleBuffer, der aus seiner Natur heraus eine
Verzögerung von bis zu 46 ms des onSoundComplete() nach sample Ende bewirkt.
André hat dazu in seinem Audiopackage eine schöne Implementierung.

Ferner sollte man vielleicht schauen, welche Intonierung sich an welche vorangegangen Elemente anschließt. Das heißt adäquates Sample auswählen, wenn gewisse Bedingung wie Fragesatz? , Satzende? Wievieltes Wort z.B. in einerAdjektiv-Kette ?( typisches Stimmanschwellen) usw usw ...

Ich denke, da kann nach eingehender phonetischer Analyse ein halbwegs brauchbarer Algorithmus entwickelt werden.
_sevenDust ist offline   Mit Zitat antworten
Alt 02-02-2006, 11:59   #3 (permalink)
[+]
 
Benutzerbild von André Michelle
 
Registriert seit: Dec 2002
Ort: cologne
Beiträge: 2.273
Das wollte ich auch schon immer mal austesten. Ich denke auch, dass es mit dem Sync Workaround möglich ist. Meiner im Audiopackage wird da nicht viel helfen, da es kein Rap werden soll :)

Prinzipiell braucht man 'nur' die ganz Palette phonetischer Laute als Sätze verschiedener Tonalitäten mit der jeweiligen Samplelänge. Ich dachte dabei vielleicht ein Hörspiel mit einem monotonen Sprecher zu missbrauchen.

Schwierig wird dann die Interpretation von normalen Sätzen. Ich denke, das lässt sich erst mit einer AS3 Umsetzung performant lösen.
__________________
aM

blog | laboratory | tonfall | processing

Audiotool.com
André Michelle ist offline   Mit Zitat antworten
Alt 02-02-2006, 12:23   #4 (permalink)
Ize
Noob
 
Registriert seit: May 2005
Beiträge: 20
so...ich hab nochmal bisschen im www gewühlt und nu hab ich das:

http://ize.badne.ws/SoundQue3.swf

ist doch schonmal ganz nett
ich bräuchte nur noch sowas wie ein mini lexikon woraus es sich die passenden laute raussucht z.b. für w(oo)t, y(ou) usw.

hier die fla:
http://ize.badne.ws/SoundQue3.fla
Ize ist offline   Mit Zitat antworten
Alt 02-02-2006, 13:32   #5 (permalink)
[+]
 
Benutzerbild von André Michelle
 
Registriert seit: Dec 2002
Ort: cologne
Beiträge: 2.273
Geht doch :)

Wenn du jetzt den Sync Workaround einsetzt, gibt es keine Lücken mehr zwischen den Lauten.
__________________
aM

blog | laboratory | tonfall | processing

Audiotool.com
André Michelle ist offline   Mit Zitat antworten
Alt 02-02-2006, 13:54   #6 (permalink)
Ize
Noob
 
Registriert seit: May 2005
Beiträge: 20
hmm wie geht denn der workaround?
bzw. wo find ich infos drüber? *G*
Ize ist offline   Mit Zitat antworten
Alt 02-02-2006, 14:16   #7 (permalink)
[+]
 
Benutzerbild von André Michelle
 
Registriert seit: Dec 2002
Ort: cologne
Beiträge: 2.273
http://www.active-web.cc/html/resear...ync/f6sync.txt
__________________
aM

blog | laboratory | tonfall | processing

Audiotool.com
André Michelle ist offline   Mit Zitat antworten
Alt 02-02-2006, 14:31   #8 (permalink)
Banned
 
Benutzerbild von _level0
 
Registriert seit: Jan 2006
Beiträge: 849
als ich damals noch meinen 8 bit rechner hatte, gabs ne sprachengine die sich sam nannte, geschrieben in ASC steuerbar über BASIC.

problem bei der geshcichte war immer das deutsche laute sich anders anhörten wie die englichen, also legte ich eine art profil an bzw. mehrere

aus einem sch machte ich im deutschen profil ein sh und so weiter, dan gings mit der verständlichkeit.

übrigens sam konnte auch die sätze betonen, er hatte sozusagen 3-4 tonlagen der selben stimme, er hatte

a) eine routiene die das ende der sätze betonte
b) parameter gesteuert war auch möglich und
c) immer dann automatisch wenn man 4 mal pder öfter den selben buchstaben verwendete.
_level0 ist offline   Mit Zitat antworten
Alt 02-02-2006, 18:26   #9 (permalink)
Ize
Noob
 
Registriert seit: May 2005
Beiträge: 20
hmm danke für die antwort andre, aber dafür bin ich zu blöd
Ize ist offline   Mit Zitat antworten
Alt 02-02-2006, 18:38   #10 (permalink)
Neuer User
 
Registriert seit: Feb 2006
Ort: undefined
Beiträge: 70
Vielleicht lassen sich ja ein paar Ideen zusammentragen, die in einen
evtl. Algorithmus einfließen könnten. Könnte ich mir sehr spannend vorstellen, welche Probleme und deren Lösung sich dabie ergeben.
_sevenDust ist offline   Mit Zitat antworten
Alt 03-02-2006, 10:24   #11 (permalink)
[+]
 
Benutzerbild von André Michelle
 
Registriert seit: Dec 2002
Ort: cologne
Beiträge: 2.273
Ich habe den Workaround umgesetzt und das Ergebnis ist schon verständlich :)

speak!

Die Ausgabe ist millisekunden-genau, was völlig ausreicht. Mit dabei ist ein Wavfile ("silence47.wav"), was immer vor jede Wellenform kopiert werden muss, damit der Workaround arbeiten kann. Das SyncFile habe ich auf 46ms gesetzt. Dann könnte es auch auf dem MAC funktionieren.

Jetzt kommt die eigentliche Arbeit. Das Zusammenpuzzeln von Lauten. Im Wikipedia gibt es Links zu Online-Sprechern. Ich habe von dort auch die ersten Laute. Mir ist aber aufgefallen, dass unserer Sprache komplexer ist, als ich dachte. Oft werden schon nachfolgende Buchstaben zur Bildung von Lauten hinzugezogen.
__________________
aM

blog | laboratory | tonfall | processing

Audiotool.com
André Michelle ist offline   Mit Zitat antworten
Alt 03-02-2006, 12:43   #12 (permalink)
Ize
Noob
 
Registriert seit: May 2005
Beiträge: 20
alter schwede...1000x besser als mein versuch...
aber ich wär dafür das erstmal in englisch zu versuchen da die sprache weniger komplex ist als unser deutsch mit seinen ganzen regeln

ich werd mir das jetzt mal alles genau ansehen und versuchen damit was hinzubekommen... ich blick immer noch nicht SOOO durch actionscript durch aber... learning by doing

nochmal danke für das super beispiel


EDIT:
naja aber so ganz richtig ist das nicht in deinem beispiel hast du die sample nicht nicht in ihre bestandteile zerlegt(allophones) also das man daraus auch richtige andere wörter bilden könnte sondern nur in einzelne teile zerhackt:
ver
s
tänd
li
ch

naja ich probier mal weiter

Geändert von Ize (03-02-2006 um 12:47 Uhr)
Ize ist offline   Mit Zitat antworten
Alt 03-02-2006, 14:13   #13 (permalink)
[+]
 
Benutzerbild von André Michelle
 
Registriert seit: Dec 2002
Ort: cologne
Beiträge: 2.273
Ich habe in Wavelab versucht, die einzelnen Laute zu schneiden, aber das ist extrem schwierig. Der Code sorgt nur dafür, dass die Samples ohne Übergang abgespielt werden.

Versuch mal bei einem gesprochenden 'li' das 'l' zu extrahieren. Bei einem der Links konnte man eine Sprachapplikation runterladen. Für eine Sprecherin waren das 40MB an Soundmaterial. Das kommt mir übertrieben vor, aber wahrscheinlich muss man auch Lautkombinationen bereitstellen, wenn es sauber klingen soll.
__________________
aM

blog | laboratory | tonfall | processing

Audiotool.com
André Michelle ist offline   Mit Zitat antworten
Alt 03-02-2006, 14:48   #14 (permalink)
Neuer User
 
Registriert seit: Feb 2006
Ort: undefined
Beiträge: 70
@andré:

sehr cool das mit der SeamlessSequence. Das stellt einen guten Grundstein dar.

Nun ist die Frage, wieviele phonetischen samples man braucht, um theoretisch jeden Text (in guter Qualität) ausgeben kann.

Mit Ideen zusammentragen meinte ich ja Ideen über phonetische Gesetzmäßigkeiten, die es Erlauben auf der einen Seite einen schlanken und kompletten sample pool zu schaffen und auf der anderen einen halbwegs guten Algorithmus darauf abzubilden.

Einfach ein phonetisches Alphabet abzubilden, einen String anhand seiner Characters zu slicen und die entsprechenden char-samples abzuspielen, kanns ja wohl nicht sein.


Ich seh mal, dass ich auch noch was dazu finde.
_sevenDust ist offline   Mit Zitat antworten
Alt 03-02-2006, 14:57   #15 (permalink)
Neuer User
 
Registriert seit: Feb 2006
Ort: undefined
Beiträge: 70
ach und andré, stellst du eigentlich dein popforge.sound -package zur Verfügung bzw.
ist das dasselbe wie org.audiopackage.sound.* ???
_sevenDust ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 13:05 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2014 Marc Thiele