【发布时间】:2013-05-10 14:31:15
【问题描述】:
我正在使用一个程序,我需要对其进行记录和审查,但我没有编写该程序,也没有我可以轻松联系到的任何人。我遇到的问题之一是它应该读取和使用 .avi 文件,但每次我尝试时,它都会失败。该文件是从 MTS 格式转换的 avi。电脑好像以为是avi文件,运行起来没有问题,不知道为什么cvCaptureFromAVI出问题了。
函数 cvCaptureFromAVI 只返回空值。我似乎无法更深入地了解代码以查看 cvCaptureFromAVI 中导致错误的原因,并且我无法获得任何有关它为什么无法读取文件的错误信息。
【问题讨论】:
-
avi 只是一个容器,很有可能你没有解码器在你的机器上解压它
-
我最近把网上找的avi视频拉下来测试,也失败了。所以我不确定这是ffmpeg转换的问题。
-
可能你的程序没有找到视频文件。检查您提供的路径以打开视频捕获。尝试在路径中使用 / 而不是 \。
-
为了排除文件损坏或找不到文件的可能性,您可以创建一个简单的opencv应用程序,检查您是否能够播放该文件。您可能想要 cv::VideoCapture 为它。在 Windows 上也需要使用双斜杠(“\\”)作为文件夹分隔符。以下链接可能会有所帮助stackoverflow.com/questions/16185456/…
-
其实这个程序被设计成使用一个filePicker来选择avi文件。但即使我绕过它并给它一个直接路径(在资源管理器中工作,我可以查看视频)它也不会加载,即使我尝试使用单斜杠和双斜杠。另一个问题是我不完全确定我可以更改多少代码。我应该评估和评估它。所以我对进行重大代码更改有点谨慎。