2014-05-06 26 views
18

我使用的文件记录能力的移动网络应用程序,我的建筑:限制录像长度

<input id="file-camcorder" type="file" name="camcorder" accept="video/*" capture="camcorder"></input> 

我不知道是否有一种方法,以某种方式限制录制视频的长度,或以某种方式通知用户他们的录制时间过长。问题在于,当您选择在移动设备上录制时,您将被从网络应用程序中删除,因此我不知道在用户使用手机的本机录制应用程序时与用户进行任何交互的方式。

如果有人有任何想法,那会很棒。谢谢!

+7

只是一个更新,虽然我没有弄清楚如何限制录制时间,但我们确实计算出在录制后如何读取录制文件的元数据,以便如果超过了允许的录制时间,文件上传没有处理,并提示用户再次录制。这并不容易,尤其是在quicktime文件的情况下,它包括文件末尾的记录元数据,而不是开始,通常需要文件的完整上传,而我们通过“交换”来解决这个问题。该指数,以便它在一开始。 – mheavers

+0

你想存储视频吗?如果是的话,你是怎么做到的?因为我有多种想法来做你想做的事... – Jordan

+0

我不确定你要求什么可以使用HTML网络API,Web API被设计为设备非特定的,但限制一个设备的时间长度可以使用它的本地应用程序来记录某些内容,这超出了Web API的范围。我甚至不确定Sencha试图这样做。然而,对于本机aps,您可以获得这种灵活性,例如Apple的UIImagePickerController具有videoMaxiumDuration属性 – binderbound

回答

1

您可能需要查看混合应用,如Phonegap。单独的HTML 5对设备功能的访问相对有限。

有人提到过后从元数据中检查视频大小或长度。如果你不能使用Phonegap,那么这很可能是你唯一的选择。

要读取元数据,您可以使用FileReader

1

也许你可以尝试使用html5标签,使用getUserMedia like this将手机的摄像头视频流作为视频源添加,然后从视频流中以有限的次数延迟捕捉图像(或者甚至提示用户在达到一定数量的帧后它们的记录时间过长)。尝试浏览this并查看它是否能解决您的问题。