Live data from Hacker News

Cat meow sounds visualized with auto-correlation function

soundshader.github.io

31–35 of 35 posts

Re: Cat meow sounds visualized with auto-correlation function

#31
post #28

Earlier quoted context omitted.

The phase is dropped but isn't there more going on? Comparing the signal to itself at various lags? I don't see how just dropping the phase accomplishes that.

Not really. ACF is defined as a convolution of signal X with itself: XX. But FFT turns a convolution into a dot product: FFT[XX] = FFT[X]·FFT[X], or just |FFT[X]|². But what is this really? If X is a sum of A·cos(2πwt+φ) waves, then FFT[X] is a set of A·exp(iφ) complex numbers. What does |FFT[X]|² do? It turns those complex numbers into A². Inversing this FFT gives a sum of A²·cos(2πwt) waves, so in effect ACF has dr…

ACF has a lag argument correct? Also isn't the bright vertical line just the result of the fact that ACF at lag 0 is 1?

Re: Cat meow sounds visualized with auto-correlation function

#32
post #29

Earlier quoted context omitted.

432 vs 440 Hz in music is the equivalent of the C++ vs Java battle. Vivaldi was a proponent of 432 Hz, so it's only when he died, newthinkers had recalibrated pianos to 440 Hz. I believe the newthinkers are simply lacking taste, and rounding 432 to 440 is same as chopping off a chunk of Parthenon to "fix" its proportions from the golden phi ratio to 3/2.

No, it's not. Java and C++, hell even Java and C# are much more relevantly dissimilar than setting A at 440 vs 432. I'd love to see a citation on Vivaldi's love for 432, he wasn't even playing in 12-TET was he? He'd probably be playing in meantone during that era right? I figure he'd be way more mad about using the wrong intonation to play his music than a difference absolute pitch reference. > rounding 432 to 440 Ro…

Well, I don't know. My personal reason is that 432 has at least some connection to reality, e.g. half day = 43,200 sec, or speed of light = 432 x 432 miles/sec, or Sun's radius = 432,000 miles. This means that if we take distance that light covers in 1/432 sec, then Sun's radius is exactly 1000 such distances, which is pretty cool.

On the other hand, 440 Hz seems just a random number to me picked by someone with little imagination.

Re: Cat meow sounds visualized with auto-correlation function

#33
post #28

Earlier quoted context omitted.

Not really. ACF is defined as a convolution of signal X with itself: XX. But FFT turns a convolution into a dot product: FFT[XX] = FFT[X]·FFT[X], or just |FFT[X]|². But what is this really? If X is a sum of A·cos(2πwt+φ) waves, then FFT[X] is a set of A·exp(iφ) complex numbers. What does |FFT[X]|² do? It turns those complex numbers into A². Inversing this FFT gives a sum of A²·cos(2πwt) waves, so in effect ACF has dr…

ACF has a lag argument correct? Also isn't the bright vertical line just the result of the fact that ACF at lag 0 is 1?

It does, but ACF[X] at 0 is the sum of X[i] squares, so when sound gets louder, ACF at 0 also gets higher.

Re: Cat meow sounds visualized with auto-correlation function

#34
post #33

Earlier quoted context omitted.

ACF has a lag argument correct? Also isn't the bright vertical line just the result of the fact that ACF at lag 0 is 1?

It does, but ACF[X] at 0 is the sum of X[i] squares, so when sound gets louder, ACF at 0 also gets higher.

You're probably sick of this conversation by now :). But at least in radio applications I think that acf[0] is normalized so that it's 1 (typically). And again the ACF is calculated at several lag arguments and the sum is used to build the final graph / array.

But you obviously know more about this than me, I'm just putting out what I know. Your paragraph above, I actually copied so I can study it a few times. So thanks.

Re: Cat meow sounds visualized with auto-correlation function

#35
post #33

Earlier quoted context omitted.

It does, but ACF[X] at 0 is the sum of X[i] squares, so when sound gets louder, ACF at 0 also gets higher.

You're probably sick of this conversation by now :). But at least in radio applications I think that acf[0] is normalized so that it's 1 (typically). And again the ACF is calculated at several lag arguments and the sum is used to build the final graph / array. But you obviously know more about this than me, I'm just putting out what I know. Your paragraph above, I actually copied so I can study it a few times. So tha…

It sounds this is what I'm doing: taking ACF at equally spaced offsets. Not sure what the sum of ACFs would achieve, but this might turn out a good idea.
Post reply on HN