WAV to PIC stored speech?

View: New views
20 Messages — Rating Filter:   Alert me  
< Prev | 1 - 2 | Next >

WAV to PIC stored speech?

by Harold Hallikainen-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

We have a project where we have a bunch of WAV files that we'd like to
convert to some compact format and then output through a PIC DCI port
(output I2S that then drives a DIT to transmit AES audio). The DCI is
outputting 24 bit audio at 48k samples per second. The WAV files are
simple speech and need not be really high quality. Ideally, I'd like to
fit stuff inside the dsPIC flash, but we have external SPI flash if
needed. So... Any utilities to convert a WAV to a C constant array with
some simple compression that we can quickly decompress and dump to the
DCI?

Thanks!

Harold



--
FCC Rules Updated Daily at http://www.hallikainen.com - Advertising
opportunities available!
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: WAV to PIC stored speech?

by Justin Richards :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

As suggested by Jinx for a different post.

http://www.romanblack.com/picsound.htm

Justin

2009/11/7 Harold Hallikainen <harold@...>

> We have a project where we have a bunch of WAV files that we'd like to
> convert to some compact format and then output through a PIC DCI port
> (output I2S that then drives a DIT to transmit AES audio). The DCI is
> outputting 24 bit audio at 48k samples per second. The WAV files are
> simple speech and need not be really high quality. Ideally, I'd like to
> fit stuff inside the dsPIC flash, but we have external SPI flash if
> needed. So... Any utilities to convert a WAV to a C constant array with
> some simple compression that we can quickly decompress and dump to the
> DCI?
>
> Thanks!
>
> Harold
>
>
>
> --
> FCC Rules Updated Daily at http://www.hallikainen.com - Advertising
> opportunities available!
> --
> http://www.piclist.com PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: WAV to PIC stored speech?

by Harold Hallikainen-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


> As suggested by Jinx for a different post.
>
> http://www.romanblack.com/picsound.htm
>
> Justin

Thanks! I remember when that was first announced. Picsound drives a 1 or 2
bit output to an RC network. I'm using the DCI port on a dsPIC to drive a
DIT that then outputs AES audio. We've got it outputting tone. Now we want
to output some recorded voice. We're also looking for a pink noise
algorithm. The ones we've found so far use floating point math, which is
too slow.

More ideas?

Thanks!

Harold

--
FCC Rules Updated Daily at http://www.hallikainen.com - Advertising
opportunities available!
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: WAV to PIC stored speech?

by David Harris-12 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi--

This may be useful...

The Microchip DM330011 dsPIC DSC starter kit appears to do just this ($60 at
Digikey).  

The Microchip website has a description:
   
<http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en534506>

And the user manual, which includes schematic:
 
<http://www.microchip.com/Microchip.WWW.SecureSoftwareList/secsoftwaredownload.aspx?device=en534506&lang=en&ReturnURL=http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en534506#>

And some sample software:
 
<http://www.microchip.com/Microchip.WWW.SecureSoftwareList/secsoftwaredownload.aspx?device=en534506&lang=en&ReturnURL=http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en534506#>



Quoting Harold Hallikainen <harold@...>:

>
> > As suggested by Jinx for a different post.
> >
> > http://www.romanblack.com/picsound.htm
> >
> > Justin
>
> Thanks! I remember when that was first announced. Picsound drives a 1 or 2
> bit output to an RC network. I'm using the DCI port on a dsPIC to drive a
> DIT that then outputs AES audio. We've got it outputting tone. Now we want
> to output some recorded voice. We're also looking for a pink noise
> algorithm. The ones we've found so far use floating point math, which is
> too slow.
>
> More ideas?
>
> Thanks!
>
> Harold
>
> --
> FCC Rules Updated Daily at http://www.hallikainen.com - Advertising
> opportunities available!
> --
> http://www.piclist.com PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>




--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: WAV to PIC stored speech?

by Brendan Gillatt :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Harold Hallikainen wrote:

> We're also looking for a pink noise
> algorithm. The ones we've found so far use floating point math, which is
> too slow.
>
> More ideas?
>
> Thanks!
>
> Harold
>

Seriously? The third result on google from searching "integer pink noise
generator" explains and gives integer examples for two algorithms.

- --
Brendan Gillatt | GPG Key: 0xBF6A0D94
brendan {a} brendangillatt (dot) co (dot) uk
http://www.brendangillatt.co.uk
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)

iD8DBQFK9dI+HEhZ5Ws5poERAvtmAJ9/5EeBmyGeByEc9yGxVFqUNcycZQCgtyfo
o9yrLyL/IxpCTACHV7tnq7Y=
=nAWv
-----END PGP SIGNATURE-----
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: WAV to PIC stored speech?

by Harold Hallikainen-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


>
> Seriously? The third result on google from searching "integer pink noise
> generator" explains and gives integer examples for two algorithms.
>
> - --
> Brendan Gillatt | GPG Key: 0xBF6A0D94

Good point. We have reviewed that page but have not managed to get an
implementation working. We'll keep working at it. At this point, someone
else in my group is doing most (nearly all) the work on this as I've
gotten too busy with USB and TCP/IP on PIC32 along with various other
projects. I appreciate all the comments!

Harold



--
FCC Rules Updated Daily at http://www.hallikainen.com - Advertising
opportunities available!
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Parent Message unknown Re: WAV to PIC stored speech?

by Lee Mulvogue :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

> We have a project where we have a bunch of WAV files that we'd like to
> convert to some compact format and then output through a PIC DCI port

I'm trying to do something similar, as a starting point you might want to
check out the TraxMod project at
http://www.k9spud.com/traxmod/
he's got some interesting possibilities there, but I haven't had time to
break it down to modify for my purposes.  I've gotten small mod files
playing properly, but so far haven't figured out how to trigger each
sample directly.
The version 0.1 can convert and save samples (via mod file) directly to
the dspic, all versions after that moved towards the files being stored on
sd card.

Lee
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by cdenk :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Wife's kitchen oven has a .5" high 4 character plus colon, 7 segment
clock/timer display. The timer only beeps when time expires, there is no
control of the oven. Several of the LED segments are dim, and it they
are not consistent in brightness with time.  My thinking is the resistor
in series with the common anode/cathode may have changed in value, and
swapping it for a same or different value may solve the problem. Or I
might end up changing the display. Last resort would be just buy a new
controller/display board for $130. I have not been able to find either
schematics or source the parts. Any help in that area appreciated. The
info follows:

Display:
BACKSIDE:  P/N SL-2042-27TBH, 9Z22
FRONT SIDE:  P/N TCL-1008P

CONTROLLER BOARD:
FRONT SIDE: 20-21672  PC1
WORLDTRONICS WT-2167L

CONTROL CHIP
        WT 2223
        9928CEG

There is a 0.1" spacing set of short jumper wires between the display
and controller board. 21 wires, then a space of approx. 0.6", and 5 more
wires, all in one line.

If I could identify which wire was the common, that would be good. Are
these displays a common pinout setup, if so could someone point me
toward info.

Thanking in advance.
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by Bob Blick-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Mon, 09 Nov 2009 12:17:17 -0500, "Carl Denk" <cdenk@...>
said:
> Wife's kitchen oven has a .5" high 4 character plus colon, 7 segment
> clock/timer display. The timer only beeps when time expires, there is no
> control of the oven. Several of the LED segments are dim, and it they
> are not consistent in brightness with time.

The clock chips I am familiar with use the internal resistance of the
segment drivers as the current limit. And they have only two commons,
steered by the 60 cycle AC. There are usually failsafe resistors on
those two commons as well as the steering diodes. Based upon your
symptoms(different segments dim at various times) those diodes and
resistors are the components I would focus on. A slim possibility is one
leg of the center-tapped transformer has gotten funky.

Cheers,

Bob

--
http://www.fastmail.fm - mmm... Fastmail...

--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by cdenk :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks for the reply, there is only a few resistors and diodes, I'll
just replace all of them. I think the markings are OK to determine
values. Probably the transformer voltages can be measured and educated
guess what to replace it with if need be. Probably I can check the
resistance of the transformer windings. I'm pretty sure it's center
tapped, then the resistance of both sides should be close. :)

Bob Blick wrote:

> On Mon, 09 Nov 2009 12:17:17 -0500, "Carl Denk" <cdenk@...>
> said:
>  
>> Wife's kitchen oven has a .5" high 4 character plus colon, 7 segment
>> clock/timer display. The timer only beeps when time expires, there is no
>> control of the oven. Several of the LED segments are dim, and it they
>> are not consistent in brightness with time.
>>    
>
> The clock chips I am familiar with use the internal resistance of the
> segment drivers as the current limit. And they have only two commons,
> steered by the 60 cycle AC. There are usually failsafe resistors on
> those two commons as well as the steering diodes. Based upon your
> symptoms(different segments dim at various times) those diodes and
> resistors are the components I would focus on. A slim possibility is one
> leg of the center-tapped transformer has gotten funky.
>
> Cheers,
>
> Bob
>
>  
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by Spehro Pefhany :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

At 04:57 PM 09/11/2009, you wrote:
>Thanks for the reply, there is only a few resistors and diodes, I'll
>just replace all of them. I think the markings are OK to determine
>values. Probably the transformer voltages can be measured and educated
>guess what to replace it with if need be. Probably I can check the
>resistance of the transformer windings. I'm pretty sure it's center
>tapped, then the resistance of both sides should be close. :)

You might want to also look at the power supply to see if the electrolytic cap
has died, which could result in the current to the display varying.

Try paralleling it with a known good one of similar value and same or
higher voltage rating if you don't have an ESR meter handy.

Best regards,

Spehro Pefhany --"it's the network..."            "The Journey is the reward"
speff@...             Info for manufacturers: http://www.trexon.com
Embedded software/hardware/analog  Info for designers:  http://www.speff.com



--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by cdenk :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks, good thought, probably have stock of replacement, and  easier to
change out, than reinstall and problem still there. Have looked at the
caps, and they aren't bulging or looking goofy. :) I'm only a hobbiest,
and don't have fancy test tools, just a couple of DMM's

Spehro Pefhany wrote:

> At 04:57 PM 09/11/2009, you wrote:
>  
>> Thanks for the reply, there is only a few resistors and diodes, I'll
>> just replace all of them. I think the markings are OK to determine
>> values. Probably the transformer voltages can be measured and educated
>> guess what to replace it with if need be. Probably I can check the
>> resistance of the transformer windings. I'm pretty sure it's center
>> tapped, then the resistance of both sides should be close. :)
>>    
>
> You might want to also look at the power supply to see if the electrolytic cap
> has died, which could result in the current to the display varying.
>
> Try paralleling it with a known good one of similar value and same or
> higher voltage rating if you don't have an ESR meter handy.
>
> Best regards,
>
> Spehro Pefhany --"it's the network..."            "The Journey is the reward"
> speff@...             Info for manufacturers: http://www.trexon.com
> Embedded software/hardware/analog  Info for designers:  http://www.speff.com
>
>
>
>  
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by Dwayne Reid :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

At 02:57 PM 11/9/2009, Carl Denk wrote:
>Probably I can check the resistance of the transformer windings. I'm
>pretty sure it's center
>tapped, then the resistance of both sides should be close. :)

Not necessarily.

The resistance will be similar if the windings were done
bifilar-style.  They can be significantly different if they are done
as one winding on top of the other - the outer winding uses more wire
and therefore has a higher resistance.

Your better bet is to measure the voltage from center-tap to each end
of the winding while under load.

dwayne

--
Dwayne Reid   <dwayner@...>
Trinity Electronics Systems Ltd    Edmonton, AB, CANADA
(780) 489-3199 voice          (780) 487-6397 fax
www.trinity-electronics.com
Custom Electronics Design and Manufacturing

--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by cdenk :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

OK, thanks again. It's a little hard to power up out of the appliance,
but, think that can happen. Should be able to get to it tomorrow, and
will report back.

Dwayne Reid wrote:

> At 02:57 PM 11/9/2009, Carl Denk wrote:
>  
>> Probably I can check the resistance of the transformer windings. I'm
>> pretty sure it's center
>> tapped, then the resistance of both sides should be close. :)
>>    
>
> Not necessarily.
>
> The resistance will be similar if the windings were done
> bifilar-style.  They can be significantly different if they are done
> as one winding on top of the other - the outer winding uses more wire
> and therefore has a higher resistance.
>
> Your better bet is to measure the voltage from center-tap to each end
> of the winding while under load.
>
> dwayne
>
>  
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by Vasile Surducan-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

BTW,
assuming you want to build it from scratch, how many IO pins will be
necessary for a
7 seg clock displaying:
dd:mm:yyyy     hh:mm:ss:tt   totaly16 digit
where the format displayed is day:month:year  hour:minute:second:milisecond

Vasile

On 11/9/09, Carl Denk <cdenk@...> wrote:

> OK, thanks again. It's a little hard to power up out of the appliance,
> but, think that can happen. Should be able to get to it tomorrow, and
> will report back.
>
> Dwayne Reid wrote:
> > At 02:57 PM 11/9/2009, Carl Denk wrote:
> >
> >> Probably I can check the resistance of the transformer windings. I'm
> >> pretty sure it's center
> >> tapped, then the resistance of both sides should be close. :)
> >>
> >
> > Not necessarily.
> >
> > The resistance will be similar if the windings were done
> > bifilar-style.  They can be significantly different if they are done
> > as one winding on top of the other - the outer winding uses more wire
> > and therefore has a higher resistance.
> >
> > Your better bet is to measure the voltage from center-tap to each end
> > of the winding while under load.
> >
> > dwayne
> >
> >
> --
> http://www.piclist.com PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by Bob Blick-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, 10 Nov 2009 10:05:06 -0800, "Vasile Surducan"
<piclist9@...> said:
> BTW,
> assuming you want to build it from scratch, how many IO pins will be
> necessary for a
> 7 seg clock displaying:
> dd:mm:yyyy     hh:mm:ss:tt   totaly16 digit
> where the format displayed is day:month:year
> hour:minute:second:milisecond

Only one pin if you use extra parts :) But if you want to directly drive
the display, and also choose a "standard" display you will have 8
segments plus as many digit commons as you have digits. So if you really
need milliseconds, that sounds like 9 digits and that would total 17
pins. Charlieplexing would use 10 pins but it's not as bright because
the duty cycle is smaller.

Cheerful regards,

Bob

--
http://www.fastmail.fm - Accessible with your email software
                          or over the web

--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Parent Message unknown Re: Help - LED Clock display

by Dwayne Reid :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

At 11:05 AM 11/10/2009, Vasile Surducan wrote:
>BTW,
>assuming you want to build it from scratch, how many IO pins will be
>necessary for a
>7 seg clock displaying:
>dd:mm:yyyy     hh:mm:ss:tt   totaly16 digit
>where the format displayed is day:month:year  hour:minute:second:milisecond
>
>Vasile

For me, this would use 3 or 4 i/o pins: clock, data1, data2,
latch.  Those 4 i/o pins would also be used for 4 or 6 push-buttons
as well.  Use another input pin for line frequency sample.

Milliseconds display wouldn't be updating at individual ms rate, though.

Code might fit into a 12f508, should fit into a 12f509 or 12f629.

But: that's me.

dwayne

--
Dwayne Reid   <dwayner@...>
Trinity Electronics Systems Ltd    Edmonton, AB, CANADA
(780) 489-3199 voice          (780) 487-6397 fax
www.trinity-electronics.com
Custom Electronics Design and Manufacturing

--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by Robert Rolf :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



Vasile Surducan wrote:

> BTW,
> assuming you want to build it from scratch, how many IO pins will be
> necessary for a
> 7 seg clock displaying:
> dd:mm:yyyy     hh:mm:ss:tt   totaly16 digit
> where the format displayed is day:month:year  hour:minute:second:milisecond
>
> Vasile

TWO. Clock and data.
Using 74HC595's as serial latches to drive the segments, and
a diode + RC to drive the LD pin off the clock time out.

Charlieplexing would also reduce the pin count from the usual
grid (22 pins. 11x11=121. Enough for 112 changeable LEDs in the display).


--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: Help - LED Clock display

by cdenk :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I don't know about building from scratch at this point, my time has been
kind of at a premium, and I probably would opt to just buy a new clock
board for the oven if it gets to that point. Just finished replacing all
the resistors and diodes (all 9 pieces) in the area. The old pieces all
seemed to check OK. added another capacitor to the existing with no
change. The 12 VAC centertap checked at 6.3 V and 6.6 V. Maybe a little
wider than I would have expected. The unit just got powered up a couple
of minutes ago, and looks OK so far, but has done that before. Will
report back in a day. Thanks everyone for their help.

Vasile Surducan wrote:

> BTW,
> assuming you want to build it from scratch, how many IO pins will be
> necessary for a
> 7 seg clock displaying:
> dd:mm:yyyy     hh:mm:ss:tt   totaly16 digit
> where the format displayed is day:month:year  hour:minute:second:milisecond
>
> Vasile
>
> On 11/9/09, Carl Denk <cdenk@...> wrote:
>  
>> OK, thanks again. It's a little hard to power up out of the appliance,
>> but, think that can happen. Should be able to get to it tomorrow, and
>> will report back.
>>
>> Dwayne Reid wrote:
>>    
>>> At 02:57 PM 11/9/2009, Carl Denk wrote:
>>>
>>>      
>>>> Probably I can check the resistance of the transformer windings. I'm
>>>> pretty sure it's center
>>>> tapped, then the resistance of both sides should be close. :)
>>>>
>>>>        
>>> Not necessarily.
>>>
>>> The resistance will be similar if the windings were done
>>> bifilar-style.  They can be significantly different if they are done
>>> as one winding on top of the other - the outer winding uses more wire
>>> and therefore has a higher resistance.
>>>
>>> Your better bet is to measure the voltage from center-tap to each end
>>> of the winding while under load.
>>>
>>> dwayne
>>>
>>>
>>>      
>> --
>> http://www.piclist.com PIC/SX FAQ & list archive
>> View/change your membership options at
>> http://mailman.mit.edu/mailman/listinfo/piclist
>>
>>    
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Re: WAV to PIC stored speech?

by Barry Gershenfeld-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I wanted to build a noise generator, the only criterion being that it
"sounded like noise".  I assumed a respectable pseudorandom sequence played
through a port bit would sound convincing, and I was right.  After looking
for simple LFSR's on the web, I located a "Fibonacci LFSR" routine on
Wikipedia.  It uses 2 16-bit variables, and returns a new number each time
you call it.  This is the entire routine:

int16 reg = 0xACE1;

int16 rand_fib(void)
{
    int16 bit;

    bit =((reg >> 0) ^
      (reg >> 2) ^
      (reg >> 3) ^
      (reg >> 5) ) & 0x0001;
    reg = (reg >> 1) | (bit << 15);

    return reg;
}

Apologies for whatever Gmail, email, and whatever else happens to the "code"
by time it reaches you.

Also good for "animating" new projects.  Apparently, hardware under
development that has the potential of doing something, is far less
impressive than that which randomly blinks lights, even if there's no real
code in it yet.
--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
< Prev | 1 - 2 | Next >