We have our own encoder system and I played 2 weeks full time to figure out the best setting with ffmpeg, this site has been helpful :
http://www.videohelp.com/
It really depend on what you want to do, if it's simple I can give you a unix command to encode your needs, but if you're looking only for an application, handbrake will be a good one.