如何设置视频的持续时间 - android

时间:2017-06-08 23:53:51

标签: android video mediastore

我正在尝试在图库中保存10秒长的mp4文件(目标是将视频上传到脸谱版)。 日志告诉我,文件持续时间是10秒长 - 正如他应该的那样,但是当我试图将其上传到Facebook(手动)时,看起来视频是0秒长而且我不能上传它。  (如果我正在观看手机上的视频 - 它的工作正常,就在我尝试上传时,FB会发生这种情况)

private void addVideoGallery( File file ) {
    ContentValues values = new ContentValues();
    values.put(MediaStore.Video.VideoColumns.DURATION,10000);
    values.put(MediaStore.Video.Media.DATA, file.getAbsolutePath());
    values.put(MediaStore.Video.Media.MIME_TYPE, "video/mp4");
    Log.d("dur",""+values.getAsLong(MediaStore.Video.VideoColumns.DURATION));
    getContentResolver().insert(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, values);
}

我只是想知道我是否将持续时间设置为正确(实际持续时间固定为10秒),或者我应该更改/更新任何内容?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案,我刚刚使用了MediaScanner:

    Intent intent =
      new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
intent.setData(Uri.fromFile(file));
sendBroadcast(intent);

有关详情:http://www.grokkingandroid.com/adding-files-to-androids-media-library-using-the-mediascanner/