Hello Lazarus fans

Im very happy to announce the new release of UOS.
You can record, direct wire and much more now.
Download the new release here :
http://fredvs.github.io/uos/Here some examples how to use UOS :
First : add
uos.pas in your
use section and load libraries :
LoadLib;
InitLib;
Let's play a sound file...
Create the player :
Player1 := TUOS_Player.Create(True);
Player1.AddIntoDevOut ; //// Output into OUT Device
Player1.AddFromFile('MySong.mp3'); //// Input from audio file
And lets play it...
Player1.Play; //// Play the song...
Let's play a sound file with some dsp effect:
First create the player :
Player1 := TUOS_Player.Create(True);
Player1.AddIntoDevOut ; //// Output into OUT Device
Player1.AddFromFile('MySong.ogg'); //// Input from audio file
Player1.AddDSPIn(1); //// Add how many dsp you want
Player1.AddDSPIn(2);
And lets play it...
Player1.Play; //// Play the song with DSP effect...
Listen to your mic into your loudspeakers :
Create the player:
Player1 := TUOS_Player.Create(True);
Player1.AddIntoDevOut ; //// Output into OUT Device
Player1.AddFromDevIn ; //// Input from IN Device
And lets play it...
Player1.Play; //// Listen to your mic in your loudspeakers...
Now, ear your mic, listen to a mp3, apply some effects and record the mic into wav file at same time:
Create the player :
Player1 := TUOS_Player.Create(True);
Player1.AddIntoDevOut ; //// Output into OUT Device
Player1.AddIntoFile('Myrecord.wav') ; //// Output into OUT Device
Player1.AddFromDevIn ; ; //// Input from IN Device
Player1.AddDSPIn(1); //// Add how many dsp you want
Player1.AddDSPIn(2)
Player2 := TUOS_Player.Create(True);
Player2.AddFromFile('MySong.mp3') //// the background audio file
Player2.AddIntoDevOut ; //// Output into OUT Device;
And lets play it...
Player1.Play; //// Listen your mic with DSP effects and record it ...
Player2.Play; //// Listen to mp3 together with recording
Here are the basic UOS procedure :
Each procedure has his equivalent with argument for custom parameters...
Init Procedures :
LoadLib; //// Load dynamic libraries
InitLib(); //// Init those libraries
Output Procedures:
AddIntoDevOut(); //// Output into OUT Device
AddIntoFile(); //// Output into Wav File
Input Procedures:
AddFromDevIn(); //// Input from IN device
AddFromFile(); //// Input from Audio File
InputLength(); //// Lenght of Input in samples
InputPosition(); //// Get position
Seek(); //// Change position
Player Procedures:
Play; //// Start playing
RePlay; //// Resume playing after pause
Stop; //// Stop playing and free thread
Pause; //// Pause playing
DSP Procedures :
AddDSPIn() //// DSP procedure for input
AddDSPOut() //// DSP procedure for output
SetDSPin() //// Set DSP In
SetDSPout() //// Set DSP out
Have fun

PS: Your remarks are very welcome...
PS2 : The code of UOS.pas is in attachment (and in package of course).