Transcoding once and for all, not on the fly

Wouldn't it make sense to transcode files once, rather than doing it on-the-fly and eating up all the processing cycles?
If so, what is good for the job on a Mac? Handbrake, anything else? Presumably FFmpeg does it?
If its a good idea in general, the 64K question is "which files need transcoding"? Any way to tell which files get transcoded on the fly when played on my VT30?
Is there a "safe" format I can write to which will play on a large range of TVs / other devices in the future?
If so, what is good for the job on a Mac? Handbrake, anything else? Presumably FFmpeg does it?
If its a good idea in general, the 64K question is "which files need transcoding"? Any way to tell which files get transcoded on the fly when played on my VT30?
Is there a "safe" format I can write to which will play on a large range of TVs / other devices in the future?