Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Identifying audio signatures with low frequency and on phones #2

Open
AliasIO opened this issue Mar 28, 2018 · 4 comments
Open

Identifying audio signatures with low frequency and on phones #2

AliasIO opened this issue Mar 28, 2018 · 4 comments

Comments

@AliasIO
Copy link

AliasIO commented Mar 28, 2018

Hi. Nice work on this, first of all. I realise this is an older project but I have a couple of questions.

Do you have any suggestions why the audio signature is no longer identified when the base frequency is lowered to the audible range?

Have you had any luck getting this to work on mobile devices? Currently on Chrome and Firefox on my Pixel 2 XL, it doesn't pick up on audio signatures either.

Thanks!

@khankuan
Copy link
Owner

I suspect there is a limitation on audio devices on how low sound can be detected.

For mobile devices, there is a chance that noise cancellation on the phone kicked in for other method of emitting sound waves.

@jonongjs thoughts?

@AliasIO
Copy link
Author

AliasIO commented Mar 28, 2018

By low frequency I mean sound in the audible range (mainly for debugging), so I wouldn't expect any issues detecting it.

@khankuan
Copy link
Owner

I think the intention is to make it inaudibl to humans .and also less susceptible to interference.

@jonongjs
Copy link
Collaborator

Don't have the chance to test this out, but have you tried playing around with the bufferSize, size and step variables? I think the defaults were tweaked to work for higher frequencies.

Also, one thing to note is that we initialized our FFT object in audiosignlistener.js with a hardcoded sample rate of 44100Hz, when this should have been obtained from the audio context instead. So results might be wrong if you have a device that records at other rates.

Finally, regarding mobile browsers: this old project relies on ScriptProcessorNode, which has been marked as deprecated. I'm not sure if mobile Chrome and Firefox still support it. It might be better to change the whole ScriptProcessorNode code to use AnalyserNode instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants