Test Vectors Associated to Rec. ITU-T G.729

[The signals available here constitute part of the corresponding ITU-T Recommendations and are protected by copyrights laws.
You may use them during product or service development for the purpose of implementing the corresponding ITU-T Recommendations.]


    Test vectors for fixed-point versions (main body, Annexes A, B, D to I, Appendices II and III) are available.
    Each directory contains data files for coder installation verification together batch files.

FileDownload
Test vectors to validate the correct execution of the G.729 ANSI-C software.

NOTE that these vectors are not part of a validation procedure. It is very difficult to design an exhaustive set of test vectors. Hence passing these vectors should be viewed as a minimum requirement, and is not a guarantee that the implementation is correct for every possible input signal.

G_729_tv.zip
G.729 Annex A test vectors to validate the correct execution of the ANSI-C software for fixed-point implementation of reduced complexity CS-ACELP at 8 kbit/s.

Annex A provides the high level description of a reduced complexity version of the G.729 speech codec. This version is bit stream-interoperable with the full version, i.e., a reduced complexity encoder may be used with a full implementation of the decoder, and vice versa. However, implementers of the codec defined in this annex should be aware that the performance of this codec may not be as good as the full implementation of the main body of G.729 in certain circumstances.

The reduced complexity version of the codec has been developed for multimedia simultaneous voice and data applications, although the use of the codec is not limited to these applications.

The description of the codec is similar to that of the full implementation of the main body of G.729. This annex describes the changes to the full implementation which have been made in order to reduce the codec algorithmic complexity. For those parts of the algorithm which have not been changed, this annex refers to the appropriate clause of the main Recommendation.

G_729_AnnexA_tv.zip
G.729 Annex B test vectors to validate the correct execution of the ANSI-C software for fixed-point implementation of CS-ACELP at 8 kbit/s with DTX functionality.

Annex B provides a high level description of the voice activity detection (VAD), discontinuous transmission (DTX) and comfort noise generator (CNG) algorithms. These algorithms are used to reduce the transmission rate during silence periods of speech. They are designed and optimized to work in conjunction with [ITU-T V.70].
[ITU-T V.70] mandates the use of Annex A speech coding methods. However, when it is desirable, the full version of G.729 can also be used to improve the quality of the speech. The algorithms are adapted to operate with both the full version of G.729 and Annex A.

G_729_AnnexB_tv.zip
G.729 Annex D test vectors to verify the correct execution of the ANSI-C software for fixedpoint implementation of CS-ACELP at 6.4 kbit/s and 8 kbit/s.

It contains : input files (testfile.raw), bitstream files (testmid.1, testmid.2, testmid.3) and decoder output files (testout.1, testout.2, testout.3).

Annex D : +CS-ACELP speech coding algorithm at 6.4 kbit/s
Annex D is intended as a lower rate extension to the algorithm in the full version of G.729, and is specified to increase the flexibility of the algorithm in the full version of G.729, e.g., to handle overload conditions. It does not provide the same level of quality as does the algorithm in the main body of G.729, but for most conditions it provides significantly higher quality than G.726 at 24 kbit/s. However, for high levels of car noise, the algorithm could have some performance limitations.

G_729_AnnexD_tv.zip
G.729 Annex E test vectors to verify the correct execution of the ANSI-C software for fixed-point implementation of CS-ACELP at 8 kbit/s and 11.8 kbit/s.

Annex E : CS-ACELP speech coding algorithm at 11.8 kbit/s
Annex E provides the high-level description of the higher bit-rate extension of G.729 designed to accommodate a wide range of input signals, such as speech, with background noise and even music.

G_729_AnnexE_tv.zip
G.729 Annex F test vectors to verify the correct execution of the ANSI-C software for fixed-point implementation of CS-ACELP at 6.4 kbit/s and 8 kbit/s with DTX functionality.

Annex F provides the DTX functionality for the 6.4 kbit/s CS-ACELP algorithm of Annex D using the basic algorithm in Annex B.
It presents a standard way of performing this integration and expansion of the functionality thereby guiding the industry and ensuring a standard speech quality and compatibility worldwide. The integration has been performed with focus on several constraints in order to satisfy the needs of the industry:
1) Bit-exactness with the main body and individual annexes.
2) Minimum additional program code, memory, and complexity usage.
3) Stringent quality requirements to new functionality in line with quality and application areas of the according standard annexes.

G_729_AnnexF_tv.zip
G.729 Annex G test vectors to verify the correct execution of the ANSI-C software for fixedpoint implementation of CS-ACELP at 8 kbit/s and 11.8 kbit/s with DTX functionality.

Annex G provides the DTX functionality for the 11.8 kbit/s CS-ACELP algorithm of Annex E using the basic algorithm in Annex B.
It presents a standard way of performing this integration and expansion of the functionality thereby guiding the industry and ensuring a standard speech quality and compatibility worldwide. The integration has been performed with focus on several constraints in order to satisfy the needs of the industry:
1) Bit-exactness with the main body and individual annexes.
2) Minimum additional program code, memory, and complexity usage.
3) Stringent quality requirements to new functionality in line with quality and application areas of the according standard annexes.

G_729_AnnexG_tv.zip
G.729 Annex H test vectors to verify the correct execution of the ANSI-C software for fixed-point implementation of CS-ACELP at 6.4 kbit/s, 8 kbit/s and 11.8 kbit/s without DTX functionality.

Annex H defines the necessary mechanisms for switching operation between 6.4 kbit/s Annex D and 11.8 kbit/s Annex E. Previously, only one switching from 8 kbit/s G.729 was specified.
It presents a standard way of performing this integration and expansion of the functionality thereby guiding the industry and ensuring a standard speech quality and compatibility worldwide. The integration has been performed with focus on several constraints in order to satisfy the needs of the industry:
1) Bit-exactness with the main body and individual annexes.
2) Minimum additional program code, memory, and complexity usage.
3) Stringent quality requirements to new functionality in line with quality and application areas of the according standard annexes.

G_729_AnnexH_tv.zip
G.729 Annex I test vectors to verify the correct execution of the ANSI-C software for fixed-point implementation of CS-ACELP at 6.4 kbit/s, 8 kbit/s and 11.8 kbit/s with discontinuous transmission (DTX) functionality.

Annex I describes the integration of G.729 main body with Annexes B, D and E.
It presents a standard way of performing this integration and expansion of the functionality thereby guiding the industry and ensuring a standard speech quality and compatibility worldwide. The integration has been performed with focus on several constraints in order to satisfy the needs of the industry:
1) Bit-exactness with the main body and individual annexes.
2) Minimum additional program code, memory, and complexity usage.
3) Stringent quality requirements to new functionality in line with quality and application areas of the according standard annexes.

G_729_AnnexI_tv.zip
Appendix II test vectors for G.729 Annex B enhancements in voice-over-IP applications – Option 1

Although Annex B, defines a VAD/DTX/CNG mechanism, some applications require that a different VAD algorithm be used, because of specific constraints. In particular, this is the case for VoIP applications, where the algorithm described in Annex B shows bad performance under the following conditions:
1) Undesired performance for input signals starting at levels below 15 dB.
2) Annoying breathing-like noise in CNG phase.
3) VAD bad performance under noisy conditions.
4) Additionally, wrong variable initialization has been depicted in the current Annex B.

This appendix deals with corresponding proposals to correct points 1) to 4) as described above, as an alternative to the current Annex B.
The use of this appendix is intended for VoIP systems where overall quality is considered as more important than optimization of the bandwidth.

G_729_AppII_tv.zip
Appendix III test vectors for G.729 Annex B enhancements in voice-over-IP applications – Option 2

Annex B provides a silence compression scheme for G.729 implementations that are optimized for terminals conforming to [ITU-T V.70]. The silence compression scheme includes voice activity detection (VAD), discontinuous transmission (DTX), silence insertion description (SID), and comfort noise generation (CNG). The application of this Recommendation has expanded beyond V.70 devices and is commonly utilized in voice packet networks (e.g., VoIP), which also require voice activity detection and discontinuous transmission algorithms for bandwidth-efficient communication. Several issues were reported with respect to the operation of Annex B for voice packet networks. This Appendix describes a solution to the problems reported in Annex B, providing improved voice quality while maintaining high bandwidth efficiency, suitable for voice packet-network applications.
This appendix addresses in particular the following issues noted for Annex B:
1) Initialization of background noise statistics at the beginning of the call and updates of background noise statistics when the background noise characteristics change.
2) Early estimation of SID parameters which generate breathing-like noise in sharp-edge energy offsets.
3) Classification of portions of very long and high-level tonal signals as "inactive speech".
4) Frequent changes between "inactive speech" and "active speech" for particular types of background noises.
5) Frequent SID update frames, which is undesirable for VoIP applications where the packet overhead information is considerably larger than the payload for such frames.

G_729_AppIII_tv.zip