DSPRelated.com
Forums

g729 codec

Started by seemaphalke August 12, 2002
Hi all,

I have ported the g729 code on c54x DSK, but Its not able to process
the test vectors by ITU correctly..
The same code is running correctly on Windows platform.
I suppose there is some problem with the data types..

Have somebody worked on this? Regards,
seema.




Thanks bobby and DongWon...

I have made change in the file "typedef.h" to support
data types world16 and word32 as:

typedef long Word32 ;
typedef int Word16 ;
typedef int Flag ; the program in running properly, but the results
tested for the test vector "ALGTHM.IN" file differs
from the file "ALGTHM.BIT" as given by ITU.
When I run the same code on pentium processor, it
gives the correct result for the same test vector.

Please guide me regarding this problem. Thanks,
--seema.

--- In c54x@y..., "seemaphalke" <seemaphalke@y...> wrote:
> Hi all,
>
> I have ported the g729 code on c54x DSK, but Its not able to
process
> the test vectors by ITU correctly..
> The same code is running correctly on Windows platform.
> I suppose there is some problem with the data types..
>
> Have somebody worked on this? > Regards,
> seema.




Actually I ever find this problem when I run ADPCM source code from SUN
microsystem, This source code works well in unix platform, but not in DSP

This is actually because of the different data type length. int in DSP is
16 bit wide, and in unix is 32 bit wide.

Eventough in that source code using data type short, that same as in unix
16 bit, still that program run incorrectly, and I found that in left shift
and than right shift like this,

((dqm << 7) >> exp)

if when dqm left after shift more than 16 bit wide, in unix it will
promote to int that has 32 bit long, but in DSP itu will still 16 bit
wide, this make this code truncated.

I fixed it using

((long)dqm << 7) >> exp

And works well

But for your problem I'm not sure that was the problem, because my friend
using source code G.729 from ITU-T works well

Sorry if I'm not helping you at all, and please correct me if I'm wrong

Thank's

Life should be a wow, shine and glow.....

On Tue, 13 Aug 2002, seemaphalke wrote:

> Thanks bobby and DongWon...
>
> I have made change in the file "typedef.h" to support
> data types world16 and word32 as:
>
> typedef long Word32 ;
> typedef int Word16 ;
> typedef int Flag ; > the program in running properly, but the results
> tested for the test vector "ALGTHM.IN" file differs
> from the file "ALGTHM.BIT" as given by ITU.
> When I run the same code on pentium processor, it
> gives the correct result for the same test vector.
>
> Please guide me regarding this problem. > Thanks,
> --seema.
>
> --- In c54x@y..., "seemaphalke" <seemaphalke@y...> wrote:
> > Hi all,
> >
> > I have ported the g729 code on c54x DSK, but Its not able to
> process
> > the test vectors by ITU correctly..
> > The same code is running correctly on Windows platform.
> > I suppose there is some problem with the data types..
> >
> > Have somebody worked on this?
> >
> >
> > Regards,
> > seema. >
> _____________________________________
> Note: If you do a simple "reply" with your email client, only the author of
this message will receive your answer. You need to do a "reply all" if you want
your answer to be distributed to the entire group.
>
> _____________________________________
> About this discussion group:
>
> To Join: Send an email to
>
> To Post: Send an email to
>
> To Leave: Send an email to
>
> Archives: http://www.yahoogroups.com/group/c54x
>
> Other Groups: http://www.dsprelated.com > ">http://docs.yahoo.com/info/terms/