- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在尝试从相机捕获的视频文件中检索帧。我写了一个函数来这样做,我在不同时间的循环中使用它,每 100000(微秒)接收帧:
public static Bitmap getVideoFrame(long time) {
MediaMetadataRetriever mdr = new MediaMetadataRetriever();
mdr.setDataSource(path);
try {
return mdr.getFrameAtTime((time),MediaMetadataRetriever.OPTION_CLOSEST);
} catch (IllegalArgumentException ex) {
ex.printStackTrace();
} catch (RuntimeException ex) {
ex.printStackTrace();
} finally {
try {
mdr.release();
} catch (RuntimeException ex) {
}
}
return null;
}
我知道给定时间必须以微秒为单位,我试过了。无论如何,getFrameAtTime() 始终返回相同的帧。
最佳答案
我遇到了同样的问题,但我找不到使用 MediaMetadataRetriever 的解决方案。
但是,我确实使用了这个:https://github.com/wseemann/FFmpegMediaMetadataRetriever
希望对您有所帮助。
关于android - getFrameAtTime() 返回同一帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34007446/
我正在尝试从相机捕获的视频文件中检索帧。我写了一个函数来这样做,我在不同时间的循环中使用它,每 100000(微秒)接收帧: public static Bitmap getVideoFrame(lo
我知道这个问题是重复的,但请给出一些解决方案。 Android FFmpegMediaMetadataRetriever.getFrameAtTime() 进展缓慢,我的 fragment 需要将近
我编写了一个简单的 Android 应用程序,它使用 MediaMetadataRetriver 类来获取帧。它工作正常,只是我意识到它会跳帧。 我要解码的视频 fragment 是用手机摄像头拍摄的
下面的代码只返回(test.gif)第一帧,并用5个相同的帧(视频第一帧)制作一个gif。 我在 StackOverflow 中阅读了大多数问题,但我无法弄清楚是什么原因导致了这个问题。 此外,根据一
我已使用 MetadataRetriever 从视频中提取帧,并将所有图像存储在 ArrayList 中.我想将它们全部存储在 SD 卡上(仅用于测试目的)。 但是当我从模拟器中拉出一个文件夹并查看保
我正在开发一个应用程序,该应用程序最终将以 200 毫秒的间隔将视频切割成帧。 该应用程序可以工作,您选择一个视频,该应用程序会将其切割成存储在设备上的位图。问题是,FFmpegMediaMetaRe
我正在尝试获取视频的帧,所以我像这样使用 MediaMetadataRetriever.getFrameAtTime(): Uri directorio = Uri.parse("androi
我有一个循环,我试图每 1/10 秒从视频中提取一帧。但是在 19 帧(视频的 1.9 秒)之后,我在 Logcat 上收到以下错误: 01-22 11:59:15.498: E/OMXCodec(3
我正在使用 MediaMetadataRetriever 按视频帧创建缩略图,但我在 Logcat 中收到此消息: E/MediaMetadataRetrieverJNI(14060): getFra
我是一名优秀的程序员,十分优秀!