As starblue says, standard recievers are available for this. Here are some options for recievers. Another list of emitters.
Using a ready made reciever is a lot easier than making your own. They contain filtering and adapt for ambient light conditions. Matching this performance is difficult and not really worth it given the cheap price you can buy them for.
You need to choose an emitter/reciever pair with matched wavelength. Then you will need to modulate your emitter in burst for 1's and 0's at the stated frequency of the reciever.
You can choose which protocol you wish you use - RC5 is a simple and popular one. I hacked a little PIC based remote to work the sky box using RC5. This link helped a bit.
On the same site there is more useful info on other protocols and basic Remote Control theory.
No. Absolutely not. The "Last/Return/Previous Channel" button is a unique function code that the TV interprets!
For the most common IR control protocols, Philips' RC5, Sony's SIRC or NEC, the remote is normally an application-specific integrated circuit (ASIC) with hardcoded TV codes for fixed remotes or a microcontroller with a reprogrammable eeprom for learning remotes (programmed via special codes or through a programming interface like JP1 or even IR learning).
The remotes have a single code programmed into each button, and that does not change without intentional reprogramming. These codes are arbitrary for the remote and depend on the TV to interpret. You can see an example for Insignia TVs here: http://www.getzweb.net/jp1/data_returns/DeviceEFCs.php?type=TV&devid=1204&webpid=++396
Each of these codes are single function, unless you get into more advance macros which are a group of codes assigned to the same button that get sent in order.
Unlike some of the dubious test methods listed above, you can actually decode the actual code sent by your remote. All you need is a common IR receiver module and a microcontroller (MSP430, Arduino) or computer like the Raspberry PI.
Once you do, you will find that the "Previous" button will always send the same exact code, regardless of what channel you have switched to and when. The remote does not actively track what channel or ANYTHING you do.
A different way would be to use a IR Learning Remote like the Harmony remotes. If the previous button was an active copy of the last channels selected, then you could not clone the feature.
Further note, the On/Off button is typically a single code that the TV interprets as toggling the current state, but discrete On and discrete Off codes often exist for any given tv, as well as dedicated "Input Source X" button instead of "Next Input" type codes.
The antenna is the rectangular loop trace at the top edge of the PCB. Transistor Q1 is the oscillator. L1 is probably used to provide DC power to Q1, and C1 and C2 are part of the matching and resonating network.