Is there any way out so that a video available online cannot be downloaded ? I have checked almost every way out and found that everything can be spoofed. So does anyone knows anything else that cannot be spoofed ?
You need to understand that in order for the human user to view the content, the browser (or some other software) need to download it. And when the content has been downloaded to the user's computer, you no longer control the access to it.
So-called "streaming" is just a download-mode where the standard viewer is programmed to automatically delete the content after it has been viewed by the human. However, this can be circumvented by either using a non-standard viewer (i.e. one that skips the deletion step), or by having another piece of software running that grabs the content from the frame buffer when it being viewed - and saves it permanently.
If it can be viewed, it can be captured.
If you're looking for absolute security, then no. Everything that can be seen can be downloaded. You can just make it harder. Screengrabbing will always work.
Not if someone really wants the content, no.
But to defeat casual users, you can try the following:
- host your video on amazon s3 + cloudfront
- use signed urls so the url can only be requested from a certain ip for a certain amount of time
- keep the signed url generating page (say php) behind a login, and only let them login from a certain number of ip addresses per month
if they have stream capturing software, then you are out of luck, but they can't share the login with too many people, and they can't share the video url with anyone.