gpt4 book ai didi

android - CvCaptureFromAVI 问题 - OpenCV Android

转载 作者:太空狗 更新时间:2023-10-29 15:13:44 25 4
gpt4 key购买 nike

我需要从存储在我的 Android 设备(在本例中是我的模拟器)的 SD 卡中的视频中逐帧捕捉。我正在通过 NDK 使用 Android 和 OpenCV。我通过 DDBS (eclipse) 的文件资源管理器手动将文件“SinglePerson.avi”推送到 sdcard 中,并使用下面的代码读取文件:

    JNIEXPORT void JNICALL Java_org_opencv_samples_tutorial4_Sample4Mixed_VideoProcessing(JNIEnv*, jobject)
{
LOGI("INSIDE VideoProcessing ");

CvCapture* capture = cvCaptureFromAVI("/mnt/sdcard/SinglePerson.avi");

IplImage* img = 0;

if(!cvGrabFrame(capture)){ // capture a frame
LOGI("Inside the if");
printf("Could not grab a frame\n\7");
exit(0);
}
img=cvRetrieveFrame(capture);// retrieve the captured frame
cvReleaseCapture(&capture);

}

问题是 cvGrabFrame(capture) 结果总是错误的。有什么建议可以正确打开视频并抓取帧吗?提前致谢

最佳答案

某些版本的 OpenCV(在 opencv2 包中)构建时不支持视频。如果是这种情况,您必须在 pkg 的 Makefile 中启用“-D WITH_FFMPEG=ON”并重新编译。

"Displaying AVI Video using OpenCV"教程:

“您可能需要确保已成功安装 ffmpeg,以便允许以不同格式进行视频编码和视频解码。没有 ffmpeg 功能可能会在尝试运行这个简单示例时导致问题并产生编译错误”。

还要检查 cvCaptureFromAVI 中的路径是否正确。

希望这会有所帮助!

关于android - CvCaptureFromAVI 问题 - OpenCV Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14497595/

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