Skip to content
/ libg722 Public

The ITU G.722 codec, Copyright (C) 2005 Steve Underwood, Copyright (c) CMU 1993 Computer Science, Speech Group Chengxiang Lu and Alex Hauptmann

License

Notifications You must be signed in to change notification settings

sippy/libg722

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Marcello Carammasobomax
Marcello Caramma
and
Nov 12, 2024
ba275e0 · Nov 12, 2024

History

87 Commits
Nov 12, 2024
Aug 9, 2024
Jul 30, 2016
Jul 29, 2024
Jun 20, 2024
Jun 20, 2024
Jul 31, 2024
Mar 16, 2023
Nov 12, 2024
Mar 16, 2023
Jul 29, 2016
Apr 22, 2024
Mar 16, 2023
Jul 29, 2024
Apr 22, 2024
Mar 16, 2023
Apr 22, 2024
Mar 16, 2023
Mar 16, 2023
Mar 16, 2023
Mar 16, 2023
Mar 16, 2023
May 27, 2024
May 26, 2024
Jul 29, 2024
Apr 22, 2024
Apr 22, 2024

Repository files navigation

libg722

Build & Test

Introduction

The G.722 module is a bit exact implementation of the ITU G.722 specification for all three specified bit rates - 64000bps, 56000bps and 48000bps. It passes the ITU tests.

To allow fast and flexible interworking with narrow band telephony, the encoder and decoder support an option for the linear audio to be an 8k samples/second stream. In this mode the codec is considerably faster, and still fully compatible with wideband terminals using G.722.

History

The code was originally written by Milton Anderson milton@thumper.bellcore.com from BELLCORE, and has been modified by the Chengxiang Lu and Alex Hauptmann from the Speech Group, School of Computer Science, Carnegie Mellon University, to be fairly fast and efficient, while retaining high fidelity.

Steve Underwood steveu@coppice.org improved the code a lot later on and contributed it into several popular open source projects.

Himanshu Soni sonihimanshu@gmail.com has adjusted some coefficients to avoid over/under-flows in the decoder.

Phil Schatzmann phil.schatzmann@gmail.com has added cmake-glue and Arduino support.

Librarized by Sippy Software, Inc.

Build and Install library:

git clone https://github.com/sippy/libg722.git
cmake -B libg722/build -S libg722
make -C ibg722/build clean all test install

Install Python module from PyPy:

pip install G722

Build and Install Python module from source code:

git clone https://github.com/sippy/libg722.git
pip install libg722/

Pull library into your Docker container:

ARG BASE_IMAGE=debian:sid-slim
ARG LIBG722_IMAGE=sippylabs/libg722:latest-debian_sid-slim
FROM ${LIBG722_IMAGE} AS libg722
FROM ${BASE_IMAGE} AS build
COPY --from=libg722 /usr/local/lib/libg722.* /usr/local/lib/
COPY --from=libg722 /usr/local/include/g722* /usr/local/include/

License

This code is mostly Public Domain. Library test code is under BSD 2-clause license.

See LICENSE for copyright details and each individual file for specifics.

About

The ITU G.722 codec, Copyright (C) 2005 Steve Underwood, Copyright (c) CMU 1993 Computer Science, Speech Group Chengxiang Lu and Alex Hauptmann

Resources

License

Stars

Watchers

Forks

Packages

No packages published