Turntable speed stabilty

So then if we restrict input files to 16 bit the built-in .wav reader should work.
I think that's the way to fly for now, and removes a step of Sox conversion. Of course, Sox or audacity etc etc could still be used to convert pretty much any file format to 16 bit wav.

My vote is to standardise on 44.1/16 2 channel, until or unless Python gets sorted or someone finds or writes a compatible audio file handler. That's not much of an imposition, methinks.

LD
 
I should confirm, for the purpose of putting up files for analysis using my polar plot SW, pretty much any lossless file format, sample rate, bit depth or level is fine. Stereo or mono is fine, and pretty much any tone frequency for that matter.....

LD

My bad, Scipy has it's own .wav reader distinct from the built-in one, we might be able to obviate all this file format worry. I will explore this today.
 
OK, the packed 24bit integer format is still not supported but 16bit int, 32bit int, and 32 bit normalized floats all seem to work fine. So I will change the code to eliminate the file conversion step with the caveat that some recorders use the 24bit packed format to save space recording 24bit audio and software converts them to 32bit float for editing so it might go unnoticed to the user.

Certainly if we stick with LD's recommendation we will be done with this. BTW the sample rate is also returned by the read function.
 
Last edited:
Meaning 24bit packed format needs to be converted before it's fed to the script?

Yes, but Audacity or any other program can do this, just open and resave no more headers etc. to edit. I don't know of any recorder that can't be told to use 16bit, just that like most folks for making recordings to edit I always have 24bit as a default.

I spent a day once doing a 24bit read/write in C including support for big or little endian words, It is not that hard and I guess the Python community needs one hard core audio geek to do it. It involves reading in 8bits at a time and reassembling/disassembling the data into even byte containers with some shuffling.
 
Last edited:
Here is an update, mono and stereo (first channel) .wav files work in 16bit int, 32bit int, and normalised 32bit float format. 24bit and some other esoteric floating point formats may not work (24bit for sure does not work). To be safe just use 16bit at any sampling rate (files need to be >=4sec). No resolution at all is lost at 16bit.
 

Attachments

Thanks Scott. :up: Now I just have to figure out how to invoke the python handler in OSX, or maybe Windoze 10. Never run a script before.

Go to the Anaconda site there should be a guide. Things are easier from idle which is a very simple environment to run scripts. Anaconda installs idle and under Win10 you just type idle in a command window, open the script, and press F5 (run). You do need to put the stuff from my LA article where Python finds it, I will try to eliminate this step.
 
Last edited:
It would help non-programming users to include the defs from your Linear_Audio library directly in the code.
Also for some users a prompt for the wav file name rather than editing might be simpler.
It's a lot easier to use the code in Ubuntu than Windows
 
It would help non-programming users to include the defs from your Linear_Audio library directly in the code.
Also for some users a prompt for the wav file name rather than editing might be simpler.
It's a lot easier to use the code in Ubuntu than Windows

For the same reason changing over to Python's IIR filters will probably also speed things up even more. The other idea is good, the only thing better would be a drag and drop. I'm working on the filters today (looks easy).
 
There is some great work happening here, keep it coming!



Hope no one minds but I processed the above sound file using the software I was given by the guy who used it on the Pink Fish Media Thread – see http://http://www.pinkfishmedia.net/forum/showthread.php?t=70027.

The polar plot does not give absolute values but as the software exaggerates any errors, such are readily apparent. The two FFT plots are, with respect to frequency, absolute values. The FFT Demodulated one was of particular use in sorting my Lenco out. I have also added an Audacity FFT plot of the sound file.

View attachment 635186

View attachment 635187

View attachment 635189

View attachment 635188

From my experience the results are very good and it would be hard to better. Only things to note are that the TT is running slightly slow (nominally 2996Hz (-.13%)), there is a slight peak at 16.5 Hz (which is apparent on LD’s FFT plot as well) and the Test LP is very slightly off centre (not a TT failing!!). It would be good to see a PlatterSpeed app result for this TT.

I hope this is of interest.

Regards,

Late again, but that spectrum plot looks very close to the actually measured spectrum on my Kuzma. The plot with the mains sidebands is ex-factory, for the cleaner plot we tuned the AC motor phase shift capacitor. Worth.

Jan
 

Attachments

  • Kuzma Stabi S Speed asis .png
    Kuzma Stabi S Speed asis .png
    4.4 KB · Views: 212
  • Kuzma Stabi s Speed after .png
    Kuzma Stabi s Speed after .png
    4.5 KB · Views: 209