Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中访问视频数据而不生成子进程_Python_Video - Fatal编程技术网

在python中访问视频数据而不生成子进程

在python中访问视频数据而不生成子进程,python,video,Python,Video,我试图从python中访问视频数据(例如,帧、视频长度)。 由于mod_wsgi和python之间显然存在一个奇怪的bug,因此生成类似于mplayer的东西不是一个选项 pyffmpeg和ffvideo不再编译,并且与最新的ffmpeg版本不同步。 如果有人知道的话,我想要一个简单的库。引用的bug必须是Python 2.7.2中的bug。简言之,他们打破了在子解释器中进行fork的能力。见: mod_wsgi中的解决方法是强制您的wsgi应用程序在主Python解释器中运行。这是通过以下方

我试图从python中访问视频数据(例如,帧、视频长度)。 由于
mod_wsgi
python
之间显然存在一个奇怪的bug,因此生成类似于
mplayer
的东西不是一个选项

pyffmpeg
ffvideo
不再编译,并且与最新的
ffmpeg
版本不同步。
如果有人知道的话,我想要一个简单的库。

引用的bug必须是Python 2.7.2中的bug。简言之,他们打破了在子解释器中进行fork的能力。见:

mod_wsgi中的解决方法是强制您的wsgi应用程序在主Python解释器中运行。这是通过以下方式实现的:

WSGIApplicationGroup %{GLOBAL}
如果您使用嵌入式模式托管多个WSGI应用程序,并且需要对多个WSGI应用程序执行此操作,则需要开始使用守护程序模式,并将每个WSGI应用程序委托给单独的守护程序进程组,所有应用程序都必须在各自守护程序进程组的主解释器中运行


那么,有什么理由不简单地使用这个方法来解决Python 2.7.2中的bug呢?

您能详细介绍一下您看到的bug吗?我在
mod_wsgi
上安装了多个web应用程序,并且一直运行
子流程.Popen
。除此之外,您可以编写一个简单的守护程序,通过
BaseHTTPServer
模块与您的wsgi请求处理程序进行通信?Simon,到目前为止,我已经完成了您提到的工作,但这并不是一个很好的解决方案,但它是剩下的最好的选择——你无法从你的应用程序中创建新的流程,并且没有足够的库,因此你要么需要事先创建流程(这是建议的解决方案),要么找到或创建一个库。也许您可以使用来让python访问
libffmpeg
?我从未使用过SWIG,所以我不知道它有多困难……我不知道它是多个WSGI应用程序的可能解决方案。因此,您可以说,如果为每个应用程序指定了一个
WSGIProcessGroup
,只要您开始使用守护程序模式并将每个WSGI应用程序委托给一组单独的进程,它就可以工作。这是最安全的做法,因为一些WSGI应用程序可能不喜欢在与其他应用程序相同的解释器中运行。例如,对于Django,您不能在一个解释器中运行两个不同的Django项目。