IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
Triple Stereo, Stereo to 3-channels converter. No mono-mix at center!
E.Sokol
post Jan 9 2015, 23:00
Post #1





Group: Members
Posts: 19
Joined: 9-January 15
From: Magnitogorsk
Member No.: 118317



This plugin allows you to listen stereo music at 3 speakers - left, right and center with minimum artefacts. No mono-mix at center!
Also, you can listen this plugin at stereo with any combination of left, right and center channels.

NOTE.
The maximum quality provided by maximum FFT-size whith high processor load. If you have lags, try to increase buffer size at output device. At slow computer, you can convert your favourite music with this plugin and write it to dvd-audio disc for listen at external dvd-player.

How it works:
In frequency domain, we can manipualate whith each frequency and it phase separately.
At first pass, with large FFT size (parametrized), plugin split stereo to 3-channels using combination of additions and phase rotations.
After that, phase of output channel assigned to source phase at left and right channels respectively, and center phase to mono mix of input channels.
At second pass, with small FFT size (hard coded), sum of magnitudes of output channels equlized to sum of magnitudes of input channels, for remove reverberation artefacts and guaranteed congruence of amplitude-grequency characteristic to source music.
Also, the output left and right or center channels can be delayed to produce more rich stereo-base.

download here

This post has been edited by E.Sokol: Jan 9 2015, 23:01
Go to the top of the page
+Quote Post
E.Sokol
post Feb 1 2015, 16:13
Post #2





Group: Members
Posts: 19
Joined: 9-January 15
From: Magnitogorsk
Member No.: 118317



Updated - latency bug fixed.
Go to the top of the page
+Quote Post
E.Sokol
post Feb 11 2015, 17:30
Post #3





Group: Members
Posts: 19
Joined: 9-January 15
From: Magnitogorsk
Member No.: 118317



Some additional notes.

In comparison with FreeSurround (with 3.0 mode), Triple Stereo gives another sound, because it use another way to solve channel split problem.

First, FreeSurround used arctangent to find a position between left and right.
Triple Stereo used combination of additions/subtractions with phase rotations to find left, right and center directly.
In my research, using of arctangent gives two problems:
- determinate a valid phase value. In source input, we have two phases in left and right, but output phase is one;
- with large FFT size, using of arctangent produce artifacts like “floating” sound. Using small FTT size masks this problem, but not solving.
I could not solve this problems - and that is why I refused to use arctangent.

Second, FreeSurround used hard-coded FFT size with 4096 samples; Triple Stereo used a two-pass processing – first (custom) for channel splitting and phase equalization, and second (2048-8192 depending on current sample rate) for magnitude equalization.
There are two reasons for this solution.
Using of small FFT size gives more accurate channel splitting at time unit, but sound panorama is unstable and too fast interchannel movements perceived as “dirty” and “broken” sound.
Using of big FFT size gives more stable panorama and clean sound, but produce reverberation artifacts. This problem solved by second pass FFT – it transform reverberation into interchannel positioning.
Another reason consists in distinction between theoretical and practical signal processing.
In theory, the summary of antiphase signals gives zero.
In practice, when antiphase signal played by different speakers, the result is not zero for several reasons – speakers is not identical, room is not symmetrical, etc – and resulting tonal balance was distorted. This problem also solved - final tonal balance equalized without phase difference between source channels.

Go to the top of the page
+Quote Post
drbeachboy
post Feb 11 2015, 19:15
Post #4





Group: Members
Posts: 502
Joined: 22-October 04
From: Southern NJ
Member No.: 17776



Triple Stereo is crashing fb2k 1.3.7 every time I play a 24/96 and 24/192 ALAC file.


--------------------
Surf's Up!
"Columnated Ruins Domino"
Go to the top of the page
+Quote Post
E.Sokol
post Feb 12 2015, 07:20
Post #5





Group: Members
Posts: 19
Joined: 9-January 15
From: Magnitogorsk
Member No.: 118317



This is because it requires more CPU power than you have.
Go to the top of the page
+Quote Post
jbercx
post Feb 12 2015, 07:49
Post #6





Group: Members
Posts: 40
Joined: 10-December 14
Member No.: 118040



Do you have some kind of userguide / how to use this plugin?
Go to the top of the page
+Quote Post
drbeachboy
post Feb 12 2015, 16:20
Post #7





Group: Members
Posts: 502
Joined: 22-October 04
From: Southern NJ
Member No.: 17776



QUOTE (E.Sokol @ Feb 12 2015, 01:20) *
This is because it requires more CPU power than you have.

Well, it is a Intel 3.10GHz, 3100 Mhz, 2 Core, 4 Logical Processors CPU. What is the minimum needed?

This post has been edited by drbeachboy: Feb 12 2015, 16:23


--------------------
Surf's Up!
"Columnated Ruins Domino"
Go to the top of the page
+Quote Post
E.Sokol
post Feb 12 2015, 18:44
Post #8





Group: Members
Posts: 19
Joined: 9-January 15
From: Magnitogorsk
Member No.: 118317



Drbeachboy, I don’t know, my computer is too slow for these modes too.
The first versions of my plugins can`t work in realtime – I used them only for convert. I spent many efforts to optimization with c++, assembler and second core using for make them faster as possible.

jbercx, writing userguide is a big trouble for me, because English is not my native language, sorry.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 28th February 2015 - 08:03