WavConv Version 1.0 - Copyright 1992 James M. Curran Description: WavConv is a DOS utility for converting 8-bit sound files among many of the most common PC formats. It will convert a file from or to any of the following file types: Covox SpeechThing / VoiceMaster (VMFs), Microsoft Windows 3.1 (WAVs), DSound 2.0 (SNDs), SoundTool/ Wired for Sound (also SNDs but a different format), SoundBlaster (VOCs), and straight 8-bit data (which Covox calls VMDs and DSound calls SOUs). WavConv also allows several parameters of the sound file to be added or changed during the conversion, notably the Sampling frequency, and the Title of the sound clip. Finally, WavConv will list the following technical information about the file: File size, Sampling frequency, Play time and Title. (This can be displayed without building a new file) Syntax: WavConv [] [] - The name of the existing file you wish converted to a new format. This file is not altered; a second file is created. the extension defaults to .VMD if not given. - The name of the file to be created. It also indicates, by its extension, what type of file should be created. If not given, defaults to basename of infile with the extension indicated by the /T switch. /Tn Where n indicates what file type for the output file, and is one of the following: V - VMF (Covox VoiceMaster File) W - WAV (Windows WaveForm file) S - SND (SoundTool/Wired for Sound file) D - SND (DSound Sound File) C - VOC (SoundBlaster Sound file) X - VMD/SOU (straight 8-bit data - no header) If a /T switch is not given, the type will default to that indicated by the outfile extension. NOTE: o Either a Outfile name or a /T switch MUST be given. o If both an Outfile and a /T switch is given, they must be for compatible types. o If an outfile extension of .SND is used without a /T switch , "/TS" (SoundTool format) is assumed. o If a switch of /TX is given without an outfile, an extension of ".VMD" is used. Additional Switches: /Fnnnnn - Where nnnnn is the frequency (in Hz) that the file was recorded at. In most cases, this switch is NOT needed as this information is contained in the infile. However, VMDs and SOUs do not hold this value, so to build a new file out of an VMD, this switch must be given. The /F switch also allows you to overrule the value stored in the infile. /Nnnnnnn - Where nnnnn is the Name of the sound clip. May be up to 96 characters long. USE UNDERSCORES INSTEAD OF SPACES. They will be changed back into spaces internally. Names are: o REQUIRED for SNDs used with Wired for Sound; o Formally standardized in VOCs, o Informally standardized in WAVs; o Non standardized in VMFs; o Not stored at all in SOUs, VMDs, and DSound SNDs /I Don't convert, just display file information. Normally, as it's converting the file, WavConv will display the filename, file size, frequency, title, and approximate playing time of the sound clip. By specifying the /I switch, this information is displayed about the infile, and no conversion is attempted. /? Displays a short synopses of the command syntax. Switches for writing Covox VMF files only: /Sn Silence threshold of recording (0-5). default=0. /Rnnn Where nnn is the recording rate from 0-255. If omitted or 0, the default value of 132 is used. This value is also used for the playback rate unless the /P switch is used. /Pnnn Where nnn is the playback rate from 0-255. If omitted or 0, the record value is used. For writing WFSound SND files only: /Vnnn - Volume. Default = 10. /Hnnn - Shift. Default = 4. Special Notes: WAV Files: WAV files are used by Microsoft Windows 3.1. The format was detailed in Charles Petzold's Environments column in the February 11th, 1992 issue of PC Magazine. WavConv can only read the first "data" chunk of the file. As each chunk can be up to 16 megabytes long this should not pose a significant limitation. WavConv will only write one "data" chunk. For titles, WavConv employs the method described in that PC magazine column, specifically, a "INFO" chunk, with an "INAM" subchunk. (Mr. Petzold has said that this is a standard, if not widespread, method). For WavConv to be able to read a title from a WAV file, the "INFO" chunk must be the second chunk in the file, immediately following the "data" chunk. (The "INAM" sub-chunk may be anywhere in the "INFO" chunk). If a title is to be placed on a WAV file, WavConv will always write the "INFO" chuck second, with "INAM" as it's only subchunk. SND files (Wired for Sound / SoundTool) SND files of this type were designed by Martin Hepperle for use with his SoundTool program, which in turn used Aaron Wallace's DSound . They were later used by Wallace in Artisoft's Wired for Sound. Their format is documented in both those packages. These are the only files that contain a specifically designated title field. Wired for Sound requires that a title be present in the file for the sound clip to be listed with the others used by the program. If converting a file from a different format to an SND file with the intention of using it with Wired for Sound, make sure it either has a title (very few do), or use the /N switch to add a title. (Use the /I switch to check for a title before you do the actual conversion). SND files (DSound format) SND files of this type are the obsolete precursor to the SoundTool SND format. These were originally designed by Aaron Wallace for his DSound package, but their use is discouraged these days. They do NOT support a title at all. Any title on the infile will be lost when converting to an SND file. They are also difficult for WavConv to positively identify, so misidentification is possible if an SND is the infile. SPECIAL NOTE: Attempting to create a SoundTool SND file from a DSound SND file will fail, if both files have the same base name (since the extension are the same as well). This is the only instance where the infile is in jeopardy (it would probably be erased). For example: WAVCONV myfile.snd /TS NO!! WAVCONV myfile.snd yourfile.snd OK VOC files VOC files were designed by Creative Media for use with their SoundBlaster board, and is documented by them. Instead of storing the actual sampling frequency, VOCs only store a one byte code which approximates it. This often varies slightly from the actual frequency. When converting from a VOC to some other format, you may wish to adjust the sampling frequency, by using the /F switch. The /I switch will have WavConv tell you the frequency stored in the VOC file. WavConv will only process the first data block of the file. (Few have more than one). WavConv assumes when reading a VOC file, that if the second block is a type 05 (ASCII Text) then it contains the title for the file. This is where WavConv stores the title, when it writes a VOC file. VMF files: VMF files were designed by Covox, for use by their Voice Master board, and is documented by them. Like the VOC files, instead of storing the actual sampling frequency, VMFs only store a one byte code which approximates it. This often varies slightly from the actual frequency. When converting from a VMF to some other format, you may wish to adjust the sampling frequency, by using the /F switch. The /I switch will have WavConv tell you the frequency stored in the VMF file. As originally design VMFs had no provisions for a file title. However, WavConv annexes a piece of an empty "reserved for future use" block for this purpose. VMD & SOU files. These are the extensions used by, respectively, Covox and DSound, for files which are pure data with no header information. To create a files out of one of these types, you MUST specify the sampling rate using the /F switch. WavConv will also create these types of file, however, all on the operating parameters stored in the infile will be lost. Fine Print: This program is copyright 1992, by James M. Curran. It is being released to the general public free of charge, for the betterment of modern civilization. It is being released as "Gollyware", that is, you are required to say "Golly, James is a nice guy" every time you use it. All comments, bug reports, future enhancement requests, death threats, and/or offers of employment generated by program should be directed to me at: James M. Curran 18 John St., Apt 2B Bloomfield, NJ 07003-5149 CompuServe ID: [72261,655] If you're interested in a reply, it's best to use CISmail. That I check and respond to nearly every day. Responses via the US Mail could take days (or months!). As is traditional, I disavow any warranties, either expressed or implied. ("Whatta Would for Nothin' ? Rubber Biscuit ?") I'm particularly interested in adding as many different filetypes as possible to this. If you know of a sound file type in use that not included here, and know the internal format of it (or know where I can find it), please send that information in... Release History: 23-Jun-92 Ver 1.0 - Handles VOCs, VMFs, SNDs, SOU, and VMDs,