Probably purest solution is to add header "Content-Disposition: attachment" to that file.
It cannot be done on HTML link level, but you can do it via .htaccess or virtual host configuration.
If you have apache2 with mod_header you can do something like this:
<FilesMatch "\.jpg$">
Header add "Content-Disposition" "attachment"
</FilesMatch>
Other ways you have to make simple PHP script which uses header() function to do the job and then simple pass target file to output.
<?php
$allowed_path = __DIR__."/downloads/";
$file = $allowed_path.basename($_GET["file"]);
if(file_exists($file)) {
header("Content-disposition: attachment");
readfile($file);
}
else {
header('HTTP/1.1 404 Not Found', TRUE, 404);
}
Another way I noticed is that your link to video says wrong content type (it's minor issue):
Content-type: text/plain
You can solve that by adding one more header like this:
header("Content-type: ".mime_content_type($file));
But be careful about security, because if you have any PHP file in $allowed_path it can be downloaded via this script.