Skilled cardiologists probe heart sounds by electronic stethoscope through human ears, but interpretation of heart sounds is a very special skill which is quite difficult to teach in a structured way. Because of this reason, automatic heart sound analysis in computer systems would be very helpful for medical staff. This paper presents a complete heart sound analysis system covering from the segmentation of beat cycles to the final determination of heart conditions. The kernels of heart beat cycle segmentation and recognition are based on autocorrelation, short-time Fourier transform, and support vector machines. The experiments are done by a public heart sound database released by Texas Heart Institute. A very promising recognition rate has been achieved.