Technical discussions about Freescale (Motorola) DSPs (including the DSP56000, DSP56300, DSP56600, 56800 DSPs).
|
I just bought a Motorola 56858 EVM and along with it came the Codewarrior software. I'm trying to implement a VoIP system. However, i have not had any prior experience with either the hardware or software. Can anyone give some advice as to a good place to start on such a project. Are there any open source websites that would be helpful for my purposes. |
|
|
|
dsp_devil wrote: > I just bought a Motorola 56858 EVM and along with it came the > Codewarrior software. I'm trying to implement a VoIP system. However, > i have not had any prior experience with either the hardware or > software. Can anyone give some advice as to a good place to start on > such a project. Are there any open source websites that would be > helpful for my purposes. To learn how to use CodeWarrior, I'd suggest you do a quick run through of the the DSP course on CodeWarrior <http://www.codewarrioru.com> It is self paced so you can do it all at once now. While it isn't going to show you exactly what you want it will help you see how CodeWarrior works and all of that. Ron Programming Motorola's DSP Course Description This course will provide you with the basic concepts of programming embedded systems. You will learn what digital signal processors (DSPs) are, and how their capabilities make them the core part of the embedded computer systems found in everyday devices such as consumer electronics. Along the way, you'll learn to program Motorola's DSP56824, DSP56803 and DSP56805 processors. You'll use Metrowerks' CodeWarrior development tools to write DSP programs in C. A built-in simulator program lets you write and debug DSP programs on your desktop PC without special hardware. When you've completed this course, you'll appreciate the skilled programming behind the smooth operation of that cellular phone or digital camera. -- Check out the codewarrior.* usenet newsgroups for assistance with your programming questions. Ron Liechty - - http://www.metrowerks.com |
|
|
|
Several years ago, I worked with software engineers who did "voice over Ethernet and long
haul networks", which is essentially voice over IP. Some suggestions based on that
experience:
(1) use a mu-law or a-law encoding to get 16 bit audio down to 8-bit audio to conserve
bandwidth and packet size This method is also robust in dealing with lost packets. If your use
CVSD or other low-bit rate encoding schemes for voice, you incur additional delays, require
additional processing power, and have problems with lost packets causing the decoder to lose
synchronization and reproduction accuracy, as well as having nasty clicks and squawks in the
received audio strearm.
(2) you will need a network interface--Ethernet is a good choice.
(3) Use of UDP as network protocol is effective.
(4) There are numerous articles in Circuit Cellar Ink magazine about connecting Ethernet
interfaces to microcontrollers--check issues in the last couple of years to give you a guide as
to how to attach an Ethenet IC to a DSP IC.
(5) You will need to buffer the audio on both the transmitting and receiving ends.
(6) You may wish to put about a 500 millisecond delay (or perhaps a lesser delay of
say,100 milliseconds) to allow time to build up the transmit buffer and give the receiver
buffer time to receive possibly delayed packets to ensure a continuous voice stream.
(7) an 8 KHz sample rate is usually adequate for voice--this is telephone toll quality for
speech, and supports a 3.3 KHz audio bandwidth. Wider bandwidths are achieveable with
faster sample rates, of course.
(8) a header or sub-header giving connectivity information may be helpful.
MW Ron <m...@metrowerks.com> wrote: dsp_devil wrote: |
|
I had a further thought about VoIP in general, and was wondering if there was any comment
on the following:
VoIP, as I understand it, runs in some form of Ethrnet style packet structure at its
most basic level.
Assuming these packets are not encoded or encrypted, wouldn't it be extremely easy for
some one to "wire tap" the users on a VoIP based system, whether voice telephone or data?
Assuming it's possible to read the packet headers, decoding the payload and figuring out who it
belongs to should be easy.
I know there are some actual telephone systems that are VoIP. I wonder if they deal
with this issue.
MW Ron <m...@metrowerks.com> wrote: dsp_devil wrote: |