Collaboration

What are the differences between g729r8, g729ar8, g729br8, and g729abr8 ?

The format of the code words generated by the 4 codecs are identical.

  • g729r8
  • g729ar8
  • g729br8
  • g729abr8

Annex ‘a’ is for the simplified versions
Annex ‘b’ is for the built in VAD versions

The g729br8 is g729r8 with built-in VAD implemented.

The “b” is annex B which provides built-in VAD. A SID (Silence Insertion Descriptor) frame will be generated when the line signal going from active to non-active. After that,no packets will be sent until the next talk-spurt begins, or another SID frame will be sent if the characteristics of the line noise changes.

The g729r8 and g729br8 codecs are not fully inter operable because g729r8 does not recognise the SID frame, but the g729br8 can decode the code words generated by g729r8. i.e. one way interop. g729r8 -> g729br8

The g729ar8 is a reduced complexity version of the g729r8 speech codec.

The “a” specifies the simplified versions. It is bit stream inter operable with the full version g729r8, i.e. a reduced complexity encoder may be used with a full implementation of the decoder, and vice versa. However,the performance of this codec defined in g729ar8 may not be as good as the full implementation of Recommendation G.729 in certain circumstances.

 

g729r8   = full g729 spec
g729br8  = g729r8 + built-in VAD

g729ar8  = simplified version of g729r8
g729abr8 = simplified g729r8 (g729ar8) + built-in VAD

g729r8  and g729ar8  are fully inter operable
g729br8 and g729abr8 are fully inter operable

 

Cisco Codec Options(IOS)
H(config-dspfarm-profile)#codec ?
 
  g711alaw      G.711 A Law 64000 bps
  g711ulaw      G.711 u Law 64000 bps
  g722-64       G722r64
  g723r53       G.723.1 5300 bps, Not supported on PVDM3
  g723r63       G.723.1 6300 bps, Not supported on PVDM3
  g729abr8      G.729ab 8000 bps
  g729ar8       G.729a 8000 bps
  g729br8       G.729b 8000 bps
  g729r8        G.729 8000 bps
  gsmamr-nb     GSMAMR codec
  ilbc          ILBC codec
  isac          ISAC codec
  pass-through  Stream Pass Through

Simon Birtles

I have been in the IT sector for over 20 years with a primary focus on solutions around networking architecture & design in Data Center and WAN. I have held two CCIEs (#20221) for over 12 years with many retired certifications with Cisco and Microsoft. I have worked in demanding and critical sectors such as finance, insurance, health care and government providing solutions for architecture, design and problem analysis. I have been coding for as long as I can remember in C/C++ and Python (for most things nowadays). Locations that I work without additional paperwork (incl. post Brexit) are the UK and the EU including Germany, Netherlands, Spain and Belgium.