G.729 é um algoritmo de compressão de dados de áudio desenvolvido para a codificação digital da fala em uma taxa de transmissão de 8 kbit/s. O padrão foi desenvolvido pela União Internacional de Telecomunicações (ITU-T) e utiliza a técnica de predição linear com excitação por código (CS-ACELP, Conjugate-Structure Algebraic Code-Excited Linear Prediction).

Cada quadro de áudio possui duração de 10 milissegundos, correspondendo a 80 amostras de áudio quando utilizado em uma frequência de amostragem de 8 kHz. Cada quadro gera um pacote de 80 bits, resultando na taxa constante de 8 kbit/s.

História

A recomendação G.729 foi aprovada pelo ITU-T em 1996 como uma alternativa de baixa taxa de bits para aplicações de telefonia digital e transmissão de voz sobre redes de pacotes. Seu objetivo era fornecer qualidade de voz semelhante à telefonia convencional utilizando significativamente menos largura de banda do que codecs como o G.711.

Ao longo dos anos, o padrão recebeu diversas revisões e anexos que ampliaram suas funcionalidades e melhoraram sua interoperabilidade.

Funcionamento

O G.729 utiliza um modelo de produção da fala baseado em predição linear. Em vez de transmitir diretamente as amostras de áudio, o codec transmite um conjunto de parâmetros que descrevem matematicamente o sinal de voz.

Entre os principais parâmetros codificados estão:

coeficientes de predição linear; ganho do sinal; atraso do tom (pitch); vetor de excitação algébrica.

Essa abordagem permite reduzir significativamente a quantidade de dados transmitidos mantendo inteligibilidade elevada para voz humana.

Variantes

O padrão possui diversos anexos oficiais.

G.729A

O G.729A reduz a complexidade computacional do codificador mantendo compatibilidade com o fluxo de bits do G.729 original. Tornou-se uma das versões mais utilizadas em equipamentos VoIP comerciais.

G.729B

O G.729B acrescenta um mecanismo de detecção de atividade de voz (Voice Activity Detection, VAD), geração de ruído de conforto (CNG) e transmissão descontínua (DTX), reduzindo ainda mais o consumo de banda durante períodos de silêncio.

G.729AB

O G.729AB combina as características do G.729A com os recursos do Anexo B.

Aplicações

O codec G.729 foi amplamente empregado em sistemas de:

VoIP; Telefonia IP; centrais PABX IP; gateways de voz; equipamentos de videoconferência; redes corporativas de comunicação.

Sua baixa taxa de transmissão tornou-o especialmente útil em enlaces WAN de capacidade limitada.

Qualidade de áudio

Embora utilize apenas 8 kbit/s, o G.729 apresenta qualidade de voz considerada elevada para aplicações telefônicas. Em avaliações subjetivas (MOS – Mean Opinion Score), seu desempenho situa-se próximo ao do codec G.711, utilizando aproximadamente um oitavo da largura de banda.

Por outro lado, o codec não é adequado para música ou áudio de alta fidelidade, pois foi otimizado especificamente para sinais de fala.

Uso em VoIP

Em redes VoIP, o G.729 normalmente é encapsulado em pacotes RTP sobre UDP e IP. O codec foi padronizado para utilização em protocolos como SIP e H.323, tornando-se um dos codecs mais comuns na telefonia IP durante os anos 2000.

Licenciamento

Durante muitos anos, o uso comercial do G.729 esteve sujeito ao pagamento de royalties devido às patentes relacionadas à tecnologia CS-ACELP. As licenças eram administradas por um consórcio de empresas detentoras das patentes.

Com a expiração das principais patentes em diversos países ao longo da década de 2010, diversos projetos de software livre passaram a oferecer implementações do codec sem restrições de royalties, dependendo da legislação local.

Comparação com outros codecs

Codec Taxa Frequência Aplicação G.711 64 kbit/s 8 kHz Telefonia PCM G.729 8 kbit/s 8 kHz VoIP G.722 48–64 kbit/s 16 kHz Áudio de banda larga Opus 6–510 kbit/s até 48 kHz Voz e multimídia

Ver também

VoIP G.711 G.722 Opus (codec) RTP SIP Predição linear com excitação por código

Referências

Categoria:Codecs de áudio Categoria:Normas ITU-T Categoria:VoIP