2016-10-01 7 views
0

私は、ユーザーがandroid/webからサーバーにオーディオファイルを送信するプロジェクトを持っています。 私はサーバー上でテキスト処理をテキスト処理して、アンドロイド/ウェブ上のいくつかのファイルをユーザーに返す必要があります。しかし、サーバー側はPythonを使用して行う必要があります。 どうすればいいのか教えてください。スピーチテキスト処理 - python

+1

このライブラリをチェックするhttps://pypi.python.org/pypi/SpeechRecognition/ あなたに役立つかもしれない –

+0

また、Google Speach APIのようなエクステナルサービスを使用することもできます。 – kxxoling

+0

@HamimAlMahdiRussell私はそれを調べていますが、私はDjangoを使用して統合について知りたいです –

答えて

0

Webアプリケーションと並行して、実行する必要のあるタスクのキューと、それらのタスクを実行および追跡するためのワーカープロセスを持つことができます。これは、Webリクエストでバックグラウンドでタスクを開始したり、タスクにチェックインしたり、タスクの結果を取得する必要がある場合によく使用されるパターンです。このパターンの紹介はTask Queues section of the Full Stack Python open bookにあります。 CeleryRQは、タスクキュー管理を提供する2つの一般的なプロジェクトであり、DjangoまたはFlaskで構築されたものなど、既存のPython Webアプリケーションにプラグインできます。

タスク管理が完了したら、タスクのステータスについてユーザーに最新の状態を維持する方法を決定する必要があります。 RPCスタイルのWebサービスコールのみを使用しなければならない場合は、作成したWebサービスを呼び出して、タスクをチェックすることによってクライアント(例:Androidまたはブラウザ)にステータスをポーリングさせることができますタスク・キュー・マネージャーのAPI。

ユーザーに速やかに通知するか、一定のポーリングから無駄なオーバーヘッドを減らしたい場合は、代わりにwebsocketを提供することを検討してください。 websocket接続を介して、クライアントはスピーチからテキストへのジョブの完了などのイベントの通知を購読することができます。 Autobahn|Python libraryはウェブソケットを実装するためのサーバーコードを提供し、サブスクリプションとメッセージの通信やサービスの呼び出しに使用できるWAMPと呼ばれるプロトコルをサポートしています。 Djangoに固執する必要がある場合は、代わりにdjango-websocket-redisのようなものを考えてください。