- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有很多视频文件对,是在一个房间里用两个网络摄像机拍摄的。由于带宽利用率,视频文件具有可变的帧速率。据我了解,如果我们在时间轴上标记帧,它是这样的:
我想同步这两个视频。我的意思是同步,填补空白,以便对于视频中的给定帧,在另一个视频中有相应的帧。最后我想要两个像这样的两个视频:
我考虑过使用转换器工具将两个视频都转换为 25 fps,尽管我会有冗余的帧对,但它们会同步。但是,我有与所有视频的每一帧关联的信息,转换后我将无法知道关联。
我想我需要以编程方式执行此操作,以便我可以相应地保留与每个帧关联的信息。
到目前为止,我已经尝试过 OpenCV,VideoCapture
属性 CV_CAP_PROP_POS_MSEC
给了我帧号,而不是帧的毫秒数。即使它给了我正确的值,VideoWriter
也不支持可变帧率。 MATLAB 拒绝读取我的视频文件,因为它不支持 MJPEG(motion jpeg)编解码器。我已经能够使用 pyglet 读取帧 # 和相应的毫秒数。在 Python 中。但它只是解码器,我仍然没有任何东西可以写入视频文件,例如“这是第 12 帧,应该恰好在视频的 1.76 秒”。
我正在寻找实现此目的的最简单方法,语言、工具无关紧要。基于 Windows 的解决方案表示赞赏。非常感谢您的回答。
附言。我不介意输出格式,但我更喜欢无损格式。
最佳答案
最简单的方法是将两者转换为相同的 fps(比如 25),然后匹配它们。 ffmpeg 是一个很好的工具。查看此博客文章了解更多详细信息 http://www.hdslr-cinema.com/news/workflow/convert-between-framerates/
但它可能会复制帧以覆盖空插槽。如果这不能满足您的要求,您应该研究时间插值 - 在帧之间插值像素。但这是很多工作。 ffmpeg 解决方案是一个 5 分钟的任务,插值可能意味着阅读和实现一些学术论文。
请注意,可能有一些专门用于插值的工具,但我不知道它们。值得研究。
关于video - 如何同步两个具有可变帧率的视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11530818/
我使用 QBFC v13 和 Delphi XE6。 目标是从我的应用程序创建 Estimate 并将其参数设置到 QuickBooks 中。 我从 QBFC13 导入类型库并将其添加到我的项目中。
我有一个数据库,其中有很多格式不正确的地址。在这个地址中,我只有一个街道地址或带有城市名称的街道。在我的应用程序中,用户选择一些类别,然后我想在 map 上显示例如 50,100,300 等地址。(不
在大多数软件项目中,缺陷源自需求、设计、编码和缺陷更正。根据我的经验,大多数缺陷都源于编码阶段。 我有兴趣了解软件开发人员使用哪些实用方法来降低缺陷注入(inject)率。 我已经看到以下方法的使用取
我正在使用实时 API 中的标签订阅构建一个应用程序,并且有一个与容量规划相关的问题。我们可能有大量用户同时发布到订阅的主题标签,因此问题是 API 实际发布到我们的订阅处理端点的频率是多少?例如,如
尝试使用 NULLIF 或 IFNULL 函数,但仍收到被零除的消息。 SELECT client_id ,COUNT(distinct CASE WHEN status = 'failed' THE
我目前正在开发一个使用 Django-rest-framework 制作的 API。我必须根据每个用户组设置限制率。 我们目前使用默认配置的 memcached 作为缓存后端,即按站点缓存。 在使用
我认为有时在神经网络(特别是一般对抗网络)训练期间改变丢失率可能是一个好主意,从高丢失率开始,然后线性地将丢失率降低到零。您认为这有意义吗?如果是的话,是否有可能在 tensorflow 中实现这一点
我有一个 Windows Server 2008,Plesk 运行着两个网站。有时服务器运行缓慢,并且有一个 named.exe 进程使 CPU 峰值达到 100%。它持续很短的时间,过一会儿它又来了
我正在使用 scikit-learn 随机森林分类器,我想通过将成功投票所需的树数量从大于 50% 增加到 75% 来降低 FP 率,在阅读文档后我不这样做确定如何做到这一点。有没有人有什么建议。 (
当我连续按下按键事件(字母 k)时,为什么以下按键事件不会减慢 3000 密耳?如果我按住手指,计数会迅速增加,因为 mcount 上没有 setTimeout。这是为什么?每次计数之间应该有延迟,但
我是一名优秀的程序员,十分优秀!