freenode/#shirakumo - IRC Chatlog
Search
19:07:49
Shinmera
I'm trying to figure out how to get a 90 degree phase shift going but all I'm finding is way over my head and/or not what I need (as in, IIR, not discrete, or not windowed)
19:18:20
Shinmera
Anyway, apparently this is done using a Hilbert transform and some kind of windowing mechanism (Kaiser windows?). The Hilbert transform has a ton of different ways of doing it though and it's all... uh, stuff I don't care about so it's hard to focus.
19:18:39
Shinmera
I've found people talking about hilbert networks, but googling that yields nothing penetrable to me.
19:26:26
selwyn
doing a phase shift of 90 degrees corresponds to multiplying the complex fourier components by i, which is particularly fast to carry out
19:27:14
selwyn
if you have some kind of dsp workflow, then you can just do that whenever it's appropriate
19:28:06
Shinmera
supposedly (from what I could google) there's also ways to get this done faster than with a FT/IFT.
19:28:09
selwyn
the hilbert transform is the result of a) doing a fourier transform b) doing the phase shift and c) doing the inverse fourier transform, so everything in time domain
19:33:16
Shinmera
I found this but it's way too much for me to get into right now https://www.intechopen.com/books/matlab-a-fundamental-tool-for-scientific-computing-and-engineering-applications-volume-1/digital-fir-hilbert-transformers-fundamentals-and-efficient-design-methods
19:34:48
Shinmera
There's also apparently other methods using allpass filters that work but in limited frequency ranges.
19:42:47
Shinmera
Context for why I need this stuff: converting stereo to surround involves a 90 degree shift to simulate rear channels.
19:44:29
Shinmera
yeah. My new dev team member had a surround setup and the game barfed on launch because windows doesn't do conversion for you.
19:49:53
Shinmera
also I don't know if I'll ever get this done honestly because every time i've tried to get into dsp my eyes just glazed over instantly lol
19:53:07
Colleen
github.com/swh/ladspa/blob/... Website (HTML), Title: ladspa/hilbert_1440.xml at master · swh/ladspa · GitHub