Groove width / pitch algorithm
Moderators: piaptk, tragwag, Steve E., Aussie0zborn
Groove width / pitch algorithm
There are probably a few posts here and there dedicated to this, but maybe I don't know the right search terms
I'm only talking about the mid component of the audio here
I may be seeing it all wrong, but after the audio ends up on the cut according to RIAA specifications, what I see visually is not the same. Bass needs more and more space downwards
Is there a standard for it? Say how many dB per octave increase?
I did some tests with various pitches on the same dB level to see what happens, but the low frequencies are hard to meassure with my microscope
Studying this to construct a pitch algorithm in the future
I'm only talking about the mid component of the audio here
I may be seeing it all wrong, but after the audio ends up on the cut according to RIAA specifications, what I see visually is not the same. Bass needs more and more space downwards
Is there a standard for it? Say how many dB per octave increase?
I did some tests with various pitches on the same dB level to see what happens, but the low frequencies are hard to meassure with my microscope
Studying this to construct a pitch algorithm in the future
Re: Groove width / pitch algorithm
Hi,
First, assume that the cutter head has flat velocity response for a feedback system. The typical published recording RIAA curve is also velocity centric. You care about the cutter head excursion. So to convert from velocity to excursion, integrate the signal that appears after the RIAA is applied to the program material (e.g. at the input to the cutter system). This will represent the excursion.
If you are dealing with an open loop head, you would assume that it too has been corrected such that the RIAA and any additional EQ has been added to make the head velocity flat and RIAA equalized. In this case, you would have to remove the correction EQ that is not part of the RIAA and integrate this to get your excursion.
You also have to also have to know what the velocity the head cuts for a given signal. For example, a common reference for lateral cutting (mid) is 5cm/sec rms at 1Kz. You would have to determine the amplitude of a 1Khz sine wave that needs to be present at the input to the cutting system to achieve the reference velocity. You can use that number to calibrate your excursion measurement given the relationship between velocity and excursion.
Does that make sense?
Mark
First, assume that the cutter head has flat velocity response for a feedback system. The typical published recording RIAA curve is also velocity centric. You care about the cutter head excursion. So to convert from velocity to excursion, integrate the signal that appears after the RIAA is applied to the program material (e.g. at the input to the cutter system). This will represent the excursion.
If you are dealing with an open loop head, you would assume that it too has been corrected such that the RIAA and any additional EQ has been added to make the head velocity flat and RIAA equalized. In this case, you would have to remove the correction EQ that is not part of the RIAA and integrate this to get your excursion.
You also have to also have to know what the velocity the head cuts for a given signal. For example, a common reference for lateral cutting (mid) is 5cm/sec rms at 1Kz. You would have to determine the amplitude of a 1Khz sine wave that needs to be present at the input to the cutting system to achieve the reference velocity. You can use that number to calibrate your excursion measurement given the relationship between velocity and excursion.
Does that make sense?
Mark
Re: Groove width / pitch algorithm
Let me study this 

Re: Groove width / pitch algorithm
Basically the output of the IRIAA is a velocity signal, and displacement is the integral of velocity.
So in effect to make a 'displacement' filter for a lathe you take the IRIAA curve and replace all the horizontal bits with a slope down at -6dB per octave, and all the sloping bits with horizontal lines.
This gets you a signal that tracks the displacement resulting from the IRIAA curve.
The next part of the puzzle is what to do with that information.
Now what you really want for the simple version of a pitch algorithm is the displacement of the inner wall of the previous groove inward + the displacement of the outer wall of the groove you are about to cut outward, so you need a memory to remember the shape of the groove from the previous turn that you can then use to calculate where the groove needs to be in time to change the motor speed to get it there in time.
There is a decent explanation in the VMS66 manual as I recall (Granted it is a fairly heroic hardware implementation).
A more sophisticated approach is that taken in the VMS80 which considers depth as well and seeks to maintain a specified minimum land, this can actually briefly stop the carriage movement if conditions allow, good explanation in the manual there as well.
So in effect to make a 'displacement' filter for a lathe you take the IRIAA curve and replace all the horizontal bits with a slope down at -6dB per octave, and all the sloping bits with horizontal lines.
This gets you a signal that tracks the displacement resulting from the IRIAA curve.
The next part of the puzzle is what to do with that information.
Now what you really want for the simple version of a pitch algorithm is the displacement of the inner wall of the previous groove inward + the displacement of the outer wall of the groove you are about to cut outward, so you need a memory to remember the shape of the groove from the previous turn that you can then use to calculate where the groove needs to be in time to change the motor speed to get it there in time.
There is a decent explanation in the VMS66 manual as I recall (Granted it is a fairly heroic hardware implementation).
A more sophisticated approach is that taken in the VMS80 which considers depth as well and seeks to maintain a specified minimum land, this can actually briefly stop the carriage movement if conditions allow, good explanation in the manual there as well.
Re: Groove width / pitch algorithm
@markrob I run a dynamic head, RIAA en correction in one EQ, this is fairly easy to seperate. Volume calibrated so I can work from here
@markrob & @dmills thanks for enlighting me! Over the years my focus always was on getting out the audio I was putting in, but I really want to understand what's happening on groove level now
This is about what I needed to know to get me in the right direction, very hard to tackle this myself. CPU Controllable motor is in place, but just fixed pitch now. I'll keep you updated on my endeavours
@markrob & @dmills thanks for enlighting me! Over the years my focus always was on getting out the audio I was putting in, but I really want to understand what's happening on groove level now
This is about what I needed to know to get me in the right direction, very hard to tackle this myself. CPU Controllable motor is in place, but just fixed pitch now. I'll keep you updated on my endeavours
Re: Groove width / pitch algorithm
For starters I guess what I'm after is "converting" an audio waveform to a displacement waveform (more a representation of) so I can use it in my normal audio environment, using my trusted analyzing tools etc. Is this possible or am I missing the point here?
Re: Groove width / pitch algorithm
Apply IRIAA filter then just integrate the result, you get a displacement waveform, simples.
It is what you do with that waveform that is where the magic happens.
Regards, Dan.
It is what you do with that waveform that is where the magic happens.
Regards, Dan.
Re: Groove width / pitch algorithm
Thanks again, I need some time so I can ask the right questions. No ghosting, I'll be back!