2012-01-05 18 views
1

私は、XMLリストからウェブストリームを選んで再生するための、GTK + GUIを備えた単純なgstreamerベースのpythonオーディオアプリケーションを作成しました。それから、私は大きなスピーカーを備えた古いステレオレシーバーの入力にPCスピーカーの出力を接続し、私は家のほとんどで聞こえるかなり良いサウンドシステムを持っています。PythonアプリケーションのWebインターフェイスを作成するための最良の方法は何ですか?

ここでは、コンピュータとは別の部屋からアプリケーションをリモートコントロールするためのWebユーザーインターフェイスを追加したいと思いますが、これまでのところすべての試みは無駄でした。

特に、gstreamerのパラメータを変更するメソッドを実行するために、GTKのGUIのようなシグナルを持つソートを作成することが可能かどうか疑問です。

もっと現実的な/実行可能な戦略がありますか?

ありがとうございました!

+0

私はそれを行うような方法...あなたのGTKアプリケーションに関連するコントロールを制御 'xmlrpc'関数を作成します。あなたのGTKアプリケーションと同じサーバー上にホストします。参考までに、 'web2py'は' xmlrpc'サービスでかなり良いです。 'xmlrpc'サービスにコマンドを送る別のWebクライアントを作成します。あなたがこれを作成するために好きなものを使用してください。 WebクライアントからGTKアプリケーションを直接操作すると、私にとっては複雑な音になります。私の答えはあなたがいくつかのウェブ開発経験を持っていると仮定します –

答えて

1

最も速く最も簡単な方法はおそらくcgi-scriptsです。より洗練されたアプローチが必要な場合は、django、turbogearsなどのWebフレームワークの使用を検討できます。

+0

ドン質問ありがとう! – user1106979

0

軽量のpure Python Webサーバーオプションの1つを使用し、スタンドアロンのWSGIアプリケーションを作成するか、マイクロフレームワークを使用することをお勧めします。

Geventは良いオプションのようになります。ここではhttp://www.gevent.org/servers.html

がGevent使用してWSGIアプリケーションのサンプル実装です:マイクロフレームワークについて https://bitbucket.org/denis/gevent/src/tip/examples/wsgiserver.py#cl-4

を、私はフラスコを使用してお勧めしたいです。

+0

こんにちは! yrの答えをありがとう。私は将来のそれらを実験することを望む! – user1106979

3

非常に簡単なマイクロウェブフレームBottleを使用できます。

ボトルは、Python用の高速でシンプルで軽量なWSGIマイクロウェブフレームワークです。これは単一のファイルモジュールとして配布され、Python標準ライブラリ以外の依存関係はありません。

こんにちは、世界:

from bottle import route, run 

@route('/hello/:name') 
def index(name='World'): 
    return '<b>Hello %s!</b>' % name 

run(host='localhost', port=8080) 
+0

こんにちは、私をボトルに紹介してくれてありがとう。しかし、私が望んでいるものとまったく同じですが、実行中のマシンと同じマシンからのみサーバーにアクセスできます。私は同じネットワーク上の別のコンピュータから試してみると、エラーのような種類のホストにアクセスできない。これは、同じホストポート8080からプローブされているように見えるが、他のマシンからはネットワークスキャナがポートが閉じていると言うことと一致しています。これはおそらくネットワーク構成上の問題ですが、Bottleがそれを引き起こしているのではないかと思います。ありがとう。 – user1106979

+0

あなたは '0.0.0.0'で働いていますか? 'localhost'または' 127.0.0.1'を使用している場合は、ローカルでしか利用できません。 http://bottlepy.org/docs/dev/tutorial.html#deploymentをご覧ください – charlax

+0

私の愚かなこと!もう一度ありがとうCharlax!それは魅力のように働いた! – user1106979

関連する問題