IAXmodem is a software modem written in C that uses an IAX channel (commonly provided by an Asterisk PBX system) instead of a traditional phone line and uses a DSP library instead of DSP hardware chipsets.
To accomplish this, then, IAXmodem interfaces an IAX library known as libiax2 with a DSP library known as spandsp, and then IAXmodem interfaces the DSP library with a tty device node for interfacing with modem applications.
IAXmodem comes with a copy of both libiax2 and spandsp. Both of these libraries have had bugs fixed and enhancements added for specific use with IAXmodem. All of these changes have been submitted to the library authors and will likely be committed to those source repositories eventually. However, in most instances the versions here should be used.
Currently supported plaforms are GNU/Linux on x86 hardware.
IAXmodem should usually be installed either on the same machine as the Asterisk server or on a system that is very close to the Asterisk server on a controlled network. Do not even bother trying to use IAXmodem to send faxes through your VoIP provider. Unless you and your provider have some special connectivity it won't work reliably, if at all.
Please see the FAQ file for more information regarding IAXmodem.