Function | Package: cg | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 9.0 Unrevised from 8.2 to 9.0. 8.2 version

## mci-set-wave-options

Arguments: device &key bits-per-sample samples-per-second channels notify-p wait-p

Sets the audio quality and other options for recording a wave file. This function is necessary for decent quality audio in MCI, since the default quality is rather low.

Each of the options bits-per-sample, samples-per-second, and channels may be either `nil` to not modify that attribute, or else an integer indicating a new value for that attribute. The values that have a desirable effect may depend on the sound card's driver, and it is not clear how to determine programmatically what values will work well.

bits-per-sample is the number of bits used to store each sample. The default is 8 (low quality). 16 is audio-CD quality and is recommended.

samples-per-second is the number of samples that are recorded for each second of sound. The default is 11025 (low quality). A common high-quality sampling resolution that has worked well in our brief tests on a basic sound card is 48000. Audio CDs use 44100, though in our tests on a basic sound card this value did not produce high-quality audio (perhaps the proper value is not exactly 44100). Some applications that burn audio CDs require that the wave file already be in 16-bit, 44.1k resolution format though.

channels (when non-`nil`) may be either 1 for a monophonic recording or 2 for a stereo recording.

If this function is called, it must be called before any recording is done on the device, or after mci-delete is called to erase everything that has been recorded on the device.

device is an `mci-wave-audio` instance. If wait-p is true, then this function does not return until the operation is complete; otherwise the function returns immediately and the operation is performed asynchronously. If notify-p is true, then mci-notify is called when the operation has completed.

See the sample recording session at mci-record for more information.

See cg-mci.htm for information about MCI support in Common Graphics.

Copyright (c) 1998-2019, Franz Inc. Oakland, CA., USA. All rights reserved.
This page was not revised from the 8.2 page.
Created 2012.5.30.

|  | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 9.0 Unrevised from 8.2 to 9.0. 8.2 version