[Asterisk-Users] A software FAX modem

Brian West brian at bkw.org
Mon Oct 20 10:20:46 MST 2003


Good job.. now that the cat is out of the bag i'm sure you will get alot
of requests or ideas and maybe code!

bkw

On Mon, 20 Oct 2003, Steve Underwood wrote:

> Hi all,
>
> I would like to announce the availability of an initial test version of
> a totally software FAX facility, suitable for use with Asterisk. This is
> a first public test release, so don't expect a solid polished product
> just yet. People have shown interest in what I am doing, and here is the
> evidence that it is not vapourware.
>
> If the notion of a software FAX machine is new to you, what I have
> basically implemented is this. Asterisk contains software to transcode
> GSM to A-law, A-law to u-law, and so on. These are DSP functions
> implemented on the server's main CPU(s), with no hardware support from
> special DSP processors or cards. What I have done is similar. I have
> implemented the DSP for the key FAX modem standards in software for the
> server. Without any special DSP hardware, this can send and receive
> faxes through the PSTN interfaces. It has been tested with an E400P card
> so far. However, it should work for calls passing through the T100P,
> T400P, E100P, E400P, TE410P, X100P, or TDM40P cards, using any of the
> available signalling methods. Don't expect it to work for calls received
> by VoIP - its a modem, not a miracle worker.
>
> You can find the software at <http://www.opencall.org>. It currently
> consists of two parts:
>
> The main part is spandsp, a DSP library for telephony at 8000 samples
> per second. This contains a number of functions. Some are complete, and
> some are works in progress. The FAX facility is part of this library.
> The FAX facility consists of implementations of V.21 (complete, but not
> optimised for speed), V.29 (functional, but not optimised for speed or
> bad lines), V.27ter (only the tx side is anything like complete), T.30 -
> the fax protocol (somewhat messy, and still in need of work to make it
> robust), and T.4 (fax compression). The T.4 handling makes use of
> libtiff, so you will need libtiff installed on a machine to use spandsp.
> You will also need libxml2 - the FAX facility doesn't use it, but some
> other parts of spandsp do.
>
> The other part is a pair of very elementary demonstration apps for
> Asterisk, similar to the record and play apps, but for fax TIFF files.
> Why TIFF? TIFF is *the* standard for computer fax. Few other graphics
> file formats allow for multi-page documents. Apart from some dumb
> proprietary file formats (e.g. WinFAX) from the early 90s, I've never
> seen computer fax handled in any other way. If someone would like to
> adapt the Asterisk voicemail2 app to turn received faxes into attached
> e-mails, this would be a good thing. :-)
>
> I have only implemented the early features of the FAX standards, where
> any patents have long since expired. If you look at the ITU's patent
> declaration database you will see a long list of patent claims against
> the fax standards. Note these apply to features added during the life of
> the standards, and most apply to things like colour fax, which few
> people use. The basic 9600bps V.29 fax spec. is more than 20 years old,
> so no patents can still be in force for these original features. Is this
> limiting? Not really. Only a small percentage of fax machines seem to
> support many of the newer features. Only a few simple to implement
> things, like super-fine mode, have been added to most machines.
>
> The files for spandsp all say GPL. I have given an additional disclaimer
> to Digium, so the code can be merged into Asterisk, once it is a bit
> more polished and stable. In the meantime it is easy to use as an
> external library.
>
> If it doesn't work for you, don't be too surprised. Feed back anything
> you find, and lets try to make things better. I suspect, from experience
> and things I have read on the web, that a lot of fax machines do not
> follow the standards very well. In that case, a number of tweaks are
> probably needed before this new software is adequately tolerant of the
> behaviour of real world machines.
>
> Enjoy,
> Steve
>
>
> _______________________________________________
> Asterisk-Users mailing list
> Asterisk-Users at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-users
>



More information about the asterisk-users mailing list