[Asterisk-Dev] Codec test suite, Intel's G.729 Implementation

Adam Hart adam at teragen.com.au
Wed Sep 15 16:04:06 MST 2004


> I've just been evaluating the G.729 implementation sample from Intel's 
> IPP libraries (complete G.729 sample can be downloaded from 
> http://www.intel.com/software/products/ipp/speech_code.htm).  It appears 
> Intel has made this code available free for evaluation purposes.
> 
> Is the Digium G.729 code based on this implementation?
> 
> Is there a way I can benchmark and/or compare the Digium implementation 
> against the Intel code?  Is there a test harness for Asterisk codecs?

Do 'show translation' in asterisk to show what each codec uses for a 
encode and decode - it's based on 1 second of data. You could adjust 
your intel program to do the same or just work out the maths.

> 
> Also, is there some way to run multiple simultaneous threads of the 
> Digium G.729 codec in a test environment without having to license every 
> thread?

I doubt it, forking might work though

> 
> The Intel codec works with G.729 in a 'bitstream' format that is 
> described in the ITU G.729 test suite, can Asterisk operate with this 
> type of data and convert it to RTP format?

Yes, it should be quite easy to plug in Intel's implementation

> 
> So far, on my P4 2.8GHz (single CPU) I've been able to simultaneously 
> run 80 threads of the Intel code and complete encoding fast enough for 
> real time.  I suspect that 80 threads is the same as just 40 phone 
> calls, because a phone call goes is full duplex.  Is anyone in a 
> position to try this test on a dual Xeon 3.2GHz?
> 

a phone call requires a decode and an encode - the decode would be far 
less intensive (see show translation). You've also got to consider 
quality as your cpu usage approcates 100%.

-Adam



More information about the asterisk-dev mailing list