iTunes 9.1 brought a feature to all iPods that had previously only existed for the Shuffle: the ability to sync lower bitrate, 128 kbps AAC versions of songs. With only a modest reduction in sound quality, enabling this feature saved nearly 2 GB of space on my 16 GB iPhone 3G. After enabling it, the feature works by re-encoding songs on the fly to the lower bitrate the first time you sync your iPod. This will likely be followed by a very lengthy first sync as hundreds or even thousands of songs are downsampled to 128 kbps AAC, but all subsequent syncs are supposed to skip this step altogether unless you make major changes to your music library.
Since iTunes 9.1.1, however, I've noticed that there's been an extremely lengthy sync operation every single time I've synced my iPhone, with hundreds of songs that were already on my iPhone being re-encoded again for no apparent reason. Fortunately I haven't been the only one with this bug, and the folks at Mac OS X Hints found a solution to iTunes 9.1.1's syncing bug.