I would say there are about 5 - 7 mouth shapes you could distribute
through your animation that would give the impression that the avatar
is saying the right words.
Plus if your animation is fluid (meaning it doesn't look like the
avatar is straining to say the words) it probably wont be noticeable
if it mouths the wrong word from time to time.
JAT
Karl
On Jun 4, 2010, at 12:25 PM, Eric E. Dolecki wrote:
I was able to match a single "a" - although even with a straight
"a" there
can be some subtle variation. So I mapped variations that come
close and I
don't need to match every value in the complete waveform over
time... every
couple together or even the first value with buffer comes pretty
close. this
is with a known, unchanging vocal waveform. So I doubt this would
be very
useful outside of this current system, which is a bummer.
I think it's time for me to retire this code and move on. Oh well...
Eric
On Fri, Jun 4, 2010 at 9:28 AM, Eric E. Dolecki
<edole...@gmail.com> wrote:
I can get waveforms... but say "a" takes 1 second to speak. I get
different
waveforms over that 1 second... so I'm not matching against a single
waveform, but many waveforms in succession. This seems like a
tricky thing
to match against.
What might be a good approach to matching values over a certain
amount of
time? Is AS3 fast enough to sync quick enough? I imagine it would
need to
check for all vowels every frame matching values in waveforms over
a certain
amount of time.
Eric
On Fri, Jun 4, 2010 at 8:56 AM, Eric E. Dolecki
<edole...@gmail.com>wrote:
I've started implementing some code this morning in the hopes to
match the
vowel "a" this morning. Of course there are several intonations
for this
depending on the word it's located in, but if I can get a match
on a naked
"a" I may be on to something. Like you said, I have a higher
chance of
success since the voice is software generated and not from random
people's
speech patterns.
If I don't get something today I'm going to bail on the engine in
the
hopes of finding something useful some other time. This isn't a
critical
feature for me as I have the jaw moving with precision and the
effect comes
across. Mouth shapes would be the icing on the cake.
Eric
On Fri, Jun 4, 2010 at 8:34 AM, Karim Beyrouti
<ka...@kurst.co.uk> wrote:
Yeh - not sure this will help
however - a (very talented) colleague of mine worked on a simple
speech
recognition software for mobile - it was built to recognise
about 20
commands with 90% success rate.
His approach (in my simplistic terms) was:
1) get recordings / audio samples of the commands (in your case
vowels -
it should be easier as it's generated so you wont have to
compare against
too many/different intonations ) -
2) create / store a graph of the audio commands ( this used FFT
(s) - to
abstract and simplify, the pattern of the commands - the result
was a square
voice print graph )
3) The stored patterns/voiceprints were then compared against
the users
voice recording.
The trickiest part of this whole business were the Fast Fourier
Transforms - these things get very complicated, and confuse the
life out of
me. Anyway, hopefully this
will help you - seems like it might be the best approach. if you
do crack
it - you will end up with a simple voice recognition system.
Which would be
a brilliant and useful thing bit of code to
have...
hope this was of any use..
- karim
On 4 Jun 2010, at 01:23, Karl DeSaulniers wrote:
I would try using that to figure out a way of maping the sounds
and
then translate that to your project. You are able to see the
wave forms in
soundbooth? Haven't used it. If so, can you run your cursor over
it at any
point to get the readings? Might be a little trivial, but may
yeild a
pattern that you can utilize.
JAT
Karl
Sent from losPhone
On Jun 3, 2010, at 6:18 PM, "Eric E. Dolecki" <edole...@gmail.com>
wrote:
SoundBooth
On Thu, Jun 3, 2010 at 6:39 PM, Karl DeSaulniers <
k...@designdrumm.com>wrote:
Do you have SoundEdit? Or the like?
Karl
On Jun 3, 2010, at 5:09 PM, Eric E. Dolecki wrote:
I think I might make waveform bitmaps and then try and compare
against the
current waveform (block EQ) - and if it's a close match,
then fire
off
specific vowel events. If that works, I could do consonants
too. If
this
works, I'll do jumping jacks and shots of Jack.
So how would I compare two bitmaps to see if a waveform (
On Thu, Jun 3, 2010 at 5:18 PM, Karl DeSaulniers <
k...@designdrumm.com
wrote:
If you need any of these files or can't find them, lmk and I
can
send off
list.
Best,
Karl
On Jun 3, 2010, at 3:37 PM, Karl DeSaulniers wrote:
Don't know if this will help, but have you looked into
WaveAnalyzer.as
or
Flash MX - Audio: Sound completion event (The source files
for
this can
be
found in the Flash MX/Samples folder.)
They both let you control the sound. I am thinking this
will point
you
in
a good direction. Its AS2 though.
HTH,
Karl
On Jun 3, 2010, at 2:42 PM, Eric E. Dolecki wrote:
Ya - I have the data for both things, but they extend over
time
and are
difficult to compare. It's the boiling down the
signatures into
something
simple and being able to read the playing audio looking
for the
match
(or
near match). I thought about using bitmap data and trying to
match up
waveforms, etc. but I don't know enough about it to pull
that
off. It
seems
like a hack in a way, but if it worked, who cares I suppose.
On Thu, Jun 3, 2010 at 3:31 PM, Juan Pablo Califano <
califa010.flashcod...@gmail.com> wrote:
I'm not Henrik, but I've done some lip-synch stuff for
Disney. We
did
it pretty much the way Eric described--we just used
amplitude.
It's
not as accurate as Disney would demand on a film, but
it's ok in
the
kids' game market.
I see, amplitudes could be just good enough for some
stuff.
Although the "speed" and the intensitiy of the speech
could give
misleading
results, I think. I'm under the impression that you should
somehow try
to
compare the shape of the waves (somehow simplifiy your
input to
some
value
of sets of values that are easier to compare, possibly in a
"time
window")
and compare it in some meaningful way to precalculated
samples
to find
a
matching pattern. That's the part I have no clue about!
Cheers
Juan Pablo Califano
2010/6/3 Kerry Thompson <al...@cyberiantiger.biz>
Juan Pablo Califano wrote:
Wow. That was really uncalled for.
That was my reaction, too. I didn't see Eric as
complaining--just
asking. Maybe Henrik was just having a bad day.
For me, the hard part, which you seem to imply is
rather simple
here,
is
*matching+ the input audio against said profiles.
Admitedly, I
don't
know
anything about digital signal processing and audio
programming
in
general,
but "matching" sounds a bit vague. Perhaps you could
enlighten
us, I
you
feel like.
I'm not Henrik, but I've done some lip-synch stuff for
Disney.
We did
it pretty much the way Eric described--we just used
amplitude.
It's
not as accurate as Disney would demand on a film, but
it's ok
in the
kids' game market.
Doing something more accurate would probably involve at
least 6
mouth
positions, and if you're doing it in real time, you'd
have to
do a
reverse FFT. It can be done--there was a really good
commercial
lip-synch program that generated Action Script to
control mouth
positions. I don't know if it's still around--that was
5 years
ago,
and it was pretty expensive (about $2,500 for one seat, I
think). It
may even have been a Director Xtra that worked with a
Flash
Sprite,
but let's not talk about Director :-P
Cordially,
Kerry Thompson
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
--
http://ericd.net
Interactive design and development
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Karl DeSaulniers
Design Drumm
http://designdrumm.com
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Karl DeSaulniers
Design Drumm
http://designdrumm.com
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
--
http://ericd.net
Interactive design and development
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Karl DeSaulniers
Design Drumm
http://designdrumm.com
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
--
http://ericd.net
Interactive design and development
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
--
http://ericd.net
Interactive design and development
--
http://ericd.net
Interactive design and development
--
http://ericd.net
Interactive design and development
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Karl DeSaulniers
Design Drumm
http://designdrumm.com
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders