The problem you have here is that in order to continue listening to songs more than just a couple of times you'd have to able to classify the song versus an ad. Otherwise once the system heard the song a few times it would start blocking it too.
That's not necessarily a bad thing. The decline in commercial music radio has been, in large part, because people quickly grow tired of hearing the same songs over and over again.
it's radio. the length is infinite. there are pauses in music. there are pauses in speech. Also, he didn't mention anything about delayed listening. The implication was that it happens in real-time so you don't know how long it will be when you need to start dropping the levels.
Ads repeat several times an hour, songs very seldom repeat within an hour and even then usually only once. It should be possible (although not sure how practical) to just autocorrelate the current audio with audio over the past hour.