Thanks in advance,
Phil.
Anyway, as you probably discovered you can't just digitize the sounds
and play them back because the SP0256 has features to blend phonemes, as
well as extend the ending sound as appropriate (e.g., if you have it say
"th" it says "thhhhhhhhhh..." until you tell it to shut up). Any
reproduction of its phonemes would have to repeat the sound, but not
from the beginning. Maybe you have all that worked out, and I'm sure it
hasn't been a simple project.
I don't have a fully working SPO256 board, but I do have one or two of
the bate chips, and I think even one of the oddball 3.12 MHz crystals
they want (personally, I think they chose this value when they found it
talked too fast when using a "normal" 3.58 MHz crystal; easier to change
the crystal than redo the PROM mask! <g>).
BTW, I couldn't find the link you're talking about. Your Java applet for
the funky outline may not have been working right.
-- Gordon
I have an old Currah speech synthesiser for my equally old C64, but I don't
know if either of them still work. The synthesiser uses an SPO256, and
plugs into the cartridge slot.
I'll try them out and let you know.
Tim
--
Tim Jacobs timothy...@gecm.com
These are my views, not those of my employer.
And maybe add some new features, like the ability to record your own phonemes
and make your own voice (or use a celebrity's) or make it speak with an
european/asian accent, and/or a male/female option...?
Let's all note that a speech chip does not just play back discrete
phoneme sounds in X order. That's not how they work. If you recorded
your own phonemes you'd still have to tell the chip how to string it
with other sounds, and there could easily be dozens or hundreds of
permutations per phoneme. And *then* you have to account for variances
in inflection, speed, pitch, etc.
Check out:
http://www.bell-labs.com/project/tts/
for an ongoing project in speech synthesis; the site lets you type in
text and get a synthesized sound file (WAV, AU, AIFF) in return. This is
a multi-lingual product, with an aim at providing speech to Web sites
(among other uses). There are some links through the search engine to
earlier Bell Labs research -- namely the Voder and the Vocoder -- which
is useful reading. (And of course, you can use their system to record
sound bites for your robot if you use speech storage chips like the ISD
line.)
Comedy is easy. Speech synthesis is hard.
-- Gordon
I meant- if he had the ability to create a speech chip/module, it would seem
easier to me to create a totally different chip from scratch, without the
self-imposed limitations of trying to make an exact clone of the original one.
-- Gordon
Later,
Phil.
PS: If I can connect to F9 then I'll upload it by 10PM GMT. If not then
it'll be up on Saturday.
Or even a 3.07 MHz - lower pitch but still works.
--
Jim Hewitt, Software Design Engineer
Hewlett-Packard Co., Department LaserJet Division
(208)-396-4417 Jim_H...@hp.com
I like the idea of unlimited text speech processing, but with the lack
of a good -- and cheap** chip, more and more I'm leaning toward using
ISD voice storage ICs and recorded sound piped through a vocoder. I
can't understand a word the robot says right, but it sounds cool!
(Really, I just have to either A) get a better vocoder, or B) learn to
use the one I've got. Anyone have any ideas for a *good* vocoder program
for Windows 9x? The Orange Vocoder...whatever it's called...from
Prosoniq sounds *SUPER* cool, but it's only for a Mac. Don't got a Mac.
Well, I do, but the vocoder software won't run on a 1988 vintage SE!!
I'm not set against a hardware vocoder, but the good ones seem to be
VERY expensive.)
-- Gordon
Philip Pemberton wrote:
>
> > This is something I keep asking about, but so far nada. I keep trying to
> > raise a revolution against MicroChip, which owns the mask to the SPO256
> > (they got it when they bought out General Instrument) but I guess
> > everyone is too happy programming their PICs to bite the hand that
> > serves their dinner.
> Why not send out an e-mail petition? Show Microchip there's still some
> interest in the chip. I'm still trying to get mine to work... Anyone fancy
> sending me a 3.12MHz xtal? I can't get these little devils anywhere in the
> UK... Damn... Discontinuing the PIC16C84 was a bad move... I've found
> designs in which an F84 simply will not work. ÂŁ8.99 for a C84? You must be
> joking...
Jeff
Gordon McComb wrote:
>This is something I keep asking about, but so far nada. I keep trying to
>raise a revolution against MicroChip, which owns the mask to the SPO256
>(they got it when they bought out General Instrument) but I guess
>everyone is too happy programming their PICs to bite the hand that
>serves their dinner.
>
-- Gordon
Gordon McComb wrote in message <38BEE9...@gmccomb.com>...
>snip<
I'll see what I can do this weekend. It may be difficult to get it to give
me the allophones individually.
What do you mean by "doubles"?
E-mail your Snail-mail address to me. If I can't get it to work, I'll send
you the whole unit. If you copy it to tim.j...@cableinet.co.uk it'll
make sure I get it.
BTW, someone suggested using a "colour burst" crystal. The UK ones are
4.433 MHz, not the same as the 3.9ish MHz NTSC ones. RS sells 3 MHz
crystals. Besides, if you use a 4 MHz oscillator, that's what most people
have for their PICs, and are easy to get. Plus you get slightly faster
instruction times which, in turn, gives you more instruction cycles for the
processing.
Not true. The PC Version of OrangeVocoder is shipping as of last week.
Stephan M.Sprenger
The DSP Dimension http://www.dspdimension.com
-- Gordon
R09854CS-2030
778R01
Ĺ CURRAH 1984
GI 8438 CFA
<note: 8438 sounds like a date code. The GI is printed on the chip in large
Times new roman-style>
And the other one:
LA05-148
GI 8435 SGA
<8435=1984, week 35, GI in large TNR>
I also have an SL486 if anyone wants it. I think the GI chips are speech
ROMs. The one that says (C) Currah is almost certainly a ROM, IMHO.
Later,
Phil.
Later,
Phil.
Later and thanks,
Phil.
Later,
Phil.
Please forgive me if I err, but I was strongly under the impression that the
actual speech processing portions of the SPO256 are NOT digital, but the chip does
have digital input & control for i/o. [Let's remember when this chip was originally
designed - late 70's early 80's]. If that is the case, then there is no source or
object code and even the mask may be of dubious value if the manufacturing processes
are likewise antiquated.
Sorry to be a wet sponge or rain on your parade in any way. I, too, wished there
were some inpexpensive speech generation chips, but the current trend seems to be to
let a (somewhat) powerful processor generate the speech digitally. Maybe someone
wants to port these speech systems to a 6811?
Jim
>
> -- Gordon
>
> DRJ53 wrote:
>
> > Do you need the mask? Can one get the source code or can the object code be
> > extracted from an SPO256?
--
True, but on the other hand, the SPO256 came from the same folks who
created the original PIC (and about the same time, though possibly a
little earier). I don't recall the SPO256 being out in the late 70s.
That would be the timeframe for the Votrax SC-01, which was in many ways
a superior chip, as well as the LPC systems TI had developed. Frankly,
I don't know when the SPO256 was introduced. The fact that Radio Shack
was selling in in 1985 suggests to me, however, that it might have
already been overstock at that time.
I agree that things like the SoundBlaster, which -- with the appropriate
drivers -- can create text-to-speech output, and helped kill the
stand-alone chip market. OTOH, I think we're seeing the re-emergence of
smart products, and not all can have an ISA bus in them. Plus, there's a
limit to what you can cram into a microcontroller. Personally, I'd like
my drill press to remind me not to hold the work with my hands (almost
cut off a finger last weekend doing this...sheesh!....and it's not like
I don't know better).
-- Gordon
Gordon McComb wrote:
>
> Ohhhh! Great news. But why can't I find it at their site? What's the
> secret? (Probably me just not recognizing the product on their pages). I
> would order it today if I could.
>
> -- Gordon
They don't sell it online yet (in case you're wondering, I'm working at
Prosoniq) but the info at Steinberg (who distribute it) is here:
http://www.steinberg.net/products/ae/plugins/orangevocoder/index.phtml?id=0303030104&sid=03470848
Regards
Also mix into this the fact that GI brought out the SP1000
in the early 80's (as I recall), a chip that did both LPC
synthesis AND analysis--so we're talking about a company
with some good realtime digital signal processing. It seems
very probable that this chip is indeed a digital formant
synthesizer, not analog as was suggested in another post.
The nature of speech is such that it is very difficult to
create nice sounding transitions by just concatenating
speech segments. (Actually, one method that was popular was
to concatenate the transitions. Nice output, but lots of
memory required, since transitions could be between many
different phonemes!) To do something that sounded as nice
as the SP0256, a plug-in replacement would need to implement
that formant synthesizer (or something close by).
As someone who has coded a formant synthesizer, I'll say
that it is possible, a bit complicated (but within a good
programmer's ability), but very time consuming. On a
general-purpose DSP architecture it is very easy to do in
realtime, but I'd say it would be problematic using a
generic microcontroller--there are 5+ digital filters to
evaluate at the sample rate, plus other operations going
on. (I used about 8 MIPS on a 16-bit DSP for the core of
the synthesizer, but I bet you could do it in half that or
less.)
I have some general speech-related resources at
http://www.redcedar.com/sc01.htm
which includes a paper by Klatt describing (and listing) the
FORTRAN to do a formant synthesizer. (C source is readily
available nowadays as well--see the comp.speech.xxxxx FAQs.)
The Phillips PCF8200 had no ROM, but was also a digital
formant synthesizer. Their tech application note on that
chip is very interesting, as it gives insight into how the
formant parameters are encoded, and what is the bare minimum
needed.
All of that to say that the 16K mask ROM isn't opcodes, it's
the parameters for the formants/digital filters. Even if
you had this information, you'd be quite a ways away from
being able to do anything with it, since you need the
formant synthesis engine.
--Dale
DRJ53 wrote:
>
> Do you need the mask? Can one get the source code or can the object code be
> extracted from an SPO256?
>
I have three of the SP0256 chips. Two of them are quite happy with 3.07 MHz and
the colorburst. The other one will start speaking and then starts shrieking [I
like your term!] - you have to pull to power to reset it. I have _heard_ that
the chip crashes sometimes if the clock signal is not stable. You could try an
oscillator instead of a simple crystal but good luck finding that frequency.
Also, you could try some variable caps to tune or stabilize the frequency a bit -
I wounld't necessarily assume the SPO256 is dead.
Jim
>
> Later and thanks,
> Phil.
If the demo clips are any indication, it's the best-sound digital
vocoder I've ever heard. Your company should be very proud of it. I see
by trhe specs on the Steinberg page my machine is a little anemic to run
it (the processor is too slow), but maybe this would be a good reason to
get a new machine!
-- Gordon
Philip Pemberton wrote in message <38c02...@news2.cluster1.telinco.net>...
|> I've gotten mixed responses of what's inside the SPO256.. But yes, if
|source
|> code (assuming it's externally programmable) were available, that would be
|> great.
> I'm not sure what, if any, phoneme blending algorithms he's working on,
how he intends to
> vary pitch, etc. I didn't get the idea it's an *exact* clone, but that's
not bad anyway, as the
> SPO256 was pretty easy to work with
Actually, AFAICT (as far as I can tell) the SPO256 doesn't do any phoneme
blending at all - it merely repeats the same allophone again. And I can now
understand what it is trying to say :-) I might even produce a Win32
software-based synthesizer soon! Oh, it'll be freeware, just like the PIC
code.
The module is designed to be a drop-in replacement for an obsolete SPO256
and AFAIK the low-pass filter won't cause any problems. It has an onboard
DAC anyway - no PWM bother - just hook it straight up to the audio amp!
Later,
Phil.
Scratch the part about being programmed in TMS/PIC, I was referring to the
suggested PIC 1650A host processor in my notes.
Found the app manuals for the SP0256. More to come later.
Sorry.
BTW Just found another link to an old toy:
http://www.ti.com/corp/docs/company/history/pmos.shtml TI -first single chip
speech synth.
> Also, you could try some variable caps to tune or stabilize the frequency
a bit -
> I wounld't necessarily assume the SPO256 is dead.
Later,
Phil.
One of my questions concerns the legal/ethical implications of converting the
object code for MacinTalk to code for another processor. Is permission or
compensation needed to do this? The other is the practicality of doing such a
conversion. The code uses multiple 16 bit address registers to index tables of
parameters, so it would be very difficult to port to the micro I'm familiar
with, the 68HC11. Are other processors such as the PIC or AVR series better
suited to such code?
Jeff
excerpted from the MacinTalk documentation:
"The Macintosh speech synthesizer (MACINTALK) is a software driver which runs
under the MACINTOSH operating system. Running in real time, MACINTALK converts
an ASCII string of phonetic codes to high quality synthetic speech utilizing a
male, non-regional, standard American dialect. The MACINTALK driver also
provides for user control of the speaking rate and pitch. Another program,
READER, converts unrestricted English text into phonetic codes directly usable
as input to MACINTALK."
excerpted from Tech note #268: MacinTalk—The Final Chapter (February
1990)
" For the introduction of the Macintosh computer, it was decided (by the powers
formerly in charge) that such a computer would need something very special to
make it a unique event. To aid in this concept, a third-party company was
contracted to write a speech synthesizer which would allow the Macintosh
computer to introduce itself. The contract was signed, and the work begun.
The outcome of this work was MacinTalk. MacinTalk is a file that can be placed
into the System Folder of an ordinary Macintosh computer and allow text to be
transformed into speech for the introduction in 1984. It was felt to be an
interesting piece of software, so Apple made it available to developers.
Interfaces to MacinTalk were published and Apple Software Licensing allowed it
to be included with developers’ products.
The original project was to get a speech driver for the Macintosh, but it did
not include obtaining the source code to this driver. Apple only has exactly
what it gives to developers: a file to be copied into the System Folder, and
this file cannot be changed since Apple does not have the source code."
<snip>
"The Surgeon General Warning
The development of MacinTalk ended with the introduction of the Macintosh in
1984. Nothing more will be done to this product. It is a compatibility risk
to use MacinTalk. It causes the Sound Manager to fail. It will not work with
the new Sound Manager planned for System 7.0. This system revision will also
introduce the new feature of virtual memory; it is not expected that MacinTalk
will work while the user has Virtual Memory running. It may not work at all
with future versions of the Macintosh hardware. Continued use of MacinTalk is
a major compatibility risk. Do not operate heavy machinery while under the
influence of this product."
Thanks for the other material you've posted. It was a keeper!
(Even if there is no way to burn a now chip from a mask, Microchip *still* has
these, as they would have gotten everything from GI when they bought them out. This
would also include the engineers' notes -- which, if they were like any hardware
shop, they were required to keep. Seems to me Microchip wouldn't be losing anything
if it turned this stuff over to the public, a la open source.)
-- Gordon
Thanks for the very useful website on speech synthesis. I was very interested
in what you mentioned in your recent post:
The Phillips PCF8200 had no ROM, but was also a digital
formant synthesizer. Their tech application note on that
chip is very interesting, as it gives insight into how the
formant parameters are encoded, and what is the bare minimum
needed.
I would be very interested in the tech note describing how formants are
encoded,but I didn't see any info on the Phillips site about the PCF8200. Do
you have an electronic version of the technote you'd be willing to share?
Thanks,
Jeff
I distinctly recall MacinTalk (I was big on Mac's when they first came out), and
the quality of the speech wasn't bad at all (though sometimes hard to understand
through the Mac's small speaker).
The ethics question is best answered by those familiar with Apple's intellectual
property practices. I would think if you simply cribbed the ideas there's no
problem.
-- Gordon
Sorry for looking stupid...
-- Gordon
Gordon McComb wrote:
> Well, the AVR has 32 16-bit registers, ....
Actually, I did contact Phillips (one "l" or two, I never
can remember) about making this app note available
electronically, sometime last year. Didn't hear back from
them. If someone can get permission to post it, I'd be
happy to scan & post. It is called "Application Report for
the PCF8200 Formant Speech Synthesizer" by H.W. Zelle and M.
ten Have, Report No. EDP8807, and is a "Philips Components
Laboratory Report." (Philips, one "l") 31 pages long. No
copyright (but let's stay on the right side here).
Yes, the PCF8200 is no longer available--add it to the long
list of single-chip speech synthesizers no longer with us.
But we're getting close to having enough on-chip memory,
speed, and DSP capabilities in small packages to get an
under $10 formant synthesizer using off-the-shelf parts. I
just don't think there's much market*, so it'd be one of
those "labor of love" kind of things :)
(* Why? You have to add a lot of rules about transitions
before you get natural sounding speech using formant
synthesis from rules--allowing unlimited text-to-speech--and
for applications with a limited vocabulary, you have all
kinds of speech compression and also storage methods like
ISD chips to just record actual speech. Also, software
speech synthesis removes one big market that existed back
when all you had was a 6502 at a few MHz. Just my humble
opinion, but the window may have closed permanently on
hardware formant synthesizers, analog or digital.)
--Dale
Includes scanned SC01A data sheet (by permission), patents
by Gagnon, etc.
--Dale
Philip Pemberton wrote:
>
> > See if you can dig up anything on the Votrax, too. All this material would
> be great
> > for a Web site. There's actually very little (at least technical) about
> the earlier
> > speech synthesizers.
> The Votrax?
> I'll try an AltaVista search
>
BTW it isn't necessary to post the SP0 series, someone already has:
http://www.2bits.simplenet.com/techinfo.html -SPO256 data sheets and the rom
data sheets.
As for the Texas Instruments end of things check out:
spss011c.pdf - Texas Instruments' TSP50C0x/1x family of speech synthesizers. Has
description of LPC encoding.
http://www-s.ti.com/sc/psheets/spss011c/spss011c.pdf#xml=http://www-search.ti.co
m/search97cgi/s97r_cgi?action=View&VdkVgwKey=http%3A%2F%2Fwww%2Ds%2Eti%2Ecom%2Fs
c%2Fpsheets%2Fspss011c%2Fspss011c%2Epdf&doctype=xml&Collection=TechDocs&QueryZip
=filter&
spsu006b.pdf - Texas Instruments' MSP50x3x Mixed signal processors user guide.
Has source code and examples and another LPC explanation.
(1.2MB)
http://www-s.ti.com/sc/psheets/spsu006b/spsu006b.pdf#xml=http://www-search.ti.co
m/search97cgi/s97r_cgi?action=View&VdkVgwKey=http%3A%2F%2Fwww%2Ds%2Eti%2Ecom%2Fs
c%2Fpsheets%2Fspsu006b%2Fspsu006b%2Epdf&doctype=xml&Collection=TechDocs&QueryZip
=filter&
I'm thinking that with all this, if one wanted to they could make their own.
I'm still going to breakdown the SPR-016 for it's code/data.
Have fun.
Dale Grover wrote in message <38C18F80...@redcedar.com>...
|As for the Texas Instruments end of things check out:
|
|spss011c.pdf - Texas Instruments' TSP50C0x/1x family of speech synthesizers.
Has
|description of LPC encoding.
|http://www-s.ti.com/sc/psheets/spss011c/spss011c.pdf#xml=http://www-search.ti.c
om/search97cgi/s97r_cgi?action=View&VdkVgwKey=http%3A%2F%2Fwww%2Ds%2Eti%2Ecom%2F
sc%2Fpsheets%2Fspss011c%2Fspss011c%2Epdf&doctype=xml&Collection=TechDocs&QueryZi
p=filter&
|
|spsu006b.pdf - Texas Instruments' MSP50x3x Mixed signal processors user guide.
|Has source code and examples and another LPC explanation.
|(1.2MB)
|http://www-s.ti.com/sc/psheets/spsu006b/spsu006b.pdf#xml=http://www-search.ti.c
om/search97cgi/s97r_cgi?action=View&VdkVgwKey=http%3A%2F%Fwww%2Ds%2Eti%2Ecom%2Fs
|c%2Fpsheets%2Fspsu006b%2Fspsu006b%2Epdf&doctype=xml&Collection=TechDocs&QueryZi
p=filter&
ftp://ftp.armory.com/pub/user/rstevew/CTSPO256/spo256_17.gif
where spo256_01.gif to spo256_19.gif is the whole document.
I have also recorded them into 64 WAV files of the right durations for
all 64 of them in a file called:
ftp://ftp.armory.com/pub/user/rstevew/CTSPO256/allophones.zip (246K)
So you could burn them into EPROMs and play with that, or record your
own! I've done that in my voice and I think it's amusing.
-Steve
> The early Macintosh (8 MHz 68000) had a software text-to-speech
> system called MacinTalk. I have included some background info on the program
> below. The entire program, including the text-to-allophone and synthesis
> functions, occupied about 16K and produced pretty good speech quality (better
> than the SPO256 in my opinion). I've poked around in the disassembled 68000
> code, and I now understand the basic functionality and some of the details of
> the software. It looks like it would be feasible to convert this to code for
> a modern microcontroller. About 16K ROM and 2K RAM is needed, as well as a D/A
> for output.
>
> One of my questions concerns the legal/ethical implications of converting the
> object code for MacinTalk to code for another processor. Is permission or
> compensation needed to do this? The other is the practicality of doing such a
> conversion. The code uses multiple 16 bit address registers to index tables of
> parameters, so it would be very difficult to port to the micro I'm familiar
> with, the 68HC11. Are other processors such as the PIC or AVR series better
> suited to such code?
>
> Jeff
---------------
The research THEY used was probably the NRL paper as well, since
EVERYBODY including Votrax used that. So use the code and the speech
data or anybody else's at will. This stuff was FIRST paid for by YOUR
TAX DOLLARS folks!!
: The Votrax?
: I'll try an AltaVista search
Votrax SC-01 phonem synth. There was a sort-of second version, the SSI-263.
Heathkit made a speach synth card for IBM PC's based on the SSI-263. I'm
trying to write a Linux driver for it for a bot project.
-Chris
--
==========================================================
Chris Candreva -- ch...@westnet.com -- (914) 967-7816
WestNet Internet Services of Westchester
http://www.westnet.com/
In article <38C17F5E...@gmccomb.com>, Gordon McComb <gmc...@gmccomb.com>
writes:
>
>The ethics question is best answered by those familiar with Apple's
>intellectual
>property practices. I would think if you simply cribbed the ideas there's no
>problem.
>
>-- Gordon
>
>DRJ53 wrote:
>
BTW, has Steve Walz contacted you about the allophone wavs he has?
Tim
--
Tim Jacobs timothy...@gecm.com
These are my views, not those of my employer.
Philip Pemberton <pap...@FreeNet.co.uk> wrote in article
<38c01...@news2.cluster1.telinco.net>...
> > I have an old Currah speech synthesiser for my equally old C64, but I
> don't
> > know if either of them still work. The synthesiser uses an SPO256, and
> > plugs into the cartridge slot.
> One last thing - does it use an LA05 or an R09864CS-2030? I've got one of
> each in front of me. They are supposed to have come out of a Currah
> Microspeech unit.
>
> Later,
> Phil.
>
>
>
Gordon McComb wrote:
>
> Ah, that explains it.
>
> If the demo clips are any indication, it's the best-sound digital
> vocoder I've ever heard. Your company should be very proud of it.
Thanks for the kind words, I really appreciate it.
> I see
> by trhe specs on the Steinberg page my machine is a little anemic to run
> it (the processor is too slow), but maybe this would be a good reason to
> get a new machine!
Well, the actual Vocoder core is quite fast, it's the built-in carrier
synth that eats up the power easily. For optimum performance in a
multitrack environment we recommend at least a 400 MHz PII or later
(although it will run on slower machines as well, but you probably won't
be able to use [many] other plug ins at the same time).
Can't say without trying it. I would venture to guess that two of mine [vintage
unknown] would work since they are happy with 3.07 to 3.5+ MHz. Give it a try!
Jim
>
> > Also, you could try some variable caps to tune or stabilize the frequency
> a bit -
> > I wounld't necessarily assume the SPO256 is dead.
> Later,
> Phil.
--
Later,
Phil (Age 13).
http://members.tripod.com/RoBoJRR/techcorner.htm
V-Tech used this chip in the speech module for their toy computers and it makes
a great stand-alone synthesizer for robots.
Philip Pemberton wrote:
> Hi,
> I don't know if you all remember, but here goes.
> I am designing a replacement for the now-obsolete SP0256 speech synth
> chip in the form of a module. Basically, the module is intended as a
> drop-in replacement for the chip. My attempts to snaffle the
> allophones/phonemes/whatevers from other programs have so far been
> unsuccessful. I have set up a website at www.philpem.f9.co.uk. Select
> 'SP0256 replacement project' from the navbar on the lefthand side of the
> window. If anyone has a fully working 0256 card then would you please
> digitize the allophones for me or, even better, let me borrow it? Contact me
> for further info. This would enable me to finish off the project and then I
> will release the sourcecode. For the benefit of those who missed my original
> posting, I will be releasing the PIC code as freeware. Source will be
> included
> for free too. Please contact me before beforehand if you want to send me an
> e-mail attatchment over 500K, though!
>
> Thanks in advance,
> Phil.