I developed a component for mixing and play 2 file and change the volume level, position, paused of each of them
see ATTACHMENTS
property Track1: TWaveStreamAdapter
property Track1Volume: Byte
property Track1Position: Cardinal
property Track1Paused: Boolean
property Track2: TWaveStreamAdapter
property Track2Volume: Byte
property Track2Position: Cardinal
property Track2Paused: Boolean
example of use
WaveFile1 := TWaveFile.Create('C:\Users\BDV\Downloads\Пример\0124_Angels_Morandi.wav', fmOpenRead or fmShareDenyWrite);
WaveFile2 := TWaveFile.Create('C:\Users\BDV\Downloads\Пример\0532_Sweet Dreams_Eurythmics_готовый.wav', fmOpenRead or fmShareDenyWrite);
LiveAudioMixerPlayer := TLiveAudioMixerPlayer.Create(Self);
LiveAudioMixerPlayer.PCMFormat := WaveFile1.PCMFormat;
LiveAudioMixerPlayer.Options := [woSetVolume];
LiveAudioMixerPlayer.Track1 := WaveFile1;
LiveAudioMixerPlayer.Track2 := WaveFile2;
LiveAudioMixerPlayer.Active := True;