我正在寻找 Qt 4 (C++/Windows) 的视频库,它具有:
1) 基本视频播放功能
它应该可以播放所有常见的视频格式,例如 DVD VOB 和 MP4/MKV/AVI(h264、xvid、divx)。它还应该能够自动去隔行扫描视频并以显示纵横比显示它。
2)裁剪
它应该有一些基本的功能来删除黑条(用户提供的参数)。
3) 快照
它应该具有在内存中拍摄快照的功能。
4)逐帧搜索
它应该有一些基本的功能来进行逐帧搜索,例如prevFrame()、nextFrame()、jumpTo(frame) 和 getNumFrames()。
我尝试了以下方法,并从中找到了它们支持的功能:
Qt 声子:
- 是的。播放所有需要的格式并正确显示它们。
- 没有。
- 没有。未实现(返回空图像)。
- 没有。
QtFFmpegWrapper:
- 部分。不去隔行扫描 DVD VOB。不在 DAR 中显示 DVD VOB。
- 没有。
- 是的。
- 部分。 MKV (h264) 损坏。
Qt VLC:
- 是的。播放所有需要的格式并正确显示它们。
- 是的。还没有尝试过它是否有效。
- 部分。只到磁盘。 编辑: QPixmap::grabWindow(player->videoWidget()->winId()) 有效。
- 没有。仅以毫秒为单位。
现在我正在研究 QVision,它似乎具有除裁剪之外的所有这些功能。也许实现裁剪并不那么困难。但是我想知道我是否应该研究其他任何图书馆?或者,也许我错过了一些东西,而这些库中的一个是可能的。谢谢。
最佳答案
可以考虑Movie Player Gold SDK ActiveX 3.6来自 ViscomSoft。我没有在他们的网站上看到裁剪,但内存快照和逐帧步骤是受支持的功能。
我在 Windows Qt 软件中使用了他们的 VideoEdit 和 Screen2Video SDK,效果很好。
关于c++ - Qt C++ 视频库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13539609/