General info | Getting started | Samples | Components reference | FAQ | Solutions |

Components reference


Real-time PCM audio stream playback using the sound card or other hardware device.

Specify PCM stream parameters before activating: PcmSamplesPerSec, PcmBitsPerSample and PcmNumChannels.


Dispatch interface for WaveOut component
void Flush()Completes processing of the last available data. Recommended to call before component closing
bool FormatChoose(BSTR Title, long Handle)Creates an ACM-defined dialog box that enables the user to select a waveform-audio format. Title parameter indicates dialog's title, Handle - parent handle of dialog window. If Handle is 0 then ActiveX component handle is used
void SetData(VARIANT* data)Writes data to input stream
long GetDeviceCount()Returns count of available wave devices
BSTR GetDeviceName(long DeviceId)Returns wave device name
long GetMixerId(long DeviceId, bool IsInput)Returns system mixer identifier for the list index
long GetVolume(long Channel)Returns current volume value. CalcVolume must be set to True. Result values range is 0...300 (logarithmic scale)
bool ActiveSet to true to activate (open) the component. All other properties should be set to proper values before activation. Set to false to deactivate (close) the component
bool AutoActivateWhen true tells the component it must activate consumer (if any) before activating itself. Same applies for deactivation. When false the component does not change the consumer state
bool CalcVolumeWhen true tells the component to calculate the audio volume of a stream coming into or from the component
long DataSizeInReturns data written into but not yet processed by the pipe
long DataSizeOutReturns data size available to read from the pipe
bool DeviceDirectIf this flag is specified, the ACM driver does not perform conversions on the audio data
long DeviceIdSpecifies device ID for the wave device
bool DeviceMappedThe deviceID parameter specifies a waveform-audio device to be mapped to by the wave mapper
BSTR DumpInputFile name to dump the component input data to
BSTR DumpOutputFile name to dump the component output data to
bool EnableDataProcessingWhen set to False suppresses any new data from being produced by the component itself. For example, WaveIn component will not stream any new data (but will remain Active). In addition, components like Codec and Resampler will not perform any data processing, passing the incoming data down to consumers without any modification
bool SetVolume(long Channel, long Volume)Modifies volume of PCM audio, 100 - no modify; 50 - 50% of original, 0 - silence (linear scale). Channel could be -1 (apply to all channels) or any channel number starting from 0.
bool IsFormatProviderWhen true the component will assign stream format to the consumer (if any). This simplifies the process of distributing stream format among linked components. For example WaveRiff component can assign PCM format to linked WaveOutDevice component, so WAVe file will be played back correctly
long OverNumSpecifies how many chunks of data component can store in input or output buffer, if data cannot be processed immediately. Every chunk holds 1/10 sec. of audio. Set this property to 0 to disable the buffer overflow checking (NOTE: be carefully, since this could lead to uncontrolled memory usage grow)
long PcmBitsPerSampleSpecifies number of bits per sample for wave device
long PcmNumChannelsSpecifies number of channels per sample for wave device
long PcmSamplesPerSecSpecifies number of samples per second for wave device
bool SyncEventsSpecifies whether events calls synchronized through main thread

See also...

Base interfaces

Wave processing components:
WaveIn, WaveCodec, WaveRiff, WaveMixer, WaveResampler, Equalizer, WaveMultiBandSplitter

Legacy IP components:
IpServer, IpClient, IpBroadcastServer, IpBroadcastClient, MediaGate, ConferenceServer

RTP streaming components:
IPReceiver, IPTransmitter, RTPConfClient, RTPConfServer

Misc. components:
VolumeControl, DisplayBands

VCX Library 3.0 © 2012 Lake of Soft
All rights reserved.