Ken, you will definitely need a hosting account with a streaming engine installed -- as well as some way to access that engine and specify settings for your site. These are questions for a prospective host, be sure to ask before signing up!
Alternatively though you could simply have the viewer select their connection speed

which is a VERY common practice on video sites.
As far as how much of the video they watched? ...you can track this in Google Analytics. Go under Content Optimization > Content Drilldown. Each page visited has an "average time spent" calculated for it. You can see each day's average time spent on the page (it is a chart option).
If you need further detail, you'll need a custom stats package. Going into greater detail (like listing view length for just one page, but listing each user who viewed it) is an unusual stats package feature. The standard stats scripts out there just don't do it. If I was looking for per-user detail, to be honest, I would just manually go through my raw access logs.

Bailey