|
|
| SimSaw |
| Posted: Mar 16 2014, 08:19 AM |
 |
|
Newbie

Group: Members
Posts: 4
Member No.: 37789
Joined: 16-March 14

|
Hello everybody. I have an audio file from the English and German demo of The Feeble Files. They contain voices and music. My intention is to remove the voices to only have the music left. So I created a stereo track where the English track is in the left channel and the German track is in the right channel.
Here is this original track: www.best-sts.de/ffdemo/radioin_en_de.wav
If I use Center Cut now to move the voices to the sides I get this: http://www.best-sts.de/ffdemo/radioin_en_de_sides.wav
You can still clearly hear the music in each track. If I however take the right channel of my original file and invert it and mix it into the left channel I get this: http://www.best-sts.de/ffdemo/radioin_de_en_mixed.wav
The maths I did was this: (meaning of the abbreviations following: en = English voices track, de = German (Deutsch) voices track, mus = music track)
+1en +0de +1mus +0en -1de -1mus = +1en +0de +0mus
Here you clearly hear no music at all, just voices. However all is mixed together in one track and it is not possible to seperate voices from that. But wouldn't it be possible to take the information gained from this to take into account when doing Center Cut? Wouldn't it be possible to virtually make this operation when doing Center Cut and compare the pre-result against it? This way Center Cut might be improved.
Also, would it be possible to use several tracks (more than two)? Then the centered result would be even more precise if more than two tracks are available.
I hope I expressed myself well enough to make my point clear. If I have not, please feel free to ask.
Here are all the files listed above in one ZIP file: http://www.best-sts.de/ffdemo/radioin.zip |
 |
| raffriff42 |
| Posted: Mar 16 2014, 09:58 AM |
 |
|

Advanced Member
  
Group: Members
Posts: 384
Member No.: 35081
Joined: 25-June 12

|
EDIT I don't think Center Cut is designed for this purpose. Anyway the source is not really "stereo," it's dual mono (Left=English+Music, Right=German+music).
If inverting the right channel works, why not use it?
 (Gain used as a phase inverter)
However, the Center Cut filter can be made to work - here's an example with full control of all 3 audio elements: (probably more complicated than it needs to be)
This post has been edited by raffriff42 on Mar 16 2014, 01:11 PM |
 |
| SimSaw |
| Posted: Mar 16 2014, 09:06 PM |
 |
|
Newbie

Group: Members
Posts: 4
Member No.: 37789
Joined: 16-March 14

|
Thanks for your fast reply. Inverting is not the solution because everything is in one channel then. What I need is either this: +0en +0de +1mus or this: +1en +0de +0mus or this: +0en +1de +0mus
So your first example is just a reproduction of what I did and unfortunately does not lead to the desired result.
If I understood correctly, Center Cut was meant as a vocal remover maintaining the stereo. In this case we have it but just the other way round: The music has taken the role of the voice and the voices have taken the place of the music.
Will try out your second example tomorrow. (Unfortunately I have to go to bed now.) |
 |
| raffriff42 |
| Posted: Mar 17 2014, 01:23 AM |
 |
|

Advanced Member
  
Group: Members
Posts: 384
Member No.: 35081
Joined: 25-June 12

|
EDIT I am sorry, for isolating the music, I can't improve on simply using the Center Cut, center channel. The more I think about it, the more I am amazed that this filter works at all. If there is a similar filter elsewhere with tunable window, you *may* get better results. | QUOTE | http://www.virtualdub.org/blog/pivot/entry.php?id=102 The center cut algorithm whacks the phase of the left and right channels, so it has a tendency to move them apart in time and cause echoing effects in the side channels. This phenomenon becomes worse as the FHT window is increased, which is unfortunate as increasing the window size improves the quality of separation. |
EDIT tried a different filter, but Center Cut does a better job for this source. EDIT sorry I couldn't help you find a better solution, but I had fun trying!
This post has been edited by raffriff42 on Mar 18 2014, 01:10 AM |
 |
| SimSaw |
| Posted: Mar 22 2014, 11:39 AM |
 |
|
Newbie

Group: Members
Posts: 4
Member No.: 37789
Joined: 16-March 14

|
Anybody else with an idea? Maybe Phaeron? |
 |
| phaeron |
| Posted: Apr 6 2014, 10:13 PM |
 |
|

Virtualdub Developer
  
Group: Administrator
Posts: 7773
Member No.: 61
Joined: 30-July 02

|
I'm afraid there is no good solution to this. Inverting one channel and mixing it into another is a classic way to remove a common signal, but as you've discovered, there is no way to separate the difference signal. The problem with trying to keep stereo separation is that it requires information that simply isn't in the original waveform. Unlike sum/difference, doing this takes two signals as input and produces three signals as output. That means one third of the output has to be guessed by the algorithm. The leakage you are hearing is due to the cases where this guess is incorrect. |
 |
| SimSaw |
| Posted: Apr 20 2014, 06:50 PM |
 |
|
Newbie

Group: Members
Posts: 4
Member No.: 37789
Joined: 16-March 14

|
I see. I thought it might be possible to use the mix with English and German to remove the center but I believe you if you see that it is not easy. But what about using more than two channels? There are video games that have 6 or more localisations and using more channels would make the result more precise. Any possibility for that? Maybe by making Center Cut an external command line tool? |
 |
| phaeron |
| Posted: May 26 2014, 09:25 PM |
 |
|

Virtualdub Developer
  
Group: Administrator
Posts: 7773
Member No.: 61
Joined: 30-July 02

|
Theoretically possible, but a much more complex linear programming problem. The center cut algorithm is based upon three vectors, and adding a fourth or more would require a new algorithm. |
 |