The RPi does not have a composite video (CVBS) input. Seems a lot of people would like one. And the rumours are that the BCM2835 SoC does have the A/V input, as well as the output, but the input hasn't been implemented on the RPi board. Folk are suggesting that a USB capture device is used, but it seems a shame to waste the internal BCM2835 hardware H.264 encoding, only to duplicate it externally. You could attach a digital camera to the camera port, but not an analogue AV one, or analogue video. It's probably been left off for cost reasons, in the assumption that it wouldn't be a popular feature. The rest of your requirements (capabilities, encoding, etc) are there, in essence, including your buttons (GPIO ports).