Re: Combining WAV files
- Posted by Dan Moyer <DANIELMOYER at prodigy.net> Sep 17, 2001
- 428 views
Kat, 1. Could you ramble on a little more, relative to how to take a sample of speech in a wav file and *reduce* the pitch some, while still keeping approximately the same overall duration of the sample? 2. Since wav file wouldn't have negative numbers, would zero-crossing be half-way between biggest & smallest number in wav file, or something else more complex? 3. Just curious: when you say "a 75 watt PWM 1Mhz signal", since I think people can't hear 1Mhz, I'm guessing "PWM" refers to *modulating* a 1Mhz signal with an audio signal? Dan ----- Original Message ----- From: "Kat" <gertie at PELL.NET> To: "EUforum" <EUforum at topica.com> Sent: Monday, September 17, 2001 12:02 PM Subject: RE: Combining WAV files > > On 17 Sep 2001, at 14:08, Bernie Ryan wrote: > > > > > Chris Bensler wrote: > > > Hi all, > > > > > > I already know how to read and write wav files. But I would like to be > > > able to convert the frequency of the file. > > > Any ideas? > > > > > > For example. Convert from 1300 to 44100 > > > > > > Also, I am using Exotica, and it allows frequencies in the negative > > > range. > > > How would I calculate that? > > > > > > > Chris: > > You are asking to increase the number of samples 1300; > > to 44100 samples. There is no way to increase the number > > of samples that you already have. Maybe you are not explaining > > exactly what you are trying to accomplish. > > Besides, 44100hz sampling is too close to Nyquist to be comfy. You'd still > be using a brickwall filter at 20K to avoid aliases, with will make for phase > funnies in waveforms that you can't accurately reproduce anyhow. My > suggestion, if you are striving for perfection, is to sample the original analog > at 100Khz *or more*, this will at least give you 5 samples at 20khz, you > *still* won't be able to reproduce it properly, but it will sound better on hi-end > equipment. The phase accuracy will be significantly improved, but your > mileage may vary per the performance of your person ears. > > I once drove tweeters with a 75 watt PWM 1Mhz signal, 50 times 20khz, or > 25 times Nyquist at audio. Other than the sustained plasma arc on the voice > coil at that power level, the sound was incredible. I was swinging 100v in 2ns, > radiated harmonics disrupted every radio in the building. With reduced > voltage to the drivers, the arc stopped. Below 50khz, the sound quality > suffered. Some people could not hear the sound difference until the PWM > signal freq was lowered to 19khz,, proving that sound is subjective, and > killing my funding into higher quality sounds. But anyhow, if you are looking > for higher accuracy, you must go back to the original analog. Your 2nd best > bet is to interpolate between samples you have now, and look for vlf IM > products between the sampling frequency and the resulting audio, and > modify the interpolation results. This will only work on sustained notes, and it > won't be original quality, but closer. For instance, you could get better upper > harmonics on guitar solos, but not cymbal crashes. Good luck. > > If you are looking to change the playback pitch of the wav file, disregard all > the above, locate zero crossings of the waveform, and "packetize" all the > zero-to-zero sections of the waveform. Then double the packets to get double > the pitch, > > Original: > 1,2,3,4,5, > new: > 1,1,2,2,3,3,4,4,5,5 > > and in the new wav, drop every other sample to play back at double pitch at > the same sample rate. Very lossy, isn't it? But at least one commercial > product used this technique. They used CCD "bucket brigade" devices, > sampling and storing the analog directly, it was very noisey for audio (but > worked fine for video time shifting, which is only 8bits of resolution, i was > involved in reverse engineering the TI CCD drivers for better reliablity in video > work in 1980 or so). It works in reverse too, you can play back at 2x speed, > and drop every other packet, and stretch the remaining packets to fill the > timespace of the two orig packets, and the resulting audio will be the correct > speed, and roughly the correct pitch, but tends to be "choppy" sounding. > Every conversion throws away information. Fine tune your process to sync > the output pitch to whatever multiple of the input pitch you want. > > Kat, > rambling again. >