How to Decode IR Remote Control Signals using Arduino at 56Khz

opale7000:
Now my question is about an 56khz IR receiver and how does the IRlibary knows it is a 56khz receiver as opposed to a 36khz receiver.

As said, the 3-pin receiver (TSOPxxxx) decodes (removes) that 36/38/56kHz carrier signal.
What comes out of the receiver is an on/off pulse train.
See the image in post#22 here Infrared LED frequencies - Project Guidance - Arduino Forum
The thick narrow lines represent the carrier. Just a few are drawn for clarity,
but there could be 50 in a single block.

The Arduino can decode the actual command from that pulse train,
and/or modulate/resend the code on the same or on a different carrier frequency.

So that 36/38/56kHz carrier frequency is only present in the IR transmit part (of the code), not in the receive part.
Leo..