The most versatile tool for converting between various audio formats is SOX ("Sound Exchange"). It can read and write various types of audio files, and optionally applies some special effects (e.g. echo, channel averaging, or rate conversion).
SOX recognizes all filename extensions listed above except ".snd", which would be ambiguous anyway, and ".wav" (but there's a patch, see below). Use type ".au" for NeXT ".snd" files. Mac and PC ".snd" files are completely described by these parameters:
The source for SOX, version 6, platchlevel 8, was posted to alt.sources, and should be widely archived. (Patch 9 was posted later and incporporates some important .wav fixes.) To save you the trouble of hunting it down, it can be gotten by anonymous ftp from wuarchive.wustl.edu, in the directory usenet/alt.sources/articles, files 7288.Z through 7295.Z. (These files are compressed news articles containing shar files, if you hadn't guessed.) I am sure many sites have similar archives, I'm just listing one that I know of and which carries a lot of this kind of stuff. (Also see the appendix if you don't have Internet access.)
A compressed tar file containing the same version of SOX is available by anonymous ftp from ftp.cwi.nl, in directory /pub/audio/sox<version>.tar.Z. You may be able to locate a nearer version using archie!
Ports of SOX:
- The source as posted should compile on any UNIX and PC system.
- A PC version is available by ftp from ftp.cwi.nl (see above) as pub/audio/sox5dos.zip; also available from the garbo mail server.
- The latest Amiga SOX is available via anonymous ftp to wuarchive.wustl.edu, files systems/amiga/audio/utils/amisox*. (See below for a non-SOX solution.) The final release of r6 will compile as distributed on the Amiga with SAS/C version 6. Binaries (since many Amiga users do not own compilers) will continue to be available for FTP.
- In particular, with SOX version 4 (or earlier), you have to specify "-t 8svx" for files with an .iff extension.
- When converting linear samples to U-LAW using the .au type for the output file, you must specify "-U" for the output file, otherwise you will end up with a file containing a NeXT/Sun header but linear samples -- only the NeXT will play such files correctly. Also, you must explicitly specify an output sampling rate with "-r 8000". (This may seem fixed for most cases in version 5, but it is still occasionally necessary, so I'm keeping this warning in.)
On Sun Sparcs, starting at SunOS 4.1, a program "raw2audio" is provided by Sun (in /usr/demo/SOUND -- see below) which takes a raw U-LAW file and turns it into a ".au" file by prefixing it with an appropriate header.
On NeXTs, you can usually rename .au files to .snd and it'll work like a charm, but some .au files lack header info that the NeXT needs. This can be fixed by using sndconvert:
SGI supports "soundfiler" (in /usr/sbin), a program similar in spirit to SOX but with a GUI. Soundfiler plays aiff, aifc, NeXT/Sun and .wav formats. It can do conversions between any of these formats and to and from raw formats including mulaw. It also does sample rate conversions.
Three shell commands are also provided that give the same functionality: "sfplay", "sfconvert", and "aifcresample" (all in /usr/sbin).
Mike Cramer's SoundZAP can do no effects except rate change and it only does conversions to IFF, but it is generally much faster than SOX. (Ftp'able from the same directory as amisox above.)
Newer versions of OmniPlay (see below) will also convert to IFF.
The Tandy uses a proprietary format, which can use compression (see appendix). Jeffrey L. Hayes <tvdog@delphi.com> writes:
There is in fact a Windows 3.1 sound driver for the Tandy 2500-series available from Radio Shack. My informant says: "Say that you have a 2500SX/33 and you lost your Windows Utilities/Drivers disk. The cost is
Version 2.00 of Conv2snd by Kenneth Udut by Kenneth Udut is now on Simtel. It converts any 8-bit mono unsigned PCM file to Tandy DeskMate .snd format. The new version recognizes RIFF WAVE headers and comes with a utility to convert .snd to .wav, Snd2wav.
In addition to the .snd format used by Sound.pdm, Tandy used an .sng format with Music.pdm for song files. .sng files are analogous to Amiga .mod files, but they contain only the sequencing information. The samples are expected to be in .snd files in the current directory for Music.pdm. It should be possible to convert .sng to .mod - when I get around to it!
I have a collection of programs and information on the Tandy DAC on Simtel: oak.oakland.edu:/pub/msdos/sound/tspak.zip. A program to convert Tandy .snd to .mod samples is included.
There are two Tandy .snd formats. The old format was used on the 1000's; the new format on the 2500's. The 2500's can read the old format.
Tandy now includes Soundblaster support in its machines. New Tandy's do not have the proprietary Tandy DAC.
Bill Houle sent the following list:
Popular commercial apps are indicated with a [*]. All other programs mentioned are shareware/freeware available from SUMEX and the various mirror sites, or check archie for the nearest FTP location.
MAC SOUND CONVERSION PROGRAMS
See also the section on players -- some players also do conversions.