> Would be interested to know if anyone else has experimented and what results
> might have been obtained. MP3 playback would be much more efficient on
> memory storage but I suspect would be a nightmare on processor load ! I am
> also having trouble finding a good, low component count, audio amp for 5V.
>
> Happy to share source and ideas !
I've used the speakjet. It's quite a fun chip. It's more advanced than
the old-style speech synthesiser chips but don't expect miracles. It's
pretty hard to make true natural sounding speech with it but it is
better than the old-style robot voices.
> At 02:28 PM 9/30/2007, Robin Abbott wrote:
> >Hi,
> >
> >Not been on this list for a while, but am interested in sharing experiences
> >with others who may be experimenting with playing wav files from a PIC.
>
> This may not be related to your search but I thought that you might
> want to know about it anyway:
>
> SpeakJet <http://www.magnevation.com>
>
> Quoting begins:
>
> The SpeakJet is a completely self contained, single chip voice and
> complex sound synthesizer. It uses a mathematical sound algorithm to
> control an internal five channel sound synthesizer to generate
> on-the-fly, unlimited vocabulary speech synthesis and complex sound
> generation.
>
> The SpeakJet is programmed with 72 speech elements (allophones), 43
> sound effects, and 12 DTMF Touch Tones. Through the selection of
> these sounds and in combination with the control of the pitch, rate,
> bend, and volume parameters, the user has the ability to produce
> unlimited phrases and sound effects, with thousands of variations, at
> any time. The SpeakJet can be controlled simultaneously by logic
> changes on any one of its eight Event Input lines, and by a single
> I/O line from a CPU (such as the OOPic or the Basic Stamp) allowing
> for both CPU-Controlled and Stand-Alone operations.
>
> Hope this is relevant.
>
> dwayne
>
> --
> Dwayne Reid <dwaynerKILLspamplanet.eon.net>
> Trinity Electronics Systems Ltd Edmonton, AB, CANADA
> (780) 489-3199 voice (780) 487-6397 fax
> http://www.trinity-electronics.com
> Custom Electronics Design and Manufacturing
>
Yes I remember experimeting with Allophones in the 80's with a chip - I
think it might have been the SP-0256-AL2 from GI. It worked quite well and
was very efficient - most words can be stored in Allophones in less bytes
than normal text. However I particularly remember W's and V's as being awful
!
> Yes I remember experimenting with Allophones in the 80's with
> a chip - I think it might have been the SP-0256-AL2 from GI. It
> worked quite well and was very efficient - most words can be
> stored in Allophones in less bytes than normal text. However I
> particularly remember W's and V's as being awful !
I thought of playing around with the Commodore 64's SID chip.
There were a couple of pretty good text-to-speech programs at
the time, early 80s. Big Mouth was one. I have the feeling there
was some ring modulation involved, because of the tone quality
deterioration if you pushed a little too far with voice settings. Like
a squeaky Stephen Hawking. Programs and games with embedded
speech probably used sampling. Impossible Mission's Vincent Price
for example, which wasn't too bad at all
I do have some SID chips (ex dead C64s) but have never gotten
around to hooking up a PIC to one. Without a real application,
no pressing incentive to do so apart from curiosity unfortunately
> I do have some SID chips (ex dead C64s) but have never gotten
> around to hooking up a PIC to one. Without a real application,
> no pressing incentive to do so apart from curiosity unfortunately
On Wed, 3 Oct 2007 19:46:38 +0100, Robin Abbott wrote:
> Yes I remember experimeting with Allophones in the 80's with a chip - I
> think it might have been the SP-0256-AL2 from GI. It worked quite well and
> was very efficient - most words can be stored in Allophones in less bytes
> than normal text. However I particularly remember W's and V's as being awful
Ah yes, I remember that chip - I had a play around with a little black box that plugged into a BBC Micro - fun, but with the power of that machine it wasn't really
feasible to do proper text-to-speech. Using the "obvious" allophones for the letters just didn't work, you had to get quite creative to make it understandable. And
one problem was that after listening to it for a while you got used to its "accent" and started understanding it when anyone coming to it fresh was bewildered.
You needed a supply of people who hadn't heard it before to judge whether it was understandable by "the man on the Clapham omnibus" :-)
I still have it somewhere (and a couple of BBC Micros) - one day I may find it and have another play around.
I sure remember the SPO256 and the companion ROM to do
text-to-speech. It is a shame that there is nothing that cheap
around these days. You could make it sound pretty decent with a
little effort.
I must admit that I did not get in on the first of this
thread because I accidentally deleted it the last time I zeroed
out the PIC list folder, but you can do speech synthesis by
analysis (just record someone's voice), by writing
a storage routine similar to the little demo program that was
used on the original Apple II's. That system used the Mostech
6502 CPU and ran at an event rate of slightly above 1 MHZ. I say
that because any of the common PIC's like the 16F84 or even 12C
series PIC's can positively scream by comparison in a speed test
so that isn't going to be the problem.
The Apple's speech storage program used the 741 op-amp
cassette interface input which was wired to act like a Schmidt
Trigger. There was no A-D converter nor even a low-pass filter
here. The audio wave form, as I understand it, caused a sort of
dirty pulse-width modulation in the output of the 741. The
program flipped bits on and off in a range of memory to mimic
what the 741's output did.
When you played it back, the playback program read one
bit at a time and compaired it with the last bit. If there was a
change, it strobed the speaker flipflop and clicked the speaker
once per change. This effectively reproduced that very dirty
pulse-width output. The speaker's own limited response acted as
a low-pass filter to take some, but not much, of the sampling
out of it.
You could understand digits pretty well and many words.
There was no way you would mistake it for proper A/D-based
audio, but it was good for games and I think one could use it
for maybe a talking thermometer or a warning message.
I haven't tried it, but I see no reason why a PIC
couldn't do this with no trouble. You've even got better
interrupt-based timing than was available in the Apple, at least
it wasn't available without a lot of hardware mods.
I would imagine that one might want to connect an
external EPROM to a PIC and store the bit patterns in that if
several seconds of speech were involved.
You will go through memory at about 8 Kb/sec or about 1
kilobyte per second.
Your algorithm will also have to be very clean about
timing because this technique for generating audio is bad enough
as it is without little extra hits from timing jitter as you
step through the single bits to record or play your sound.
Just a thought.
Martin McCormick WB5AGZ Stillwater, OK
Systems Engineer
OSU Information Technology Department Network Operations Group