Well for starters, I used a Linksys PAP device with the fax machine plugged into its FXS port. The PAP was registered to my PBX/VOIP server. I was using ULAW codec aswell. I never had a single error recieving faxes, I only had the problem sending them.
Now I must add that I didnt spend much time troubleshooting the problem, so it may have been easy to resolve. At the time I was really involved with the diaplan setup. I gave up to soon perhaps.
I say give it a shot, If your jitter is low and you have a clean channel with enough bandwidth it should work.
Installing the G.729 codec is straightforward, you simply add the required pieces of software to the machine running asterisk. As I understand things the codec is restricted to that machine only after registration. So you download, Run the registration tools. Done.
This is the way its done with digium purchased codecs.
Now as far as G.729 being 8kb/s, its true. The payload is 8kb/s but there is ip overhead to consider, and from what ive gathered with G.729 the header information can outweigh the payload. I find that funny.
But i am currently using GSM and on the wireless bridge that the voip crosses over, and on the wireless device it has a throughput graph. it says it uses 80kbps? not 20?
Lets look at this logically. As far as the GSM codec consuming 80kbps, That is likley two channels being used concurrently. You know both the up and down streams being measured as one. If your priorities are set right you should also be using the G.729 codec first. Now how the codec gets divied out probably goes to what calls for it first. Would it be you, When you pick up your phone and make a call. Or, Would it be asterisk using it to answer an incoming call from a provider, whom themselves are using G.729. Asterisk does not need G.729 licenses to pass the media along it only needs them when you transcode.
For instance if Asterisk is not transcoding the media,You could use two G.729 enabled endpoints in a call and no licenses would be required.