python - 使用 Python 管理多平台视频流的最佳方式是什么?

标签 python qt video gstreamer phonon

这个问题我脑子里已经有一年多了。我想你们可能已经有了答案。

在某些 Python GUI 应用程序中,我需要显示视频流。 我需要录制此流的某些部分以便稍后重读。

此外,我需要使这个 python 应用程序成为多平台(OSX、GNU、Windows)

我对许多解决方案持开放态度:

  • 将相机连接到流并使用 python 应用程序读取流。 (RTP + VLC 可以解决问题)
  • 使用声子读取相机
  • 创建一个抽象类来定义不同的阅读器,并在操作系统的功能中使用 Quicktime、Win32 或 GS​​treamer。

你的经验是什么,你会用什么来做到这一点?

最佳答案

我也定期研究过这个问题,似乎底层任务的复杂性太高了,无法为您的主题问题提供一个简单的快捷方式抽象库。但是,我建议使用 pyopencv 来完成您阐述的特定任务。它有一个用于跨平台工作的网络摄像头输入/捕获类,并且有一个合理的用户群,在 python 中,发布示例。最新的是 2.3.1 并且是最近的。您可以在非常有用的网站(不是我的,只是说说)上获得为您编译的 Windows 版本:

http://www.lfd.uci.edu/~gohlke/pythonlibs/

由于您要求获得一些库的经验,我会说:gstreamer 在 linux 上为我工作,但在 windows 上设置起来非常痛苦并且对我不起作用。这是很久以前的事了,也许现在效果更好了。 vlc.py 是一个简单的库,用于测试并查看 vlc 是否适合您。目前它不适用于 64 位 Windows 平台;不知道为什么,但似乎很多人都报告了类似的错误,所以这取决于你需要多少跨平台支持。

关于python - 使用 Python 管理多平台视频流的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7161628/

相关文章:

video - youtube:链接默认显示高清视频

python - 如何使用 OpenCV 在圆圈中找到最大 RGB 值?

python - 将 axvspan 用于日期范围

qt - Qt 中的哪些特性或概念让你感到厌烦?

wpf - 如何在 Qt/C++/QML 中实现类似 WPF 的 MVVM?

video - ffmpeg 与 Videoconverter.js MTS 到 .mp4 转换问题

ios - MPMoviePlayerController 经常停顿

Python - 小数位(将 float 放入字符串中)

python - 自动更新 CSV 文件

c++ - 确定 QImage 的哪些像素在使用 QPainter 绘画时发生了变化