相关疑难解决方法(0)

如何在Windows中使用openCV FFMPEG视频I/O而不是DirectShow?

所以我正在尝试使用openCV videoWriter编写视频:

writer=cv.CreateVideoWriter(path+"test_output.avi",-1,fps,(W,H),1)
Run Code Online (Sandbox Code Playgroud)

因此,不是提供我提供的FOURCC -1,而是为了查看我可用的编解码器.结果是Microsoft RLE,Microsoft Video 1,Intel YUV和Uncompressed.

原因是当使用CMAKE为Visual Studio 10 x64配置openCV时,这就是我在视频i/o中所拥有的:视频I/O:DirectShow

有没有办法将其切换到FFMPEG?我知道ffmpeg dll存在于\ 3dparty\ffmpeg中.我找了Cmake FFMPEG标志,但没有找到任何标志.奇怪的是在视频部分下的opencv根目录中的CmakeLists.txt中:

if(UNIX AND NOT APPLE)
<FFMPEG stuff>
elseif(WIN32)
    status("  Video I/O:"        HAVE_VIDEOINPUT     THEN DirectShow ELSE NO)
endif()
Run Code Online (Sandbox Code Playgroud)

所以在我看来opencv自动切换到DirectShow并且不允许使用FFMpeg.或者更确切地说,可以升级Driectshow以支持其他格式,如Divx或h264?有任何想法吗?

opencv directshow ffmpeg cmake

0
推荐指数
1
解决办法
2万
查看次数

标签 统计

cmake ×1

directshow ×1

ffmpeg ×1

opencv ×1