Subtitle Edit is a free (open source) editor for video subtitles.
With SE you can easily adjust a subtitle if it is out of sync with the video in several different ways.
You can also use SE for making new subtitles from scratch (do use the time-line/waveform/spectrogram) or translating subtitles.
For a list of features see below or check out the Subtitle Edit Help page.
On my blog you can download latest beta version and read about/discuss new features.