0
$\begingroup$

I have a test vinyl record that includes an exponential sine sweep as one of the tracks. I have a recording of the sweep through my turntable/mixer, and now I want to calculate the system IR. The problem is I don't have a copy of the clean sweep signal. What's the best way to approach this?

My first thought is to take a best guess at the sweep start and end frequencies and the $\Delta t$ between them, then use that to figure out the sweep rate and manually reconstruct the original sweep. But this seems kind of clumsy, is there a better way?

$\endgroup$
1
$\begingroup$

If this is used for channel sounding then you aren't concerned with the actual accuracy of your turntable (causing a frequency shift) in which case I suggest measuring the response in a static condition (non-changing channel) and determining the least square linear fit of the frequency sweep (I would assume but don't know that the test pattern would be a linear sweep) and then from that reconstruct a reference sweep to then use for channel estimation.

Measuring the frequency involves using some for of frequency discriminator process, most of which are also sensitive to amplitude variation, so I recommend hard-limiting the signal prior to the discriminator. Also pay attention to the relationship between instantaneous frequency and the underlying frequency of your ramp as detailed in this "DSP Quiz" question: Simulation of a Frequency ramp

$\endgroup$
1
  • 1
    $\begingroup$ This approach works very well on very short signal segments. I recommend 2 1/2 cycles. That means the frame size will need to be adjusted in different parts of the signal. At near 2 1/2 cycles the second harmonic is near bin 5 (little leakage) and the third harmonic is between bin 7 and 8 (lots of leakage on a weak component, many bins away). Of course, a little pre-filtering would also improve precision. Three and a half is good too. dsprelated.com/showarticle/1284.php You get a near instantaneous frequency, phase and amplitude reading that is very accurate at every frame. $\endgroup$ Jul 27 '20 at 19:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.