phonegap插件,用于从库中选择视频

时间:2011-09-12 05:07:38

标签: iphone ipad

我需要能够从库中选择一个视频并将其上传到我的服务器。

我可以录制一个新视频(captureVideo)并上传它(filetransfer)没问题,但我似乎找不到任何方法打开视频库并选择一个视频然后上传它。

有没有办法做到这一点?以某种方式更改MediaType navigator.camera.getPicture?

感谢任何帮助,提前谢谢

Nilesh制作

2 个答案:

答案 0 :(得分:0)

我们解决了这个问题如下:

function ideaCommitLibraryVideoAttach() {
if(PhoneGap.available) {
    var options = {quality: 80};
    options["sourceType"] = 0;
    options["correctOrientation"] = true;
    options["allowEdit"] = true;
    options["mediaType"] = 1;
    navigator.camera.getPicture(ideaCommitLibraryVideoReceive, ideaCommitVideoAttachFail, options);
}
}

function ideaCommitLibraryVideoReceive(data) {
if(PhoneGap.available) {
    var gotFS = function(fileSystem) {
        var fail = function() {notify("Can't open file!");};
        var gotFileEntry = function(fileEntry) {
            var fail = function() {notify("Can't write attachment in a temporary file!");};
            var gotFileWriter = function(fileWriter) {
                fileWriter.onwriteend = function(evt) {
                    ideaCommitVideoReceive([fileEntry]);
                };
                fileWriter.write(data);
            };
            fileEntry.createWriter(gotFileWriter, fail);
            file = fileEntry;
        };
        fileSystem.root.getFile("y"+ new Date().getTime()+".mp4", {create: true, exclusive: false}, gotFileEntry, fail);

    };
    var fail = function() {notify("Can't open file system!");};
    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
}
}

唯一剩下的问题如下:我们没有找到一种方法来访问视频作为文件,但只是作为base64编码。因此,在从App内部选择视频后,我们无法为用户提供预览可能性。有没有人知道如何解决这个问题?

答案 1 :(得分:0)

从库或最近捕获中预览元素的最简单方法是使用本机

html5视频,图片或音频标签,其中uri在getPicture成功调用中返回,

capturePicture,captureVideo或captureAudio ...希望它有所帮助。