ConfBridge/G729 extra encoder

Using ConfBridge (Asterisk 11/13), when you conference 1 G711 channel and 1 G729 channel Asterisk consumes 1 decoder and 1 encoder, which is OK because it needs to encode/decode between G729 and slin.

However, when conferencing 2 G729 channels it uses 2 decoders and 3 encoders (instead of 2). As a matter of fact, it will always use one extra encoder whenever there are more than one G729 channels in the conference. So, if there are 4 G729 channels, it uses 4 decoders and 5 encoders. Why does it matter? Because it forces you to buy an extra G729 licence.

According to Digium support, this is not a bug, it’s in there by design.

Does anybody know why this encoder is necessary?