Maker Pro
Maker Pro

OT Analyzing Audio

M

Meat Plow

Jan 1, 1970
0
I want to record a car engine and determine the RPM by analyzing
the audio waveform without having the waveform from a known RPM to
compare. Suggestions? Anyone know of a more suited group for this kind of
question?
 
W

William R. Walsh

Jan 1, 1970
0
Just a guess, but I think if you knew the number of cylinders and what each
one sounded like when it fired, then you could easily tell how fast the
engine was turning.

I could very well be wrong, however.

William
 
Meat, there is only one way.(ummm)

This is based on real principle and not bullshit, but your FFT better
be good. And you better know how to use it.

There is one constant upon which you can depend, and that is that
there is no regular engine in which each cylinder fires identically.
None. Even if you custom match fuel injectors and throttle bodies and
exhaust for each cyliinder one will sound different, even if it is due
to it's placement in the engine. This is crucial to your goal.

You specifically stated that you would not know the number of
cylinders. while that can be determined after you sync on one, from
what I read that information is irrelevant.

This assumes we are talking about a reciprocating internal combustion
engine, such as is typically used in automobiles. There is no reason
the technique couldn't be used on a Wankel, but I do not think there
is a way to make it work on a turbine. Not without reference, and alot
of it. You say there will be none.

You need to build a fake clock in software, and this will track
certain harmonics, although it has to work a bit differently than what
I described in the other thread (dun remember if you started that or
not, but probably). In this case you need to start with some basic
assumptions, the first of which is the expected RPM.

With audio you can detect one of a few things. Like I said no engine
in the world can have exactly identical firing of all cylinders, even
with extreme measures taken, like a seperate, matched complete intake
and exhaust system. Some sort of spectral abberation will mark the
firing of a certain cylinder in any engine. This is what you must
detect.

Thing is, once you detect that, the number of cyliders is pretty much
irrelevant, although it might be easily determined, that is not the
data which is sought.

More info on exactly what you plan to do would be nice. This is all I
got so far. This CAN be done, but it is not easy.

You implement the software, if this is worth any real money, I will
get involved and help tweak it. But the thing is to detect the
differences between the cylinders. If you can't do that you have no
way of knowing if an eight cylinder is doing 400RPM or a four cylinder
is doing 800 RPM.

Then again you could focus on tracking mechanical noises inside the
engine, totally disregarding the exhaust. I think this might be a bit
more difficult, but I am not really sure, but it is the only other
surefire way that I can see at this point.

JURB
 
M

Martin Thompson

Jan 1, 1970
0
Meat Plow said:
I want to record a car engine and determine the RPM by analyzing
the audio waveform without having the waveform from a known RPM to
compare. Suggestions? Anyone know of a more suited group for this kind of
question?

There was a discussion on something like this on comp.dsp a while
back IIRC...

Cheers,
Martin
 
M

Meat Plow

Jan 1, 1970
0
Meat, there is only one way.(ummm)

This is based on real principle and not bullshit, but your FFT better
be good. And you better know how to use it.

There is one constant upon which you can depend, and that is that
there is no regular engine in which each cylinder fires identically.
None. Even if you custom match fuel injectors and throttle bodies and
exhaust for each cyliinder one will sound different, even if it is due
to it's placement in the engine. This is crucial to your goal.

You specifically stated that you would not know the number of
cylinders. while that can be determined after you sync on one, from
what I read that information is irrelevant.

This assumes we are talking about a reciprocating internal combustion
engine, such as is typically used in automobiles. There is no reason
the technique couldn't be used on a Wankel, but I do not think there
is a way to make it work on a turbine. Not without reference, and alot
of it. You say there will be none.

You need to build a fake clock in software, and this will track
certain harmonics, although it has to work a bit differently than what
I described in the other thread (dun remember if you started that or
not, but probably). In this case you need to start with some basic
assumptions, the first of which is the expected RPM.

With audio you can detect one of a few things. Like I said no engine
in the world can have exactly identical firing of all cylinders, even
with extreme measures taken, like a seperate, matched complete intake
and exhaust system. Some sort of spectral abberation will mark the
firing of a certain cylinder in any engine. This is what you must
detect.

Thing is, once you detect that, the number of cyliders is pretty much
irrelevant, although it might be easily determined, that is not the
data which is sought.

More info on exactly what you plan to do would be nice. This is all I
got so far. This CAN be done, but it is not easy.

You implement the software, if this is worth any real money, I will
get involved and help tweak it. But the thing is to detect the
differences between the cylinders. If you can't do that you have no
way of knowing if an eight cylinder is doing 400RPM or a four cylinder
is doing 800 RPM.

Then again you could focus on tracking mechanical noises inside the
engine, totally disregarding the exhaust. I think this might be a bit
more difficult, but I am not really sure, but it is the only other
surefire way that I can see at this point.

Appreciate your input immensely Jurb. This is a case of alleged tampered
evidence and I was called upon to do some forensic analysis because of my
experience in digital remastering audio recordings. Can't say anything
more because this case is in litigation but I will certain enlighten one
and all upon the outcome.
 
Top