There is no Tivo where I live, so I use my MacBook and a DV Camcorder with firewire to record movies for later viewing. A customized (scriptable) version of WhackedTV and iCal work fine for scheduled recording, but I am locked on one channel until I return to change it.
I started looking for a way for the computer to control the channel selection. A search found a few devices, both USB and serial, some even Mac (OS9) compatible. I made my own receiver with a deivce from allelectronics.com connected to the audio-in on my iMac. It worked for siganl reception and I built databases (signal codes and timing) for all the remotes I had.
The problem came when I wanted to send signals. Because most remotes work with a carrier frequency around 38kHz, using the audio-out (max 96kHz) of my macs would be dicey at best. I eventually built an external NE555 based oscillator and used the audio out to gate the signal to the IR LEDs. This also worked, but was rather bulky.
I realized the issue would be that the system audio was used by WhackedTV for monitoring. I could have worked that out too, but I came across the Iguana Works USB IR Transceiver. What most atracted me was the flexibility of their device, and the amount of information they provide on the webiste, even including the device's the schematics.
I tried compiling the software available on the site before buying the device, but I was unable to get USBLib to work on my machine. So I wrote this software.