gpt4 book ai didi

android - 从视频中获取帧 Android

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:18:43 25 4
gpt4 key购买 nike

我想从视频中获取帧数。我正在使用以下代码:

package com.vidualtest;

import java.io.File;
import java.io.FileDescriptor;

import android.app.Activity;
import android.graphics.Bitmap;
import android.media.MediaMetadataRetriever;
import android.os.Bundle;
import android.os.Environment;
import android.widget.ImageView;

public class VidualTestActivity extends Activity {
/** Called when the activity is first created. */
File file;
ImageView img;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);


img = (ImageView) findViewById(R.id.img);

File sdcard = Environment.getExternalStorageDirectory();
file = new File(sdcard, "myvid.mp4");

MediaMetadataRetriever retriever = new MediaMetadataRetriever();

try {
retriever.setDataSource(file.getAbsolutePath());

img.setImageBitmap(retriever.getFrameAtTime(10000,MediaMetadataRetriever.OPTION_CLOSEST));


} catch (IllegalArgumentException ex) {
ex.printStackTrace();
} catch (RuntimeException ex) {
ex.printStackTrace();
} finally {
try {
retriever.release();
} catch (RuntimeException ex) {
}
}


}

在 getFrameAtTime() 中,我传递了不同的静态时间,例如 10000、20000 等,以毫秒为单位,但我仍然在不同的时间内从视频中获取相同的帧。我的目标是获得具有不同时间间隔的不同帧。

请给我你可能的帮助。

谢谢

最佳答案

时间偏移参数的单位是微秒,不是毫秒。因此,将您的时间偏移量乘以 1000,它应该可以正常工作。

感谢 Google 没有在文档中指定这一点。

关于android - 从视频中获取帧 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10102242/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com