I know a VPS is pretty much required for e-commerce sites, though some may get by using shared hosting. What about sites hosting lengthy audio and/or video files?
I don't stream audio or video on my VPS because they are resource intensive and the free or cheap services, like Youtube, do a good job.
In addition to security, a VPS or dedicated server gives you a great deal more control over the server environment than shared hosting. Of course you also get better performance, although a VPS is more affected by traffic on the other VPS's on the server than the server companies like to admit.
I think if I were asked to host streaming media, I might put it in the cloud and let the client pay for whatever resource expense incurred.
Use vps hosting when you have a tight budget. If you are not so concerned about security, performance then virtual private server hosting is best for you. If you are hosting a website and a large customer base reaches your site, then you should go for either dedicated server hosting or cloud server hosting services.