python内からビデオデータ(フレーム、ビデオの長さなど)にアクセスしようとしています。 mplayer
のようなものを生成することは、mod_wsgi
とpython
の間に明らかに存在する奇妙なバグのためにオプションではありません。Pythonでサブプロセスを生成せずにビデオデータにアクセスする
pyffmpeg
およびffvideo
は、コンパイルされなくなり、最新のffmpeg
バージョンと同期しません。 誰かがそれを知っていれば、私は単純なライブラリが必要です。
python内からビデオデータ(フレーム、ビデオの長さなど)にアクセスしようとしています。 mplayer
のようなものを生成することは、mod_wsgi
とpython
の間に明らかに存在する奇妙なバグのためにオプションではありません。Pythonでサブプロセスを生成せずにビデオデータにアクセスする
pyffmpeg
およびffvideo
は、コンパイルされなくなり、最新のffmpeg
バージョンと同期しません。 誰かがそれを知っていれば、私は単純なライブラリが必要です。
参照されているバグは、Python 2.7.2のバグでなければなりません。要するに、彼らはサブインタープリタの中からフォークを行う能力を壊しました。参照:mod_wsgiの中
http://bugs.python.org/issue13156
問題を回避するには、メインのPythonインタプリタで実行するために、あなたのWSGIアプリケーションを強制することです。これは使用して行われます:
WSGIApplicationGroup %{GLOBAL}
あなたは組み込みモードで複数のWSGIアプリケーションをホストし、1以上にこれを行うために必要とされている場合は、代わりにデーモンモードを使用して開始し、デーモンプロセスを分離するために、各WSGIアプリケーションを委任する必要がありますそれぞれのデーモンプロセスグループの主なインタプリタで実行する必要があります。
Python 2.7.2のバグに対してこの回避策を使用していない理由は何ですか?
私はそれが複数のWSGIアプリケーションのための可能な解決策であることに気づいていませんでした。したがって、アプリケーションごとに 'WSGIProcessGroup'が指定されていれば、動作しますか? – Darioush
デーモンモードの使用を開始し、各WSGIアプリケーションを個別のプロセスセットに委任します。これは、いくつかのWSGIアプリケーションが同じインタープリターで実行されたくない場合があるため、最も安全な方法です。たとえば、Djangoでは、1つのインタプリタで2つの異なるDjangoプロジェクトを実行することはできません。 –
あなたが見ているバグについて詳しく説明できますか?私は 'mod_wsgi'に複数のWebアプリケーションをマウントして、' subprocess.Popen'をいつも問題なく実行します。 – Simon
それ以外のWSGIリクエストハンドラと通信するシンプルなデーモンを書くことができます。 'BaseHTTPServer'モジュール経由で? – Simon
Simon、今のところあなたが言いましたが、それは非常にきれいな解決策ではありません – Darioush