問題タブ [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.
pygame - バッファ長が正しくありません
GStreamer によって提供されるビデオ フレームを含むバッファー オブジェクトを処理する次の関数があります。
ただし、このコードを実行すると、提供されたバッファーが必要以上に大きく、このサイズを一致させる必要があるため、pygame がクラッシュします。これはおそらく、再生される映画のエンコーディングの誤りが原因であることはわかっていますが (ほとんどの映画は問題なく動作するため)、この不測の事態を説明する方法はありますか? 外出先でバッファのサイズを正しいサイズに変更する方法はありますか? 必要な長さでバッファーの末尾を切り取ろうとしましたが、ムービーは再生されますが、出力が破損しています。
python - Gstreamerバスがicw python multiprocessingを呼び出し、UbuntuでXサーバーエラーを引き起こす
ここで指定されているように、gstreamer でビデオ プレーヤーを作成しました: https://github.com/dschreij/media_player_gst/blob/master/media_player_gst.py
Windows では、「通常」およびマルチプロセッシング モード (つまり、すべての Gstreamer パーツとプレーヤー オブジェクトが別のプロセスで作成される) で問題なく動作します。ただし、Ubuntu 13.10 では、プレーヤーが独自のプロセスで実行されると、
次のエラーが発生し、プログラム全体 (親プロセスも) がクラッシュします。
それ以外の場合、プレーヤーは新しいプロセスで正常に実行されます。self.bus.peek() への呼び出しのみがクラッシュします。メッセージを処理する関数にバスを接続しても機能しないように見えたため、バス キュー自体のイベントをチェックする必要がありました (Ubuntu でのみ!)。
基本的にストリームの最後(gst.MESSAGE_EOS)に到達したかどうかをバスで確認するだけなので、playbin2 バスを使わずに判断できるのであれば、そのような解決策でも構いません。これで私を助けてくれる人はいますか?
python - 定義済みの時間、gstreamer でオーディオを録音する方法は?
「autoaudiosrc」要素を使用してオーディオを録音する python gstreamer - 1.0 コードがあります。私の質問は、「事前定義された」数秒後にパイプラインを停止することであり、できれば gstelement 形式で追加したいと考えています。
記録に使用される現在のパイプライン:
対応する python コード
〜
python - gstreamer/Python (gnonlin?) を使用してビデオの一部をカットする
ビデオ ファイルがあり、いくつかのシーン (時間位置またはフレームで識別) を切り取りたいと考えています。私が理解している限り、それはgnonlinで可能であるはずですが、これまでのところ、その方法のサンプルを見つけることができませんでした(理想的にはPythonを使用しています)。できれば映像・音声部分の改変はしたくありません(ただし、mp4/webmへの変換は可能です)。
それを行うには、gnonlin が gstreamer ユニバースの適切なコンポーネントであるというのは正しいですか? また、問題に対処するためのいくつかの指針/レシピがあればうれしいです(gstreamerの初心者)。
python-2.7 - 特定の MP3 で id3demux 「ストリーミング タスクが一時停止されました。リンクされていない理由 (-1)」
次のように、かなり古い GStreamer 0.10.32 で、Python-GStreamer でプレーヤーを作成しています。
正常に動作しますが、プレーヤーのバスからタグ メッセージが表示されません。id3 タグが必要です。そのため、caps フィルター ( audio/mpeg, mpegversion=1, layer=3
) をid3demux
に置き換えたところ、特定の MP3 でエラーが表示されました: " streaming task paused, reason not-linked (-1)
"。
またはを前に置いてそれらにリンクしてもidentity
、.queue
id3demux
何らかの理由で、mad
要素が私のプラットフォームで利用できません。
2 回目の置換が機能しないのはなぜですか、またはストリームから id3 タグを取得する別の方法はありますか?
編集:どうやら、これは特定のファイルが原因です。これらの MP3 の具体的な内容はまだわかっていません。これは、パイプラインを単純にテストしたときにも発生しgst-launch
ます。
GST_DEBUG=2 を使用すると、次のようになります。
Capsid3demux
フィルターを元に戻すと役立ちますが、タグを取得することはありません。