問題タブ [python-gstreamer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gstreamer - GStreamer を使用する Python で、ファイル オブジェクトを入力ソースとして使用するにはどうすればよいですか?
私は現在やっています:
しかし、を使用する代わりにuri
、 from などの生のファイル ソースを使用するにはどうすればよいでしょうかsource_file = request.POST['file'].file
。(おそらく、文字列からビデオ ファイルをロードすることになるでしょうか?)
これまでの調査でappsrc
( http://ingo.fargonauten.de/node/447 ) にたどり着きましたが、ファイルをバッファにロードする方法がわからないため、 GStreamer 1.0で使用する方法がわかりません。 :
python - GStreamer: オーディオに遅延/ギャップ/シフトを導入
gstreamer で次のパイプラインをセットアップしています。
2 つの独立した USB オーディオ インターフェイスと 1 つのパルス オーディオ シンク (pulsesink) からの 2 つのパルス オーディオ ソース (pulsesrc)。adder コンポーネントを使用して、2 つの着信オーディオ ストリームを結合しています。残念ながら、2 つのオーディオ チャンネル間にわずかな遅延があります。
同期にシステムの時刻/クロックを使用しています。両方のオーディオ インターフェイスが同じ USB ハブに接続されています。私は、オーディオがソースによって拾われる前に、オーディオがすでにわずかな遅延を持っていると推測しています (クロックが異なるため)。
これが、それを補うために、最初のオーディオ チャンネル (2 番目のオーディオ チャンネルはわずかに遅れます) に遅延/ギャップ/シフトを導入したい理由です。
これまでのところ、最初のキューのプロパティ「min-threshold-time」を設定してみました。残念ながら、パイプラインはこの遅延を補正するため、両方のオーディオ ストリームが等しく遅延します。要素「audioecho」もチェックアウトしました。残念ながら、「ドライ/ウェット」プロパティがありません。これは、元の信号が常に元の時間に再生され、その後遅延テールが開始されることを意味します (これはまったく役に立ちません)。
この問題を解決する方法について、さらにアイデアはありますか? たぶん、沈黙のギャップを追加しますか?または、欠落している可能性のある他のパラメーター。
Python を使用してこのパイプラインを実装しました。前もって感謝します!
gstreamer - ビデオ ミキシング オプション
私はビデオ ウォールのより大きなプロジェクトに取り組んでおり、複数のビデオ ソースを 1 つのディスプレイに表示したいと考えています。
このようなもの -
私のすべてのオプションは何ですか?
- Java と JMF
- Python と GStreamer バインディング
テクノロジーにコミットする前に、利用可能なリソースとその制限について明確に把握したいと考えています。
python - Windows用のgstreamer pythonバインディング
リストからビデオデバイスを選択してopencvスクリプトにフィードする手段としてgstreamerを検討しています。
WindowsでPythonでgstreamerを使用する方法がまったくわかりません。gstreamer 公式 Web サイトからWindows gstreamer 1.07 バイナリをインストールしました。ただし、Pythonでモジュールとモジュールをインポートできませんでした。pygst
gst
gstreamer のインストールを確認しましたが、提供されていないようpygst.py
です。ただし、環境変数のパスを含むという名前のファイルがありgst-env
ます(インストール時にシステム変数に追加されませんでした。確認しました。
たとえば、こことここで同じ問題に関する他の質問は、すべて gstreamer のwinbuildバージョンを使用します。どうしてこんなことに?
私はこれで完全に迷っています。
編集
わかりました、Gstreamer 0.10用のSDK( がありますpygst.py
)を使用して管理しましたが、0.10は「サポート終了」であるため、Gstreamer 1.0シリーズを使用する方法はありませんか?
python - Pocketsphinx + Gstreamer 競合状態? Pocketsphinx は、Python スクリプトでオーディオ + レコードを同時に聞くことができませんか?
概要:これは私の最後の問題 ( here ) のフォローアップです。私はすぐにそれについての完全な答えを投稿します。Gstreamer を介して、Python で PS3 Eye からのオーディオ入力をポケットスフィンクスに認識させることができます。正しい alsa デバイス (私の場合は hw:1 ) を指定します。
問題:私の次の問題は、私のマイクが既に使用されており、何かを録音できるようにする必要があるという小さな競合状態に関係しているようです。
次のことを想像してください。
- Python デーモンを起動しましたが、現在リッスンしています。
- 私はマイクに向かって話し、Hello Scarlett と言いました (Pocketsphinx はキーワードに一致し、すべての入力の記録を開始します)。
- オーディオは、/tmp/ ディレクトリの wav ファイルに録音されることを意図しており、無音が検出されるまでそこに留まると想定されています
手順 3 を開始すると、マイクが再び機能しなくなったようです。何が起こったのかを把握するためにいくつかの詳細なオプションを使用して実行しましたが、 /tmp/ ディレクトリを確認するとすべてがわかりました。
ファイルサイズは 0 バイトです。何も記録されていません。
strace を使用してプロセスを実行したことを確認し、疑わしいことを確認するには、次のようにします。
質問:これを機能させるにはどうすればよいですか?
これがpythonコードです。
Listener.py:
これがrecorder.pyです:
これをデバッグする最善の方法について考えていますか?
ありがとう。