【问题标题】:OpenCV Android Java VideoCapture constructor does not take a StringOpenCV Android Java VideoCapture 构造函数不采用字符串
【发布时间】:2017-01-06 13:00:51
【问题描述】:

我正在 Android 上试验 OpenCV。我看过很多使用 VideoCapture 读取 rtsp 流的在线资料。

在我发现的所有 Java 示例中,VideoCapture 构造函数都采用字符串。然而官方的 javadoc 页面 (http://docs.opencv.org/java/2.4.11/) 只说可以将一个 int 传递给作为相机 ID 的构造函数。

如果您查看以下 stackoverflow 线程 (OpenCV IP Camera RTSP stream),您会注意到一个 URL 已传递给构造函数。

我错过了什么?

【问题讨论】:

  • 您检查了最新版本 - 3.1。请在此处查看 VideoIO 包下的 VideoCapture:docs.opencv.org/java/3.0.0
  • @saurabheights 不错,我试试看,你知道这个构造函数“VideoCapture(java.lang.String filename)”中的参数是否可以是一个URL吗?
  • 对不起,我不是。我没有使用过 Android Api,但由于 Android/Java api 很久以前没有添加,我最好的猜测是这一定是最近添加的。此链接也可能有帮助:answers.opencv.org/question/24154/…,请注意答案未在字符串中使用 url,看起来是错字。附言opencv 3 比 opencv 2 好得多,也更容易处理。虽然与 opencv 2 相比,在线资源会更少,但我建议你尽可能使用 opencv3。 :)
  • 仅供参考:在此处检查父根:docs.opencv.org,然后在此处检查 docs.opencv.org/ref/2.4.13/d8/dfe/…。因此,如果您构建 opencv 2.4.13,您将拥有 url api。 :)。另请参阅:github.com/opencv/opencv/releases
  • 解决后添加您的答案,这将帮助其他面临同样问题的人

标签: java android opencv


【解决方案1】:

VideoCapture 未能打开 RTSP 流的原因是因为在我的机器上 OpenCV 缺少 ffmpeg。 我最终解决它的方法是使用 brew 安装 ffmpeg,然后使用 cmake 从源代码编译 OpenCV。 完成后,我就可以使用 OpenCV 读取 RTSP 流了

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-23
    • 2014-11-21
    • 1970-01-01
    相关资源
    最近更新 更多