我需要将视频发送到客户端站点,但由于编解码器不同,我不想发送重复的视频)。
我在将 jscript 函数的结果转换为 $variable 时遇到了很多问题。由于检索 SELECT 的复杂性,我无法使用 DISTINCT,我需要包含扩展名。
我花了几天时间下载无法开始工作的“示例”。下面是从两个示例 Detecting HTML5 videos 和 How to pass jscript variables 中创建的最新内容。
<script>
function playsvideo() {
return supports_video();
}
function supports_h264() {
var v = document.createElement("video");
return v.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"');
}
function supports_ogg() {
var v = document.createElement("video");
return v.canPlayType('video/ogg; codecs="theora, vorbis"');
}
function supports_webm() {
var v = document.createElement("video");
return v.canPlayType('video/webm; codecs="vp8, vorbis"');
}
<?php
if(playsvideo()) {
if(supports_ogg()?true:false) {$ext='ogv';}
else if(supports_webm()?true:false) {$ext='webm';}
else if(supports_h264()?true:false) {$ext='mp4';}
else {$ext='flash';}
}
?>
</script>
如果我将一个常量传递给 MYSQL,那么网页就可以工作,但是上面的代码作为我的 HEAD 部分中的最后一项,网页挂起时只有一个空白页(背景颜色已设置)。我也尝试过将 php 精简为一行:
if(paysvideo()) {$ext='ogv';} // still hangs