【问题标题】:MediaFile.getFormatData() of newly-recorded video contains bad information新录制视频的 MediaFile.getFormatData() 包含错误信息
【发布时间】:2014-06-10 19:57:08
【问题描述】:

我使用 Cordova (PhoneGap via Ionic) 3.x 及其捕获插件从设备的摄像头录制视频。录制完成后,我想获取视频的持续时间以在我的应用程序中使用。但是,当我在 iPad 上运行此测试时,MediaFileData 对象包含归零信息。这是一个sn-p:

navigator.device.capture.captureVideo(
    function(files) {

        var videoFile = files[0];

        videoFile.getFormatData(function(fileData) {
            console.log('file data:' + JSON.stringify(fileData));
        });
    }
);

控制台输出为:

file data:{"width":0,"duration":0,"bitrate":0,"codecs":null,"height":0}

iOS 中是否存在已知错误?我在documentation 的警告部分没有看到任何内容。非常感谢任何帮助。

【问题讨论】:

  • 您找到解决此问题的方法了吗?
  • c0r3yz:不,我没有。在文件写入完成后,我必须通过重新查询媒体资产来解决这个问题。即使这样,如果写入文件和元数据的时间过长,也会发生竞争情况。我向 Cordova 提交了一个错误,但也没有听到任何消息。
  • 感谢您的回复!我最终通过使用文件的大小而不是持续时间来解决它。

标签: ios cordova phonegap-plugins


【解决方案1】:

我也被这个问题困住了。 确保您拥有最新版本的插件。此处已修复:

CB-7117

如果您无法更新插件,请执行以下操作:

var videoFile = files[0];
videoFile.localURL = videoFile.fullPath;

希望对你有帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-14
    • 2016-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多