• Home
  • History
  • Annotate
  • current directory
Name Date Size #Lines LOC

..16-Aug-2019-

include/H16-Aug-2019-

src/H16-Aug-2019-

test/H16-Aug-2019-

AUTHORSH A D08-Oct-201575 53

Android.mkH A D08-Oct-20151.2 KiB3730

Bcg729Config.cmake.inH A D20-Jul-20172.4 KiB6561

COPYINGH A D08-Oct-201517.6 KiB341281

ChangeLogH A D08-Oct-20150

Makefile.amH A D16-Mar-2017358 1511

NEWSH A D20-Jul-2017179 107

README.mdH A D20-Jul-20172.7 KiB7647

autogen.shH A D16-Mar-2017696 4028

bcg729.spec.inH A D16-Mar-20171 KiB5542

config.h.cmakeH A D16-Mar-20171.4 KiB3330

configure.acH A D16-Mar-20171.5 KiB7259

libbcg729.pc.inH A D08-Oct-2015260 119

README.md

1Bcg729
2======
3
4About bcg729
5------------
6
7Bcg729 is an opensource implementation of both encoder and decoder of the ITU G729 Annex A/B speech codec.
8
9The library written in C 99 is fully portable and can be executed on many platforms including both ARM and x86 processors.
10libbcg729 supports concurrent channels encoding/decoding for multi call application such as conferencing.
11This project was initially developed as part of Mediastreamer2, the Linphone's media processing engine.
12This is why it also contains the glue to be integrated in Linphone/Mediastreamer2.
13
14Licensing
15---------
16
17The source code is licensed under GPLv2. ITU G729 Annex A/B were offically released October/November 1996 (https://www.itu.int/rec/T-REC-G.729),
18hence all patents covering these specifications shall have expired in November 2016.
19Patent pool administrator confirmed most licensed patents under the G.729 Consortium have expired (<http://www.sipro.com/G729.html>).
20
21Compilation
22-----------
23
24### Dependencies
25
26No dependency is requested.
27
28
29### Build procedure
30
31Building by Autotools way is deprecated. Use [CMake][cmake-website] to configure the source code.
32
33	cmake . -DCMAKE_INSTALL_PREFIX=<prefix> -DCMAKE_PREFIX_PATH=<search_prefixes>
34
35	make
36	make install
37
38
39### Supported build options
40
41* `CMAKE_INSTALL_PREFIX=<string>` : install prefix
42* `CMAKE_PREFIX_PATH=<string>`    : column-separated list of prefixes where to look for dependencies
43* `ENABLE_SHARED=NO`              : do not build the shared library
44* `ENABLE_STATIC=NO`              : do not build the static library
45* `ENABLE_TESTS=NO`               : do not build non-regression tests
46
47
48### Note for packagers
49
50Our CMake scripts may automatically add some paths into research paths of generated binaries.
51To ensure that the installed binaries are striped of any rpath, use `-DCMAKE_SKIP_INSTALL_RPATH=ON`
52while you invoke cmake.
53
54Tests suite
55-----------
56
57- Tests are defined for each functional bloc (more or less matching a source file)
58  and for global encoding/decoding
59
60- Use `-DENABLE_TESTS=YES` to compile with tests To run all tests available in the test directory, run testCampaignAll from test directory
61
62- Input tests pattern have been generated by ITU code using ITU tests patterns.
63  The test patterns are not part of this repository but can be downloaded [here][bcg729-patern]. However, the first
64  run of `make check` will get them for you.
65
66- To run partial test, use perl executable `testCampaign` in the test directory.
67  `./testCampaign <functional bloc name>`
68  You must first download the tests patterns using `make check` or manually
69
70
71---------------------------------------
72
73
74[bcg729-patern]: http://www.belledonne-communications.com/downloads/bcg729-patterns.zip
75[cmake-website]: https://cmake.org/
76