Wow and Flutter Meter
Moderators: piaptk, tragwag, Steve E., Aussie0zborn
Wow and Flutter Meter
Hi,
There was a recent post on wow and flutter measurements. I decided to try and develop a PC based version using the Flowstone graphical DSP development environment. I have my first pass of this completed and wanted to put it up here for people to try out and provide some feedback. Its a standard standalone 32 bit Windows application (should work on a 64 bit system) that uses default WDM audio drivers. Due to the very low frequency that the filters operate at, I needed to run at an 11.025 Khz sample rate. As it turns out, many cheapy on-board sound systems support this rate. Not all higher end cards do. My old M Audio Delta does. This could present an issue for some as not all audio devices support this rate. I may be able to make this work at 44.1 Khz, but it will take some doing. Make sure your audio buffers are set on the higher side to avoid dropouts. Latency is not a big issue here.
The app works with 3150 Hz, 3000 Hz, and 1000 Hz test signals. I added support for 1000 Hz because not everybody (me included) has wow and flutter test records. But many do have records with 1 Khz reference tones. I allow for weighted and unweighted peak measurements with full scale ranges of 10%, 1%, 0.1%, and 0.01% full scale. I also have a zero centered drift mode that measures deviation from center frequency over the same ranges (DC coupled measurement). Also included is a triggered sweep scope that is connected to the output of the wow and flutter filters. This allows you to see the shape of the wow and flutter components rather than a meter reading. I also added a test generator that can be used as a signal source if you want to cut a test disk. Below are some screen shots showing some of the features.
Wow and flutter measurement of SL-220 turntable with playback of CBS STR-100 1 Khz reference tone. You can see the servo hunting on the scope display. At first, I thought this was a problem with my app, but I can see the strobe hunting on my turntable. Its old, and is not quartz locked, so it makes some sense.
Drift mode shown here. Playing the reference tone on the STR-100. You can see the drift over time on the scope screen.
Measuring my function generator with a 6 Hz deviation from the 3150 Hz carrier. You can see the peak to peak of the generator sweep on the scope and the meter reading that corresponds to the +/- peak value.
There is a zip file attached here with the exe. Let me know if you have issues and I'll try to sort them out. You can used either L or R audio input. The generator outputs on both channels as well. Use the windows sound mapper to select the audio in and out.
Mark
Mark
There was a recent post on wow and flutter measurements. I decided to try and develop a PC based version using the Flowstone graphical DSP development environment. I have my first pass of this completed and wanted to put it up here for people to try out and provide some feedback. Its a standard standalone 32 bit Windows application (should work on a 64 bit system) that uses default WDM audio drivers. Due to the very low frequency that the filters operate at, I needed to run at an 11.025 Khz sample rate. As it turns out, many cheapy on-board sound systems support this rate. Not all higher end cards do. My old M Audio Delta does. This could present an issue for some as not all audio devices support this rate. I may be able to make this work at 44.1 Khz, but it will take some doing. Make sure your audio buffers are set on the higher side to avoid dropouts. Latency is not a big issue here.
The app works with 3150 Hz, 3000 Hz, and 1000 Hz test signals. I added support for 1000 Hz because not everybody (me included) has wow and flutter test records. But many do have records with 1 Khz reference tones. I allow for weighted and unweighted peak measurements with full scale ranges of 10%, 1%, 0.1%, and 0.01% full scale. I also have a zero centered drift mode that measures deviation from center frequency over the same ranges (DC coupled measurement). Also included is a triggered sweep scope that is connected to the output of the wow and flutter filters. This allows you to see the shape of the wow and flutter components rather than a meter reading. I also added a test generator that can be used as a signal source if you want to cut a test disk. Below are some screen shots showing some of the features.
Wow and flutter measurement of SL-220 turntable with playback of CBS STR-100 1 Khz reference tone. You can see the servo hunting on the scope display. At first, I thought this was a problem with my app, but I can see the strobe hunting on my turntable. Its old, and is not quartz locked, so it makes some sense.
Drift mode shown here. Playing the reference tone on the STR-100. You can see the drift over time on the scope screen.
Measuring my function generator with a 6 Hz deviation from the 3150 Hz carrier. You can see the peak to peak of the generator sweep on the scope and the meter reading that corresponds to the +/- peak value.
There is a zip file attached here with the exe. Let me know if you have issues and I'll try to sort them out. You can used either L or R audio input. The generator outputs on both channels as well. Use the windows sound mapper to select the audio in and out.
Mark
Mark
You do not have the required permissions to view the files attached to this post.
Re: Wow and Flutter Meter
Very cool, Mark. Thanks for making the effort!
A couple thoughts. You are currently displaying the %Error. Could you also display a frequency counter measurement of the input signal as well? That would be a handy feature. Also, you could indicate if the input is running faster or slower than the expected frequency.
Thanks again!
A couple thoughts. You are currently displaying the %Error. Could you also display a frequency counter measurement of the input signal as well? That would be a handy feature. Also, you could indicate if the input is running faster or slower than the expected frequency.
Thanks again!
Cutting, Inventing & Innovating
Groove Graphics, VMS Halfnuts, MIDI Automation, Professional Stereo Feedback Cutterheads, and Pesto 1-D Cutterhead Clones
Cutterhead Repair: Recoiling, Cleaning, Cloning of Screws, Dampers & More
http://mantra.audio
Groove Graphics, VMS Halfnuts, MIDI Automation, Professional Stereo Feedback Cutterheads, and Pesto 1-D Cutterhead Clones
Cutterhead Repair: Recoiling, Cleaning, Cloning of Screws, Dampers & More
http://mantra.audio
Re: Wow and Flutter Meter
Thanks for your work. I'll even boot my Windows to try it
I don't do that very often.
Michaela

Michaela
Re: Wow and Flutter Meter
Looks great, but I need at least 44.1.... and will be happy to try at that point. Good show!
Scully "500" with Westrex 3DIIa,
RA-1574E amps.
RA-1574E amps.
Re: Wow and Flutter Meter
Hi,
Todd, the drift mode does show if you are going faster or slow. Its a zero centered meter in that mode so the 10% range scales as +/-5%. If you are going fast, the meter will deflect to the right of center and to the left of center for slow. I can display the frequency based on the deviation from center and the current reference frequency. I tried this and its quite accurate, but its not a true frequency counter. To get any sort of accuracy using a frequency counter, approach, I'd have to run in period measuring mode or the gate time would be 10 seconds for .1 hz resolution 100 seconds for .01 hz resolution. I'll see about posting an update with the deviation measurement method.
EJ, I do plan to try and get this running with a more common sample rate. If the native data type in Flowstone were double precision floating point, it would be no problem. At 44.1 Khz, the IIR coeff's needed to make a high pass with a .25 Hz cutoff need 10 or more significant digits or the filter blows up. The size of an FIR filter top do the job gets to be too large because the tail of the impulse response is very long. There are some down sampling filters in Flowstone that might make this possible.
Mark
Todd, the drift mode does show if you are going faster or slow. Its a zero centered meter in that mode so the 10% range scales as +/-5%. If you are going fast, the meter will deflect to the right of center and to the left of center for slow. I can display the frequency based on the deviation from center and the current reference frequency. I tried this and its quite accurate, but its not a true frequency counter. To get any sort of accuracy using a frequency counter, approach, I'd have to run in period measuring mode or the gate time would be 10 seconds for .1 hz resolution 100 seconds for .01 hz resolution. I'll see about posting an update with the deviation measurement method.
EJ, I do plan to try and get this running with a more common sample rate. If the native data type in Flowstone were double precision floating point, it would be no problem. At 44.1 Khz, the IIR coeff's needed to make a high pass with a .25 Hz cutoff need 10 or more significant digits or the filter blows up. The size of an FIR filter top do the job gets to be too large because the tail of the impulse response is very long. There are some down sampling filters in Flowstone that might make this possible.
Mark
Re: Wow and Flutter Meter
Yes, I see. I guess all I was really asking for was an LED red/green indicator of slow/fast on the wow and flutter screen, possibly next to the signal present indicator.
Cutting, Inventing & Innovating
Groove Graphics, VMS Halfnuts, MIDI Automation, Professional Stereo Feedback Cutterheads, and Pesto 1-D Cutterhead Clones
Cutterhead Repair: Recoiling, Cleaning, Cloning of Screws, Dampers & More
http://mantra.audio
Groove Graphics, VMS Halfnuts, MIDI Automation, Professional Stereo Feedback Cutterheads, and Pesto 1-D Cutterhead Clones
Cutterhead Repair: Recoiling, Cleaning, Cloning of Screws, Dampers & More
http://mantra.audio
Re: Wow and Flutter Meter
Hi,
Here is an update with the slow/fast LED's and an input frequency display. I also improved the mode selection drop downs. I was using the wrong type (menu selector) and it was causing some issues.
Here is an update with the slow/fast LED's and an input frequency display. I also improved the mode selection drop downs. I was using the wrong type (menu selector) and it was causing some issues.
You do not have the required permissions to view the files attached to this post.
Re: Wow and Flutter Meter
Sweet!
Cutting, Inventing & Innovating
Groove Graphics, VMS Halfnuts, MIDI Automation, Professional Stereo Feedback Cutterheads, and Pesto 1-D Cutterhead Clones
Cutterhead Repair: Recoiling, Cleaning, Cloning of Screws, Dampers & More
http://mantra.audio
Groove Graphics, VMS Halfnuts, MIDI Automation, Professional Stereo Feedback Cutterheads, and Pesto 1-D Cutterhead Clones
Cutterhead Repair: Recoiling, Cleaning, Cloning of Screws, Dampers & More
http://mantra.audio
Re: Wow and Flutter Meter
Excellent. Thank you.
Re: Wow and Flutter Meter
Hi,
I was able to make this work at common sample rates like 44.1 Khz. I added a drop down to allow you to select the sample rate. I would not go beyond 44.1 Khz as this uses more CPU and I did not test above this limit. If you can run at 11.025 Khz, the CPU load will be minimized. On my i7 box here, 11.025 uses about 2% CPU. At 44.1 I see about 10% CPU load. YMMV.
I also added an internal cal check generator. This produces a signal that has 0.8% peak flutter modulated at 4 Hz. When selected, it disconnects the sound card input and feeds the cal check signal to the input. It also feeds this to the sound card out so you can hear the cal check tone (0.8% is quite audible). If the meter is set for Wow and Flutter measurement, you should read 0.8% on the meter and see the demodulated 4 Hz sine wave on the scope. Since 4 Hz is the peak of the weighting curve response, you should see no change in the meter reading using weighting vs. unweighted modes.
Mark
I was able to make this work at common sample rates like 44.1 Khz. I added a drop down to allow you to select the sample rate. I would not go beyond 44.1 Khz as this uses more CPU and I did not test above this limit. If you can run at 11.025 Khz, the CPU load will be minimized. On my i7 box here, 11.025 uses about 2% CPU. At 44.1 I see about 10% CPU load. YMMV.
I also added an internal cal check generator. This produces a signal that has 0.8% peak flutter modulated at 4 Hz. When selected, it disconnects the sound card input and feeds the cal check signal to the input. It also feeds this to the sound card out so you can hear the cal check tone (0.8% is quite audible). If the meter is set for Wow and Flutter measurement, you should read 0.8% on the meter and see the demodulated 4 Hz sine wave on the scope. Since 4 Hz is the peak of the weighting curve response, you should see no change in the meter reading using weighting vs. unweighted modes.
Mark
You do not have the required permissions to view the files attached to this post.
Re: Wow and Flutter Meter
Hi mark
Thankyou for sharing this can't wait to use it with my cubase daw.
Dimi
Thankyou for sharing this can't wait to use it with my cubase daw.
Dimi
Re: Wow and Flutter Meter
Hi Dimi,
This is a standalone app. It is not a VST plugin.
Mark
This is a standalone app. It is not a VST plugin.
Mark
Re: Wow and Flutter Meter
I don't suppose this app works in W10????
Re: Wow and Flutter Meter
Yes it does. Its a 32 bit app, but runs fine on W10 64.
Mark
Mark
Re: Wow and Flutter Meter
So there actually IS an ASIO app running that needs killing or is it that direct sound needs enabling or something???
Re: Wow and Flutter Meter
Found the problem: ASIO Bridge, a virtual cable thingie, that I wanted to use for doing measurements on files using sw intended for live measurements.
Thanks for the software! Will be very useful
Thanks for the software! Will be very useful