【问题标题】:Does OpenCV 3.0 Still Has Limits On VideoWriter Size?OpenCV 3.0 对 VideoWriter 大小仍有限制吗?
【发布时间】:2016-08-13 01:52:09
【问题描述】:

OpenCV 2.4 VideoWriter couldn't save video files larger than 2GB, since it only accepts .avi files,我想知道在 OpenCV 3.0 中是否仍然如此,或者它是否可以保存没有此限制的其他类型的视频文件。

我试图找到任何指向 2GB 限制的文档或发布说明,说它能够处理更大的文件,但我找不到。

【问题讨论】:

    标签: opencv video


    【解决方案1】:

    即使OpenCV 3.0-beta documentation 另有说明,OpenCV 3.0 的VideoWriter 似乎也可以处理其他文件格式,例如mkv,如this issue 所示。

    我修改了上述问题的代码以生成 4GB mkv 视频(4096 帧随机 2048x2048)。

    需要注意的是图像大小应该在VideoWriter 中传递为width 然后height 而numpy array 应该使用height 然后width 初始化。 VideoWriter 否则会静默失败。

    您还需要最近的 OpenCV 3.0 源来处理未压缩的流。

    【讨论】:

    • 他们只是没有删除旧文档,如果我没记错的话,这与 2.4 中的旧文本相同。我的疑问是我现在是否可以保存大于 2Gb 的视频。
    • 6.6G test_xvid.mkv,在 mplayer 中看起来不错(来自 numpy 的 2048x2048 随机像素)
    • 有趣!很遗憾他们没有更新示例和文档......我想我将不得不等待更多,我的视频源没有平方。
    • 等一下,我认为这只是 Python 绑定中的一个奇怪之处。好像宽度和高度被交换了。我只需要等待野兽文件生成确认:)
    • @mFeinstein:这实际上不是错误,只是VideoWriter 的错误使用和错误报告。非方形 2>Gb 工作正常!
    【解决方案2】:

    这不是 OpenCV 的限制。由于格式限制,AVI 文件大小不能大于 2 GB(4 字节大小的有符号整数的最大值为 2,147,483,647)。
    是否可以使用 OpenCV(mkv 等)将视频打包到另一个容器中?

    the RIFF header has the following form:
    'RIFF' 文件大小文件类型(数据)
    其中“RIFF”是文字 FOURCC 代码“RIFF”,
    fileSize 是一个 4 字节值,给出文件中数据的大小
    fileType 是一个 FOURCC,用于标识特定的文件类型。

    【讨论】:

    • 是的,我将编辑我的问题以使其更清楚......我的意思是,OpenCV 仅使用 .avi,而 .avi 有 2GB 的限制,所以这给 OpenCV 带来了限制通过继承......所以问题应该是OpenCV 3.0是否接受其他格式或仍然只是.avi
    猜你喜欢
    • 2017-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 2012-06-20
    • 2014-06-22
    相关资源
    最近更新 更多