IPB

Welcome Guest ( Log In | Register )

foo_dsp_xfeed, Crossfeed
xnor
post Sep 12 2011, 18:50
Post #1





Group: Developer
Posts: 965
Joined: 29-April 11
From: Austria
Member No.: 90198



Heya,

this is the discussion thread for foo_dsp_xfeed, a Crossfeed DSP component.
For those who don't know what that is: it enables a more relaxed and natural listening experience with headphones. A more detailed explanation why and how it works is given below.

Download

Usage
1) Install the downloaded zip file using the Components preferences page.
2) Add "Crossfeed" to the list of active DSPs (Playback - DSP Manager preferences page).
3) Configure it.

Explanation
Let's take a look at the image below.



When listening with headphones, the left ear only hears sound coming from the left speaker (LL) and the right ear only the sound coming from the right speaker (RR). This often results in unnatural stereo separation or spaciousness and can cause listening fatigue.

When listening with speakers, sound from the right speaker also arrives at the left ear (RL), with a small time delay though. This time delay is known as interaural time difference (ITD). Additionally, there's a difference in level known as interaural level difference (ILD). In the image above, line thickness indicates these level differences.

In reality, things aren't that simple. The level difference, for example, is not constant because the head obstructs higher frequencies a lot better than low frequencies (aka head shadow). While at low frequencies the attenuation can be as low as and even lower than 3 dB, it can reach up to about 20 dB at high frequencies.
To make things more complex, both the ITD and ILD change depending on the angle of the speakers.

As the delay and level differences are reduced to zero, the left and right speakers merge into a single center speaker (effectively mono).

How is this DSP component different from ...
Compared to simple crossfeed effects, this implementation does not only crossfeed bass and lower mids but all frequencies up to Fs/2.
By configuring crossfeed levels for both low and high frequencies, this DSP can be set up to mimic the acoustic shadow of your own head.
-> For example, hi-hat sounds panned hard to the left/right on a recording can be moved "out of the head" coherently with all the other instruments.

The configuration dialog looks like this:


Please give it a try and let me know what you think, thanks.

This post has been edited by xnor: Sep 19 2011, 22:58


--------------------
"But you refuse to [..] back your claims of inaudibility."-amirm
Go to the top of the page
+Quote Post
 
Start new topic
Replies
j_b
post Sep 16 2011, 23:18
Post #2





Group: Members
Posts: 33
Joined: 19-September 07
From: Santo, TX
Member No.: 47182



Fascinating. Headphone users are using DSP to add stereo crosstalk and loudspeaker users are using DSP to remove it.
Go to the top of the page
+Quote Post
xnor
post Sep 16 2011, 23:41
Post #3





Group: Developer
Posts: 965
Joined: 29-April 11
From: Austria
Member No.: 90198



QUOTE (j_b @ Sep 17 2011, 00:18) *
Fascinating. Headphone users are using DSP to add stereo crosstalk and loudspeaker users are using DSP to remove it.

Yeah, loudspeaker folks use it to achieve effects like somebody whispering into your left or right ear (special FX, "3D sound" ...) or artificially expand the stereo image/stage width. Imo, the latter doesn't make much sense with stereo music that wasn't mastered with this in mind (virtually all stereo music). And you also have to keep in mind that crosstalk cancellation only works down to a couple decibels with speakers, else you'll get awful coloration, a tiny sweet-spot and so on. So headphones have an advantage if you need that unnatural separation (e.g. for binaural recordings) because they provide it out of the box and adding a delayed, equalized signal is easy to do compared to crosstalk cancellation.

I've been using different crossfeed implementations from the day I started listening to music with headphones. Imo, even the simplest kind of crossfeed circuit or DSP is already a big improvement.

This post has been edited by xnor: Sep 17 2011, 00:13


--------------------
"But you refuse to [..] back your claims of inaudibility."-amirm
Go to the top of the page
+Quote Post
j_b
post Sep 17 2011, 00:12
Post #4





Group: Members
Posts: 33
Joined: 19-September 07
From: Santo, TX
Member No.: 47182



QUOTE (xnor @ Sep 16 2011, 16:41) *
...adding a delayed, equalized signal is easy to do compared to crosstalk cancellation.

But that's precisely how crosstalk cancellation is done except the added signal is inverted and applied to the opposite channel. I'm putting the finishing touches on an Ambiophonics plugin for foobar2000 and I've observed none of the deficiencies you claim.

This post has been edited by j_b: Sep 17 2011, 00:13
Go to the top of the page
+Quote Post
xnor
post Sep 17 2011, 00:26
Post #5





Group: Developer
Posts: 965
Joined: 29-April 11
From: Austria
Member No.: 90198



QUOTE (j_b @ Sep 17 2011, 01:12) *
But that's precisely how crosstalk cancellation is done except the added signal is inverted and applied to the opposite channel.

That would be a simple way of (trying to) doing it but afaik more (complex) filters are required to achieve acceptable results. I was thinking about conventional loudspeaker positioning though where things can get quite hairy.

QUOTE
I'm putting the finishing touches on an Ambiophonics plugin for foobar2000 and I've observed none of the deficiencies you claim.

Have you measured how well the cancellation works at the listening position? And 1 m next to it?
There are records where, e.g. in the beginning of a track, one channel is basically silence (below -60 dB anyway) while the other contains some loud instrument. In no way you'll hear something like that in the real world and neither did the artist or engineers because they listening to it on stereo speakers without any crosstalk cancellation. And I also don't think that an inverted signal could cancel the crosstalk in a way to even come close to such an unnatural level of separation.

From Wikipedia, Ambiophonics "generates a speaker-binaural soundfield that emulates headphone-binaural". Just like I wrote above, crosstalk cancellation has its applications like binaural recordings, "3D sound" etc., but stereophonic music designed with and for conventional stereo loudspeaker setups is not one of them for the reasons outlined before, imo, ymmv. Also, I think that some of the premises which Ambiophonics builds upon are not correct, but this gets quite a bit off-topic here and is better discussed in another thread.

This post has been edited by xnor: Sep 17 2011, 00:54


--------------------
"But you refuse to [..] back your claims of inaudibility."-amirm
Go to the top of the page
+Quote Post
j_b
post Sep 17 2011, 03:53
Post #6





Group: Members
Posts: 33
Joined: 19-September 07
From: Santo, TX
Member No.: 47182



QUOTE (xnor @ Sep 16 2011, 17:26) *
There are records where, e.g. in the beginning of a track, one channel is basically silence (below -60 dB anyway) while the other contains some loud instrument. In no way you'll hear something like that in the real world and neither did the artist or engineers because they listening to it on stereo speakers without any crosstalk cancellation.

Ill never know what the artist or recording engineer heard nor do I care. The recording is what it is. I do know that when you add two signals that have frequencies in common there will be a continuum of constructive and destructive interference. The left and right channels of nearly all stereo recordings have frequencies in common. I also know that when you reinforce a signal with a phase shifted copy of itself you get a comb-filter effect. Most stereo recordings have center channel information that is common to both channels. The comb-filter and related effects are the damage done by stereo crosstalk. I find reducing those effects beneficial; you find the opposite.
Go to the top of the page
+Quote Post
xnor
post Sep 17 2011, 12:28
Post #7





Group: Developer
Posts: 965
Joined: 29-April 11
From: Austria
Member No.: 90198



QUOTE (markanini @ Sep 17 2011, 02:14) *
Thanks for the explaination. I couldn't quite folow the equation but that wouldnt be the first time...I you'd feel like breaking it down further for me it would make me very glad.

BTW I'm now routing my broswer and video player throught FB2K to make use of your crossfeed plugin. Consider me a fan smile.gif

Heh, yeah that is a nice idea. It would rock to have certain DSP components installed as system-wide APOs (audio processing objects) so sound from any application could be processed but afaik these can only be installed with a sound card driver. (Win32 devs please correct me if I'm wrong.)

Regarding the equation, here's an example: d = 15 cm = 0.15 m, a = 30 = 0.524 rad. This angle spans between M and SR or M and SL in the image in post #1 or see the image below. An angle of 90 would mean that the speakers are not in the front but exactly to the left and right of your head, which is where the ITD reaches its maximum (~700 us).

ITD = 0.15/(2 * 343) * (0.524 + sin(0.524)) = 2.24e-4 s = 224 us

If you use the windows calculator make sure you set it to 'Rad' instead of degrees.


QUOTE (j_b @ Sep 17 2011, 04:53) *
I’ll never know what the artist or recording engineer heard nor do I care.

Even if we don't know for sure it's very, very unlikely that they heard a crosstalk canceled let alone Ambiophonics filtered version.

Most likely the setup looked similar to this:


(correct speaker placement for monitoring stereo recordings)

QUOTE
Most stereo recordings have center channel information that is common to both channels. The comb-filter and related effects are the damage done by stereo crosstalk. I find reducing those effects beneficial; you find the opposite.

In theory you get a couple deep comb notches with the first one located near 2 kHz, yes, but those gaps are filled with reflections, reverberation and are further reduced by diffraction and so on. That's one of the reasons why stereo doesn't sound right in anechoic environments, but it sounds fine in normal listening rooms.
Secondly, the high frequencies where comb filtering occurs are supposed to add in terms of energy and not amplitude. Thirdly, the common part of the signal is significantly lower in level at higher frequencies.
Altogether, the "damaging and destructive crosstalk" is only a problem if you want to listen to binaural stuff with loudspeakers, imo, ymmv.

This post has been edited by xnor: Sep 17 2011, 13:26


--------------------
"But you refuse to [..] back your claims of inaudibility."-amirm
Go to the top of the page
+Quote Post

Posts in this topic
- xnor   foo_dsp_xfeed   Sep 12 2011, 18:50
- - mudlord   Nice. Put it right in and worked outta the box.   Sep 13 2011, 11:46
- - Steve Forte Rio   Can't hear any considerable differences from ...   Sep 13 2011, 14:01
- - xnor   I updated the first post which should hopefully an...   Sep 13 2011, 15:48
- - Steve Forte Rio   Thanks. Please, add the "Load Defaults" ...   Sep 13 2011, 20:14
- - markanini   This one really nails the illusion of listening to...   Sep 14 2011, 04:16
- - markanini   xnor, after listening to my favorite albums throug...   Sep 16 2011, 00:37
- - xnor   I'm glad you enjoy it as much as I do. The de...   Sep 16 2011, 15:47
|- - markanini   QUOTE (xnor @ Sep 16 2011, 16:47) I'm...   Sep 17 2011, 01:14
- - j_b   Fascinating. Headphone users are using DSP to add ...   Sep 16 2011, 23:18
|- - xnor   QUOTE (j_b @ Sep 17 2011, 00:18) Fascinat...   Sep 16 2011, 23:41
|- - j_b   QUOTE (xnor @ Sep 16 2011, 16:41) ...addi...   Sep 17 2011, 00:12
|- - xnor   QUOTE (j_b @ Sep 17 2011, 01:12) But that...   Sep 17 2011, 00:26
|- - j_b   QUOTE (xnor @ Sep 16 2011, 17:26) There a...   Sep 17 2011, 03:53
|- - xnor   QUOTE (markanini @ Sep 17 2011, 02:14) Th...   Sep 17 2011, 12:28
|- - markanini   QUOTE (xnor @ Sep 17 2011, 13:28) 0.15/(2...   Sep 17 2011, 14:22
- - jaro1   Headphone DSPs have had always my interest, so tha...   Sep 18 2011, 18:36
|- - xnor   QUOTE (jaro1 @ Sep 18 2011, 19:36) Does y...   Sep 18 2011, 19:30
- - jaro1   Thanks for your comment, i must definitely try you...   Sep 18 2011, 21:52
- - xnor   I gave it a try quite some time ago so I'll ha...   Sep 18 2011, 22:18
- - Sandrine   The positioning of instruments is indeed more agre...   Sep 20 2011, 13:24
|- - xnor   Sandrine, with the latest release you can adjust t...   Sep 20 2011, 14:37
- - Ihmemies   Thanks for this. It's interesting to find and...   Sep 21 2011, 00:38
- - xnor   QUOTE (jaro1 @ Sep 18 2011, 22:52) Howeve...   Sep 22 2011, 20:01
- - The Link   Sorry for being a little off topic. In the lack of...   Sep 22 2011, 21:19
- - xnor   Thanks for mentioning it, The Link. Even a simple ...   Sep 22 2011, 22:30
- - kumbbl   first of all thanks for this very nice plugins - e...   Sep 23 2011, 13:12
|- - xnor   QUOTE (kumbbl @ Sep 23 2011, 14:12) One q...   Sep 23 2011, 13:51
- - jaro1   Thanks for commenting TB Isone, glad to hear your ...   Sep 24 2011, 12:59
- - Fool_on_the_hill   hello. Thank you xnor for another great crossfeed ...   Oct 5 2011, 14:59
- - xnor   I always found that dolbyhp adds quite some amount...   Oct 5 2011, 15:42
- - markanini   Xnor, do you recomend having crossfeed turned on o...   Oct 5 2011, 16:18
|- - xnor   QUOTE (markanini @ Oct 5 2011, 17:18) Xno...   Oct 5 2011, 17:24
|- - markanini   QUOTE (xnor @ Oct 5 2011, 18:24) QUOTE (m...   Oct 6 2011, 20:51
- - jaro1   Finally i've had an opportunity to try xfeed a...   Oct 6 2011, 20:12
- - jaro1   I wanted slightly revise my last comment in favour...   Oct 12 2011, 19:31
|- - xnor   QUOTE (markanini @ Oct 6 2011, 21:51) [.....   Oct 12 2011, 20:21
|- - jaro1   QUOTE (xnor @ Oct 12 2011, 21:21) ...but ...   Oct 13 2011, 07:35
- - vittau   Thank you xnor, both your crossfeed and equalizer ...   Oct 28 2011, 20:36
|- - xnor   Noted. You're right. I think it would already ...   Oct 29 2011, 09:37
- - markanini   xnor, Do you think your crossfeed works best with ...   Nov 9 2011, 19:17
- - xnor   Hmm I'd say that the reduction of stereo separ...   Nov 12 2011, 18:18
- - markanini   Let me check if I understood your point, so headph...   Nov 13 2011, 01:10
- - markanini   Did further searching, the ID-HRTF above has one l...   Nov 13 2011, 10:48
- - markanini   Xnor, is the HF cutoff preset or dependent on othe...   Dec 19 2011, 23:31
- - extrabigmehdi   Thanks, I found this component very easy to tweak...   Feb 3 2012, 19:09
|- - xnor   QUOTE (extrabigmehdi @ Feb 3 2012, 20:09)...   Feb 3 2012, 19:33
|- - extrabigmehdi   QUOTE Well that's hard to say. Those ILD value...   Feb 3 2012, 20:00
- - markanini   I've compared head-fit to xfeed a while back. ...   Feb 15 2012, 11:42
- - YellowOnion   Do you take into account speaker distance from Lis...   Oct 12 2012, 01:01
- - markanini   A new contender? http://europe.beyerdynamic.com/vi...   Apr 12 2013, 04:34
- - Propheticus   I find the effects to sound quite realistic (espec...   Apr 12 2013, 11:55
|- - extrabigmehdi   QUOTE (Propheticus @ Apr 12 2013, 10:55) ...   Apr 12 2013, 13:33
- - Propheticus   This* is not a crossfeed however, it is a room vir...   Apr 12 2013, 14:30
|- - extrabigmehdi   QUOTE (Propheticus @ Apr 12 2013, 13:30) ...   Apr 12 2013, 20:58
- - rowbee   Xnor you're awesome! This plugin is brill...   Feb 7 2014, 03:12
- - jaro1   I wanted to post a comment much sooner, but was fi...   Aug 3 2014, 21:24
- - darkflame23   I'm going to give this a try today, and am try...   Aug 23 2014, 10:54
- - xnor   d = 0.15/(2*343) * (1.0472 + sin(1.0472)) = 418us ...   Aug 23 2014, 12:23
- - darkflame23   Thank you, I will certainly give those settings a ...   Aug 23 2014, 16:29
- - xnor   Yes that is +/- 30 or spanning 60 between the sp...   Aug 23 2014, 17:45
- - darkflame23   Ah OK, thanks! Had good results with it last n...   Aug 24 2014, 10:41


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: 27th November 2014 - 22:02