|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Starting with version 1.0.2, bcg729 has changed its API to add support
for G.729B, thus requiring us to adjust our function calls depending on
which version is installed.
When dealing with the new API, we merely need to add a few parameters to
disable all G.729B features, namely:
* On the decoder side: When `SIDFrameFlag` is not set, the decoder will
behave just like before, decoding the payload as a standard G.729A
voice frame (or concealing an erased frame). The other parameters,
`rfc3389PayloadFlag` and `bitStreamLength`, are only of use when
dealing with a SID frame sent as per RFC 3389, and are ignored if
`SIDFrameFlag` is not set.
* On the encoder side: When `enableVAD` is disabled, the encoder will
behave just like before, producing only standard G.729A voice frames.
The only API difference is the introduction of `*bitStreamLength`, to
return the length of the encoded frame (0, 2 or 10 bytes). In our
case, this will always be 10 bytes just like before; an assert() was
added to guarantee this.
Closes #104
|