Components reference
Reads audio stream from WAV or MPEG file, producing PCM/MPEG stream, or creates and writes new WAV file.
Set FileName property to valid file name.Set IsInput to true if you wish to read from a file. Set IsInput to false if you wish to write (create) into a file.Set Active to true to start reading or writing. Set Active to false to stop reading, or close the produced file.Set RealTime to true if you wish the audio data read from file will be available in real-time manner (otherwise it will be read as fast as possible).
ImplementsIWaveRiff | default |   |
IvcproWaveRiffEvents | default | source |
IvcproProvider |   |   |
IvcproConsumer |   |   |
Methods | |
void OnDataAvailable() | This method is fired every time component has produced or received new chunk of data. Use this event to access the stream data |
void OnStreamIsDone() | This method is fired when no more data can be read from stream (and Loop = False) |
Methods | |
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 |
VARIANT GetData() | Reads available data from output stream. Usually used when OnDataAvailable event fires |
long GetVolume(long Channel) | Returns current volume value. CalcVolume must be set to True. Result values range is 0...300 (logarithmic scale) |
void SetData(VARIANT* data) | Writes data to input stream |
Properties | |
bool Active | Set 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 AutoActivate | When 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 CalcVolume | When true tells the component to calculate the audio volume of a stream coming into or from the component |
long DataSizeIn | Returns data written into but not yet processed by the pipe |
long DataSizeOut | Returns data size available to read from the pipe |
BSTR DumpInput | File name to dump the component input data to |
BSTR DumpOutput | File name to dump the component output data to |
BSTR FileName | Specifies file name with WAVe file for Riff wave device |
long FileSize | Returns file size in bytes |
long FormatTag | Specifies audio format tag for the wave device |
bool IsFormatProvider | When 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 |
bool EnableDataProcessing | When 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. |
long getFileType() | Returns type of audio file: 0 - unknown; 1 - riff; 2 - mpeg |
long getMpegFrameSize() | Returns frame size of MPEG stream |
bool IsInput | Specifies whether Riff wave device is used for reading or writing the audio |
bool Loop | Specifies whether wave stream should be looped from end to beginning |
long OverNum | Specifies 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 PcmBitsPerSample | Specifies number of bits per sample for wave device |
long PcmNumChannels | Specifies number of channels per sample for wave device |
long PcmSamplesPerSec | Specifies number of samples per second for wave device |
bool RealTime | Specifies whether device is working as real-time device |
bool SyncEvents | Specifies whether events calls synchronized through main thread |
Wave processing components:
WaveIn,
WaveOut,
WaveCodec,
WaveMixer,
WaveResampler,
Equalizer,
WaveMultiBandSplitter
Legacy IP components:
IpServer,
IpClient,
IpBroadcastServer,
IpBroadcastClient,
MediaGate,
ConferenceServer
RTP streaming components:
IPReceiver,
IPTransmitter,
RTPConfClient,
RTPConfServer
Misc. components:
VolumeControl,
DisplayBands