Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. I built non-autoregressive decision models with RL a year ago(convaiinnovations.com ↗)
    175comments
  2. AI-generated posters don’t have to be horrible(john.hartnup.uk ↗)
    560comments
  3. Human brain is two separate organs, Stanford Medicine-led research finds(stanford.edu ↗)
    200comments
  4. Btrfs/ZFS/bcachefs under workloads classic benchmarks skip(bartosz.fenski.pl ↗)
    3comments
  5. A graphical desktop for the ZX Spectrum(github.com/mindbox77 ↗)
    85comments
  6. Tin: full-text search for Postgres(planetscale.com ↗)
    57comments
  7. “The Secret Life of Circuits” is here(coredump.cx ↗)
    59comments
  8. Android 17 is the first since 3.x to add new APIs without releasing to the AOSP(grapheneos.social ↗)
    598comments
  9. Show HN: CUA-S1 – A System One Model for Computer Use(github.com/trycua ↗)
    discuss
  10. Supabase (YC S20) Is Hiring for OrioleDB(supabase.link ↗)
    discuss
  11. Black Holes or Black Hole Stars? Astronomers Spar over 'Little Red Dots'(quantamagazine.org ↗)
    23comments
  12. New evidence for hidden chambers beyond Tutankhamun's tomb(nature.com ↗)
    13comments
  13. People who know the most often sound the least certain(vrash.substack.com ↗)
    9comments
  14. GPT-6 Astra Solves a WWI German Radio Cipher(prinzai.com ↗)
    146comments
  15. San Francisco Onion Futures Company(onionfutures.com ↗)
    133comments
  16. Suzanne Ciani's Buchla Cookbook(echo.orpheusinstituut.be ↗)
    discuss
  17. Almost Never Use AI to Write Anything Substantive(erichgrunewald.substack.com ↗)
    40comments
  18. Cloudflare Quick Tunnels(cloudflare.com ↗)
    302comments
  19. How to Write with an LLM(sockpuppet.org ↗)
    365comments
  20. If math is more than proof, we need to better celebrate the rest of it(terrytao.wordpress.com ↗)
    208comments
  21. What Zig felt like, coming from Rust(besok.github.io ↗)
    150comments
  22. You can run Git on object storage if you re-make packfiles(tigrisdata.com ↗)
    29comments
  23. Saving another 100TB of RAM(cloudflare.com ↗)
    93comments
  24. Communication by means of modulated Johnson noise(pnas.org ↗)
    23comments
  25. Asking Authors About Their Own Papers(medium.com/tmlrorg ↗)
    51comments
  26. How OpenAI Used Its Own LLMs to Design Its Jalapeño Chip(ieee.org ↗)
    123comments
  27. SDCC – Small Device C Compiler(sourceforge.net ↗)
    26comments
  28. Adventures in Microcontroller Circuit Debugging(bigmessowires.com ↗)
    1comments
  29. Science Is Open Software(jepedersen.dk ↗)
    57comments
  30. Ray Ozzie and the Optimism of Being Early(reproof.app ↗)
    20comments

Shazam: not magic after all

77 pointsby 17y agoblog.revolution-computing.com
28 comments
17y agoHN ↗

quote from the article:

"Unfortunately, there's no indication in the paper of what software was used to develop the process (although the scatterplots in the paper do look decidedly R-like)."

I used to work with Avery Wang, the guy who devised the algorithm. He used Matlab.

17y agoHN ↗

Here is what they say in the website:

"Specifically, a fixed length of audio is converted to audio DNA; this conversion process extracts certain features from the signal based on the psycho acoustic considerations. The system has two components, one that enables the extraction of Audio DNA from a few seconds of recording, and the other is an efficient search engine that finds the exact match for the DNA.

The audio DNA is based on extracting 64 sub DNAs every 3 seconds. The sub DNAs are generated by looking at the energy differences along the frequency and time axes. These 64 sub DNA form the chromosomes of the system, which enables the system to uniquely identify the chosen song."

Looks to me like pretty much the same technology. This is again not a surprise. Most implementations of this idea will be using similar techniques. What I am amazed at is that somebody thought that all this was feasible.

17y agoHN ↗

It's just a variation on speech recognition, which has been around for a while.

17y agoHN ↗

Quite funny anyone would argue it wouldn't work. It's pretty similar to speech recognition algorithms which have been around for a while now.

17y agoHN ↗

Aww man, when I read the headline I was expecting a SpinVox-like scandal. Like a room full of idiot-savants in Bangalore that knew every pop hit for the last 50 years or something.

17y agoHN ↗

heh. It is actually fascinating how strong crowd sourcing can be. You would logically opt the manual root & surprisingly lot of times esp for cost and simplicity of solution

5-6 hrs of a good developer == 1 month of 3 ops in India or elsewhere. Except that getting ops to work itself can be painstaking.

17y agoHN ↗

I disagree, any type of programming is magic.

I'm tired of these software 'engineering' types who insist that computers are run by using 'maths' and 'numbers' (whatever those are).

Clearly, computers are run by aphasic tonally-separated spinning disks. These disks fire puffs of air out the sides of the computer, creating little tiny tornados, which summon air spirits to call the fire spirits, which causes the screen to light up and the keys to make tappy-tap noises.

anyway. to be clear: not statistics. not math. not regulated pulses of electrons. MAGIC!

17y agoHN ↗

A good hack is indistinguishable from magic. (Yes I know that the original quote is "Any sufficiently advanced technology is indistinguishable from magic")

17y agoHN ↗

In my experience, the people who are most informed about how a computer actually works are those most convinced that it runs on magic. All my compE friends insist that cpus are maintained and operated by tiny gnomes.

While less technical people don't understand, they have 'faith' that there's a logical, scientific explanation for how computer's work.

17y agoHN ↗

This is exactly how you identify chemical compounds using X-Ray Crystallography. You shine x-rays of different frequencies onto a compound, measure the magnitude of the reflections, noting down the 3 highest peaks.

Then, you look up those peaks in a book, which has compounds ordered by the wavelength of the highest peak.

It takes minutes to do it by hand, I'm not surprised computers can do it better.

17y agoHN ↗

That's very interesting! I have a friend who worked on a project that was using this process but I never knew the name of it!

17y agoHN ↗

I was working on a little side startup that used crowdsourcing to help ID songs, I was just getting into researching how programs like shazam and midomi worked until I killed the project. His paper and the way it works is quite nice, but it's not perfect for other rare music and songs without elements that really stand out(frequencies or otherwise like house music). Thanks for the link!

17y agoHN ↗

It would be much better if you could hum or whistle a tune, and it would recognize it. I saw a PhD thesis once about this, with an actual implementation that worked pretty well. The only problem was that the database of songs was very small. It's probably hard to scale this type of search.

17y agoHN ↗

The majority of people doesn't have an ear for music to correctly repeat melodies :(

17y agoHN ↗

Exactly. But this algorithm was fuzzy, so it gave you a list of the songs which most closely resembled the one you tried to sing.

17y agoHN ↗

I tried to use different "query by humming" services but the percentage of false positives (when a service produced a list of melodies and no one matched yours) was really huge. And even if the melody was in the list and you tried to find it again with the same service (by humming the same tune) the probability of getting it in the list again was pretty low.

Anyway, I think the idea of query by humming is not a dead end. However, such a hypothetical service should somehow collect and use a database of different "hums".

17y agoHN ↗

I remember once seeing a "dictionary" of songs. Each one was indexed by whether notes were higher, lower or the same as the previous note. Using D for down, S for same and U for up, and using # for the first note, here's the Start Spangled Banner ...

    #DDUUUUDDDUUSSUDDDDUUSDDD

Many, many tunes can be separated with the first 20 symbols.

Anyone have a reference? I'd like to acquire a copy ...

17y agoHN ↗

SongTapper - surprisingly accurate - I think it works because it outsources a lot of the frequency/beat detection (to your brain/sense of rhythm)

http://songtapper.com

17y agoHN ↗

The article and comments seem to suggest that the use of Matlab or R is a prerequisite for performing calculations such as this. However, MIR (Music Information Retrieval) libraries exist for a number of languages, including Java[1] and Ansi C[2], amongst others. A good dynamic language for experimenting with this sort of thing is SuperCollider[3].

By the way, the psycho-acoustically spectral measurements referred to in the article are called MFCCs[4] - basically an FFT reading weighted according to the sensitivity of our ears. They are often used in both music and (especially) speech recognition because they tend to accurately sum up the timbre we perceive in a given sound. Timbre is much easier to extract from a digital audio file than pitch or vocal information, hence why it tends to be successful in applications such as this.

Shazam is still pretty cool too

[1] http://jmir.sourceforge.net/

[2] http://libxtract.sourceforge.net/

[3] http://supercollider.sourceforge.net/

[4] http://en.wikipedia.org/wiki/Mel-frequency_cepstrum

17y agoHN ↗

Now recognize people! Or cars, or engine problems, or birds...Rats! I missed the yc deadline by 1 day!

17y agoHN ↗

I have often sat in coffee shops wondering what method of data extrapolation Shazam used to parse audio to be able to search it's music db. I would think about how I would do it. I use Shazam all the time so it's nice to finally know the basic idea.