Let me concentrate a bit on the "perfect pitch" part.
There are some ways of obtaining the precise information about key even without perfect pitch. The two I know of are a bit weird, and I'm not trying to say that they're being used here. I just want to bring attention to the fact that some trick could have been used and perfect pitch (as we imagine it) is not (strictly said) needed.
I can often tell the key if a guitar is being played. This works best either with simple songs where "standard cowboy chords" are strummed, or with classical guitar, which uses open strings quite a lot. In these cases, the reliability is close to 100%. (Example: I can recognize drop D tuning just by the sound of the 6th string. Another example: Once upon a time I had over 50 unlabeled recordings of classical guitar pieces, and all the corresponding scores. I needed to find out which piece is which. So I sorted the scores by key and then identified the key and meter of the pieces. That left 1-2 candidates for each piece, and I checked them one by one.) However, 2 days ago, I visited a jazz jam session, and this didn't work (jazz people use weird chords with no open strings and they mute the chords quite aggressively — a bad combination :—)). This method will also have trouble with keys that have lots of flats (where "lots" usually means more than two :—)).
Another venue to getting exact pitch info is singing. For instance, if I just decide to sing a "low note" without context, it will most probably be a C♯2. A second trick that sort of works for me is this: if I imagine a guitar string being plucked, I can also imagine a corresponding sound. If I sing the note that I imagined and then check on the piano, it is often within a semitone from the correct note (it works best with A). I find these methods to be quite unreliable, and it is important to try this without context. If I heard some music or even a tone recently, this will fail utterly, because my brain will take that as some kind of a base and stick to it.
To make it clear: I DO NOT have perfect pitch but nevertheless I can do the things described above. In the case of the guitar, I'd say that in each key you use the open strings differently, which gives the keys different "vibes" that can be recognized (which explains why it has trouble with keys like B flat minor that use no open strings). With singing, you need to convert between music and actual physical activity, so I guess that by paying attention to your body, you can guess the associated music, and vice versa.
These two tricks are something that I haven't even learnt; it's more of "one day I found that this actually works". I don't know how to practice that, but I guess there are ways, and if someone puts practice into methods like this, it could lead to a sort of "perfect pitch emulation".