在上传之前获取视频尺寸,客户端

时间:2011-02-08 11:59:05

标签: javascript jquery flex html5 video

我有一个视频上传表单。用户单击“浏览”并选择一个文件。如何在用户选择文件时(在文件上传到服务器之前)获取视频尺寸。它显然必须是客户端的东西,可能是javascript / jquery或flash / flex(虽然更喜欢js // jquery),但是他们中的任何一个都可以这样做吗?

4 个答案:

答案 0 :(得分:2)

不幸的是,简短的回答是你不能 - 你需要使用javascript扫描文件内容,这是不允许的。更糟糕的是,即使你能以某种方式读取文件,你也需要在JS中实现一大堆编解码器来读取头信息。

将此标记为不可能

答案 1 :(得分:2)

理论上,您应该能够使用FileReader API - https://developer.mozilla.org/en/DOM/FileReader

读取文件后,您可以解析标题。据我所知,没有人用javascript做过这个。

答案 2 :(得分:0)

如果尺寸为分辨率:否

如果尺寸是文件大小:(现在)是:

Using jQuery, Restricting File Size Before Uploading

答案 3 :(得分:0)

这是一个非常老的问题,但是现在可以在上传之前在客户端了解视频尺寸。

请参阅以下问题:HTML5 Video Dimensions

示例代码:

var v = document.getElementById("myVideo");
v.addEventListener( "loadedmetadata", function (e) {
    var width = this.videoWidth,
        height = this.videoHeight;
}, false );