I added a transient pulse in front of the music so that I could (visually) time align the signals before subtracting them.
I added a transient pulse in front of the music so that I could (visually) time align the signals before subtracting them.
(Dependencies: python 2.7, lame, GNU make, mpg123, and (if you use FLAC files as input) flac. Tested on my Linux PC with LAME 64bits version 3.99.5 and mpg123 1.14.4 from the debian stable package repository. Run with -h to get some "help".)
It uses lame to compress and mpg123 to decompress, and I don't know if there's something special going on but the output WAVs always seem to have the same number of samples as the original. And they seem to be aligned - if you use this program you'll find that the difference between WAV and 128kbps MP3 is somewhat noisy, but WAV vs 320kbps MP3 is pretty much silent.
(Or maybe you'll find something totally different! Who knows. I only tested this on my system.)
Listening to the diff of one of those tracks today was interesting! All I can hear is the drums... and where the sound I'm thinking of plays, it sounds like rather quiet interference! But the drums as I recall sounded absolutely identical. Interesting that the ears can detect one thing but not the other.
(I didn't bother to re-run the full comparison, as I'm no longer in my 20s. One good (?) thing about getting old is that your hearing deteriorates, and issues such as this become moot. You can also afford the disk space to just compress everything at 320kbps. Then you don't have to worry about it, and it fits OK on your phone too.)
As you've looked into this before, do you know what the similar difference is like for such professional-grade encoding?
I just fired up Audacity and generated a click track, with the first click at 1 second in. The exported 44.1k wav file, when loaded in Audacity, shows the click at exactly 44100 samples in.
The exported mp3 file, when loaded, shows the click to be around 46357 samples in. (It's a bit hard to measure, because the encoded has smeared the pulse.) Somewhere between 51-52 ms late relative to the wav file.
Listening to the wav and mp3 ticks summed, the delay is obvious--they are not in sync at all. Adding 2257 samples of silence to the front end of the wav file puts them back in audible sync.
----
Verse one finds the narrator in a bustling diner, making observations about her environment. The focus of this text is external to it's author, as opposed to later verses which exist in a more subjective, internal space. Using different settings to harvest the lost material, I was able to isolate both clear, pitched content and more ephemeral transient signals.
Using the python library headspace, and a reverb model of a small diner, I began to construct a virtual 3-d space. Beginning by fragmenting and scrambling the more transient material, I applied head related transfer functions to simulate the background conversation one might hear in a diner. Tracking the amplitude of the original melody in the verse, I applied a loose amplitude envelope to these signals. Thus, a remnant of the original vocal line comes through in its amplitude contour.
Having constructed this background, prominent pitches from the original melody appear and disappear, located variously in this virtual space. These ephemeral sounds hint at a familiar melody, playing with aural memory and imagination, a flickering apparition hovering at the border of consciousness.
----
- found near the bottom of http://theghostinthemp3.com/theghostinthemp3.html