【发布时间】:2020-10-20 23:08:56
【问题描述】:
我有一个包含多个流的视频文件,如下所示,使用 VLC 媒体播放器: Video Information
当我尝试使用以下代码使用 Python + OpenCV 阅读它时:
vidObj = cv2.VideoCapture("video.avi")
ret, frame = vidObj.read()
我只能阅读视频的第一首曲目。如何同时读取所有视频轨道?
【问题讨论】:
-
视频由 Epiphan 抓帧器生成,支持同时捕获多个视频流。这就是为什么它有多个视频轨道。
-
运行快速搜索,似乎多流视频并不常见。如果没有人提出解决方案,我建议在处理它们之前使用
ffmpeg之类的东西将流分成单独的视频。 -
感谢加布里埃尔的回答。你能更详细地解释一下如何使用 ffmpeg 来划分它们吗?谢谢。
-
@poisondeathray 的answer (#4) 应该可以帮到你。由于有多个流,而不仅仅是 2 个,您可能应该编写一个脚本,根据输入视频运行
ffmeg -map命令。如果您有任何问题,请针对出现的任何问题创建一个新问题。
标签: python opencv video-processing