Context: I have done in the past stereo recordings in XY position (coincident microphones):
from a source far from at least 20 meters (example: piano in a big reverberant building).
Since the microphones are coincident, there are IID (interaural intensity differences), but, sadly, few ITD (interaural timing differences). Thus the recording is less lively, much less "outside your head" (when listening with headphones), that it could have been with a spaced pair of microphones. That's the final problem that I'm trying to solve, since I can't redo the recordings: respatialize the sound into something closer to a spaced-pair recording. (I have other recordings with a spaced pair non-coicident mics, and I confirm it would have been better). See also Algorithms to re-spatialize a stereo recording audio signal?.
(Any coding idea to achieve this general goal is welcome).
The option I'm now considering to achieve this goal in this question is to:
- decompose the signal
L[n]
,R[n]
(left, right) into several layers - apply different ITD (Interaural Timing Differences) on each layer
- mix the layers to get a new output signal
Example with Mid-Side:
Mid[n] = (L[n] + R[n]) / 2
Side[n] = (L[n] - R[n]) / 2
Out_L[n] = Mid[n] + Side[n + K1] # K1 is a time-shifting parameter
Out_R[n] = Mid[n] - Side[n + K2] # K2 is a time-shifting parameter
I tried this, but it does not really help to achieve the goal mentioned above.
Question: Is there a decomposition of a stereo signal that goes beyond than Mid (0°) + Side (90°) ?
Something like:
Layer1[n] = Mid (0° to 30°)
Layer2[n] = Diagonal (30° to 60°)
Layer3[n] = Side (60° to 90°)
Note: The "Coincident Microphones" part of this answer of Algorithms to re-spatialize a stereo recording audio signal? could be useful, but I don't see exactly how to use this concretely in an applied algorithm.