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

Solutions


AudioTunnel

Problem
I am writing a video/audio/text chat application for a dating site where a user may have multiple PRIVATE conversation windows running at the same time (multiple consumers, multiple providers). I'm not quite sure how the audio would work usability wise. Perhaps the user can have only one audio conversation at a time. I definitely don't want a "room chat" or "conference" situation as these must be private conversations.

Solution
Demo has 2 "audio tunnels":

Client1 <-> [ipServerIN_1:17001 <-> ipServerOUT_1:18001] <-> Client2
Client3 <-> [ipServerIN_2:17002 <-> ipServerOUT_2:18002] <-> Client4

Client1 can talk with Client2, same as Client3 and Client4. All four server components (IN_1, IN_2, OUT_1, OUT_2) are running on one machine.

download source code (VB)


ToneGen

Problem
I can read from a file audio chunks of data and convert them into PCM values. The problem is that I don't know how and when should I send new chunks to vcproWaveOutDeviceX control.

Solution
You can feed these chunks to any component which accepts PCM data (waveCodec, waveOut, mixer and resampler) using the SetData() method. In the following example we are preparing a new chunk of PCM data periodically and sending it to WaveOut component to produce a periodic wave.

download source code (VB)


WaveMerge

Problem
How can I concatenate (or merge) two or more WAV files into one file (e.g. file1.wav + file2.wav ==> output.wav)?

Solution

download source code (VB.NET)


WaveTransform

Problem
I have two wav files, say File1.wav and File2.wav. I want to cut 5 milliseconds from the beginning of File1.wav and past this 5-millisecond part to a new wav file say File3.wav. And then cut 5 milliseconds from the beginning of File2.wav and append this part to the File3.wav file. How can I do that with your VCX library components?

Solution
This sample uses two WaveRiff components, one to read audio from source WAV file and one to write audio into resulting WAV file. It also shows how you can perform basic operations on PCM audio samples.

download source code (VB)


WaveTransform 2

Problem
I want to get some portion of audio data from a wav file. The amount of time for the data starts from 1 millisecond to 10 minutes. How can I manage that by using your components?

Solution
The idea here is that you assign an onDataAvailable() event handler for waveRiff component, and process PCM data inside this event as you needed. Data will be passed to this event as a chunks of data, where each chunk will contain 1/25 sec of audio.

download source code (VB)


WaveTransmit

Problem
I need a code to stream a WAV from one client to several servers at the same time.

Solution
In this simple example we transmit WAV file to two servers. To test it, start two UDP servers on port 17820 on different machines (you can use our TalkNow demo for this) and run the demo. Specify file name and proper IP address(es) of server(s) and press the Start button.

download source code (VB)


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