除IE之外的现代浏览器处理MJPEG
(Motion JPEG)。 Here是一个例子。
我可以检测MJPEG
的支持吗?我徒劳地看了Modernizr。
答案 0 :(得分:4)
Modernizr only supports the following formats for detection right now: ogg, webm and h264.
视频元素有一个名为canPlayType(format)
的调用,它真的是你唯一的选择(如果它适用于mjpg)。您的检测逻辑看起来像这样(格式不同)。
var videoElement = document.createElement('video');
if(!!videoElement.canPlayType)
{
var browserConfidence = videoElement.canPlayType('video/mjpeg; codecs="insert, them"');
if(browserConfidence == "probably")
{
// high confidence
}
else if(browserConfidence == "maybe")
{
// low confidence
}
else
{
// no confidence... it definately will not play
}
}
确保visit the W3C's information on canPlayType。看起来mime类型应该是“video / mjpeg”,而不是你之前指定的“video / mjpg”。
答案 1 :(得分:3)
我尝试过最明显的方法来检测图像是否可以加载:
$output = $('<img id="webcam">')
.attr('src', src)
.load(function(){alert('ok')})
.error(function(){alert('error')});
如果可以加载图片load
将触发事件,否则error
。在最近的Chrome和IE8中检查了这一点。按预期工作。
答案 2 :(得分:1)
遗憾的是,您需要使用ActiveX控件来支持IE中的mjpg。见How to embed mjpeg file on a webpage。