最も直接的ではありませんが、これを試すことができます。
まず、.htaccess を設定して、すべての .ogv ビデオを透過的に取得し、PHP で処理します。
.htaccess
RewriteEngine On
RewriteRule ^(.*)\.ogv$ ogv.php?file=$1
ogv.php
<?php
$file = $_GET['file'] . '.ogv';
while ( strpos($file, '..') !== false )
{
$file = str_replace('..', '', $file);
}
$filesize = filesize($file);
header("Content-Type: video/ogg");
header("Content-Transfer-Encoding: binary");
header("Content-Length: {$filesize}");
readfile($file);
exit()
?>
HTML:
<video src="video.ogv" id="video" controls></video>
<script>
var video_src = document.getElementById('video').src;
var xhr = new XMLHttpRequest();
xhr.open('GET', video_src, false);
xhr.send(null);
var size = xhr.getResponseHeader('Content-Length');
alert(size);
</script>
では、このシステムがどのように機能するかを説明します。通常のように .ogv ビデオをリンクするだけですが、最初に .htaccess ファイルがリクエストをキャプチャして ogv.php に送信します。次に、サーバーが自動的に送信しない場合に備えて、PHP ファイルは特にファイル サイズ ヘッダーを送信します。わかりました、それはまだあなたに多くの利益をもたらしませんよね?次に、ビデオの Ajax リクエストを作成し、HTTP ヘッダーからファイルサイズを抽出します。
お役に立てれば。