問題タブ [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.
python - バスにEOSメッセージを送る方法
わかりました、私はこのようなものを持っています:
準備完了状態でストリームを停止 (EOS) したい、場所を変更したいなど.. ヘルプはありますか?
self.bus.emit('eos') は私に TypeError: : unknown signal name: eos を与えます
python - (Python)Gstreamerを使用してオーディオを(PCMデータに)デコードします
Python Gstreamerバインディングを使用してオーディオを再生するアプリケーションを作成していますが、オーディオもデコードしようとしています。つまり、を使用してデータを読み取りdecodebin
、生のPCMバッファーを受信したいと考えています。具体的には、ファイル全体をメモリに読み込むのではなく、ファイルのチャンクを段階的に読み込みたいと考えています。
いくつかの具体的な質問:Gstreamerでこれをどのように達成できますか?特にpygstとは?ストリームからデータを読み取るために使用する必要がある特定の「シンク」要素はありますか?pygstBuffer
オブジェクトからデータを読み取るための好ましい方法はありますか?(単に「メインループ」に入るのではなく)データを消費する速度を制御するにはどうすればよいですか?
python - `YYYY-MM-DD` の日付の写真のセットから Python+GST を使用してビデオを作成します
次のように、一連のYYYY-MM-DD
日付付きファイルを含むディレクトリがあります。
Python GStreamer を使用してこれらのファイルをビデオに変換するにはどうすればよいですか? ファイル名は同じままにする必要があります。
増分番号付きの PNG をビデオに変換できるプログラムがありますが、代わりに日付付きファイルを使用するように適応させる必要があります。
qt4 - gstreamerでQt子ウィジェットをターゲットにする
xvimagesink要素で終わるgstreamerパイプラインがあります。ビデオを特定のウィンドウに表示するには、x_oerlay_interfaceを使用できます。
ここまでは順調ですね。ただし、これは、winidがトップレベルウィンドウのアイデアである場合にのみ機能します。これは、子ウィジェットの場合ではありません。私が持っているとしましょう:
- ダイアログウィジェットDialogWidget
- DialogWidgetの子であるビデオウィジェットVideoWidget。
を使用するDialogWidget->winId()
と、ビデオが正しく表示されます。
'VideoWidget-> winId()'を使用すると、Xv拡張機能から次のようなメッセージが表示されます。
コントロールボタンなどを備えたサイズ変更可能なウィンドウが欲しいのですが、このウィンドウ内に、ビデオ表示ウィンドウやウィジェットなど、
どうやってやるの ?
gstreamer - gstreamer API を使用して .wav ファイルを再生できない
次のコードは .wav ファイルを再生するように書かれていますが、動作していないようです。私はそれに何かが欠けているかどうか知りたいです。
コード:
次のコマンドを使用してこれをコンパイルしてください。
前もって感謝します
python - Gstreamer 経由で Windows (7 / Vista / XP) ウェブカメラをストリーミングすることは可能ですか?
私はgstreamerの世界にとても慣れていません。gstreamer 経由で Windows ウェブカメラをストリーミングできるかどうか疑問に思っていましたか? これまでに見た唯一のパッケージは Linux 用です。v4l2 (Linux のビデオ)。Windows ウェブカメラ用のパッケージもありますか? 正しいpython構文は何ですか?
DJ
javascript - ブラウザーでのローカル gstreamer ストリームの表示
V4l2 インターフェースを gstreamer パイプラインのソースとして使用して、Linux マシンにカメラ フィードが入ってきます。カメラを制御するためのインターフェイスを構築しています。HTML/javascript でローカル サーバーと通信したいと考えています。問題は、gst パイプラインからブラウザーへのフィードの取得です。そうするためのオプションは次のようです。
- gst から v4l2 デバイスへのループバック。フラッシュの Web カメラ サポートを使用して表示されます。
- ブラウザに表示される MJPEG ストリームの出力
- フラッシュで表示される RTSP ストリームの出力
- ブラウザプラグインの作成
- ブラウザ上にネイティブ X アプリケーションをオーバーレイする
以前にこの問題を解決した経験のある人はいますか? 最も重要な要件は、フィードが可能な限りリアルタイムに近いものであることです。できればフラッシュは避けたいところですが、そうではないかもしれません。どんな助けでも大歓迎です。
python - スクリプトの先頭に「gobject.threads_init()」がないとPython gstreamerがクラッシュするのはなぜですか?
gstreamer(pygstおよびgstモジュール)を使用してリプレイゲインタグを計算するPythonスクリプトを作成しましたが、さまざまなgobjectエラーで一貫性のないクラッシュが発生していました。スクリプトの先頭に次の定型文を配置することで、これを修正できることがどこかで見つかりました。
試してみましたが、うまくいきました。なぜこれらの行が必要なのか、そしてなぜpygst自体がこれを行わないのかを誰かが説明できますか?
streaming - gtreamer を使用した RTP 経由の mp3 ストリーミング再生
私は gstreamer を使用しており、主に音楽再生機能をいじっています。
現在、RTP を使用して LAN 経由で mp3 ストリームを送信しようとしていますが、今のところ成功していません。
送信者側では、次のパイプラインを使用します。
gst-launch -v filesrc location=./my_music_file.mp3 ! ffdemux_mp3 ! rtpmpapay ! udpsink ポート=6969 ホスト=192.168.0.200
受信側では、次のパイプラインを使用します。
gst-launch -v udpsrc port=6969 caps="application/x-rtp, media=(string)audio, clock-rate=(int)90000, encoding-name=(string)MPA, payload=(int)96, ssrc=(guint)1951256090、clock-base=(guint)1711290778、seqnum-base=(guint)24773" ! rtpmpadepay ! flmp3dec ! パルスシンク
受信側からの出力は次のとおりであるため、明らかにエラーはありません。
パイプラインを一時停止に設定しています...
パイプラインはライブであり、PREROLL は必要ありません ...
パイプラインを PLAYING に設定しています ...
新しいクロック: GstSystemClock
...しかし、音は奇妙に聞こえます。まるで速く弾きすぎたかのようです。
mp3 ファイルをローカルで再生して、オーディオが機能することをテストしました。また、wav/µLaw ファイルをストリーミングして rtp をテストしました。これはすべてうまくいきます。
他の方法でも問題に直面しようとしました。たとえば、次のパイプラインを使用しました。これは、audiotestsrc/amrnb コーデックでうまく機能します。
gst-launch gstrtpbin name=rtpbin audiotestsrc ! アムンベンク!rtpamrpay ! rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 ! udpsink ホスト=192.168.0.200 ポート=5002 rtpbin.send_rtcp_src_0 ! udpsink port=5003 host=192.168.0.200 sync=false async=false udpsrc port=5005 ! rtpbin.recv_rtcp_sink_1
しかし、ラメで同じパイプラインを使用すると、受信側でもエラーは発生しませんが、「速すぎる」出力があります。
送信者: gst-launch gstrtpbin name=rtpbin audiotestsrc ! lamemp3enc ! rtpmpapay ! rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 ! udpsink ホスト=192.168.0.200 ポート=5002 rtpbin.send_rtcp_src_0 ! udpsink port=5003 host=192.168.0.200 sync=false async=false udpsrc port=5005 ! rtpbin.recv_rtcp_sink_1
受信者: gst-launch -v udpsrc port=5002 caps="application/x-rtp, media=(string)audio, clock-rate=(int)90000, encoding-name=(string)MPA, payload=(int) 96" ! rtpmpadepay ! flmp3dec ! パルスシンク
私のパイプラインの何が問題なのか、誰にもわかりませんか?
ご支援ありがとうございました、
ホルヘ
html - HTML5 ライブ動画「ハック」
過去 2 か月間、私はサファリを「だまして」サーバー上のファイルを見ていると思わせようとしました。実際には、カメラからのライブ ビデオ ストリームであり、要求に応じて Gstreamer を使用してサポートされている形式にエンコードおよび多重化されています。ブラウザによって。HTML5 はプログレッシブ ビデオ ダウンロードをサポートしているため、少なくとも理論上は可能です。
私の結論は、ブラウザが HTML5 でビデオ ファイルをダウンロードするときに、主にシークのために部分的なコンテンツ リクエストを行うことを考えると、これは非常に複雑になるということです。サーバーがこの機能をサポートしていない場合、ファイルが完全にダウンロードされるまでビデオは再生されません。
他の誰かがこのアプローチを試してより成功しましたか? それとも、あきらめて、RTSP のような真のライブ ビデオ サポートがブラウザに統合されるのを待つべきでしょうか。
乾杯。