問題タブ [omxplayer]

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.

0 投票する
1 に答える
2615 参照

go - Raspberry Pi の omxplayer で go.dbus を使用する

実行中のビデオを制御するために、omxplayer で D-Bus インターフェイスを使用しようとしています。ここにある go.dbus ライブラリを使用してこれを試みています: https://github.com/guelfey/go.dbus

omxplayer のドキュメントには、問題なく使用できる dbuscontrol.sh スクリプトが記載されています。いくつかの環境変数を設定し、dbus-send を使用して omxplayer を照会できます。

Go でこれを再現しようとしていますが、「名前 org.mpris.MediaPlayer2 はどの .service ファイルからも提供されませんでした」というエラーが表示され続けます。

これが私のコードです:

0 投票する
1 に答える
1401 参照

python - python popenプロセスを強制終了する方法、シェルfalse [標準メソッドで動作しない理由]

次で始まるサブプロセスを強制終了しようとしています:

そしてしばらくすると

これは機能しません。ここで指摘された解決策もありません

shell=True で起動された Python サブプロセスを終了する方法

私はスレッドを使用していることに注意してください。スレッドを使用するときに preexec_fn を使用することはお勧めしません (または、少なくともこれは私が読んだものですが、とにかく動作しません)。

なぜ機能しないのですか?コードにエラー メッセージはありませんが、mp3 ファイルのリッスンを停止するには、プロセスを手動で kill -9 する必要があります。

ありがとう

編集:ここから、kill() の後に wait() を追加しました。驚いたことに、プロセスを再開する前に、これがまだ待機しているかどうかを確認して、mp3 ファイルでコーラスを開始しないようにしています。

  • wait() がなければ、システムはプロセスが生きていることを認識します。

  • wait() を使用すると、システムはプロセスが停止していることを認識し、プロセスを再開します。

  • ただし、プロセスはまだ聞こえています。どう見ても殺せそうにない。

EDIT2: 問題は、omxplayer が私が殺さない 2 番目のプロセスを開始し、それが実際の音楽を担当していることです。

  • インターネットのいくつかの場所で見つかったこのコードを使用しようとしましたが、誰にとってもうまくいくようですが、私にはうまくいきません

    /li>

そして、「NoneType」オブジェクトには属性「書き込み」がありません。popen プロセスを開始した直後にこのコードを使用しても、同じメッセージで失敗します

EDIT3: 問題は、popen 行に stdin 行を確立していなかったことです。今は

*標準入力に書き込むのはバイトであることを指定する必要があります

0 投票する
1 に答える
11365 参照

python - アクティブなスレッドの強制終了または停止

私は長い道のりを歩んできました、そして私はほとんどそこにいます。Thread の使用から Threading の使用に切り替え、再生中にビデオを切り替えることができるようになりましたが、最初のビデオを強制終了または停止するのにまだ問題があります。基本的に、OMXplayer を使用して Raspberry Pi のボタンで制御されるビデオ プレーヤーを作成しています。現時点では、別のボタンを押す前に 1 つのビデオの再生が終了するのを待たなければなりません。そうしないと、複数のビデオが同時に再生されてクラッシュします。

皆さんが提供できるあらゆる助けに感謝します。

0 投票する
1 に答える
1259 参照

mp3 - Omxplayer は音の最後の 1 秒程度をカットします

Omxplayer を使用して、.MP3 として保存されたサウンド ファイルを再生しています。

私が直面している問題は、デュレーションが 1 秒を超えるサウンド ファイルで、トラックが終了したかのように、ファイルの終わり (約 1 秒) が突然途切れたように見えることです。

Omxplayer はエラーをスローせず、通常の「Have a nice day」にカットアウトするだけなので、この問題の原因は不明です

これは Pi 上の Raspbian にあります。

0 投票する
2 に答える
2986 参照

python - ターミナルを使わずにomxplayerを終了するには?

ラズベリー pi 用の Tkinter を使用してアプリケーション ランチャーを作成しました。

@/usr/bin/sudo /home/pi/myscript.py /etc/xdg/lxsession/LXDE-pi/autostart 内。

また、Python スクリプト内からアプリケーションを起動するために、サブプロセス モジュールを使用しています。同じコードは次のとおりです。

今起こっていることは、すべてのプロセスが正常に実行されていることです。つまり、すべてのアプリケーションが完全に起動され、(閉じるボタンまたは alt + f4 を使用して) アプリを閉じているときにも正常に動作しています。

しかし、omxplayer はフル スクリーン モードのようです (画面全体をカバーしていませんが)。閉じるボタンはありません。一部のドキュメントでは、q のような終了用のショートカット キーがあると書かれていますが、それも機能しません。 alt+f4 も機能せず、さらに、python スクリプト (アプリケーションランチャー) 内から起動しているため、ターミナルを使用して同じものを終了することはできません。

しかし、端末内から同じビデオを起動すると、q と alt+f4 の両方が機能します (つまり、両方を使用して omxplayer を終了できます)。

なぜこれが起こっているのか、そしてPythonスクリプト内から起動するときにomxplayerの終了を有効にする方法を誰かが説明できますか?

0 投票する
0 に答える
856 参照

java - Java コードから omxplayer を「常に最上位」で実行する

Raspbian OS を搭載した RaspberryPi2 (1GB RAM バージョン) を使用しています。ビデオを再生するには Omxplayer を実行する必要があります。新しいプロセスを実行すると、Omxplayer はバックグラウンドになります。Omxplayer が常に一番上に必要です。どうやってするの?Omxplayer は、mplayer (-ontop) のようにトップに留まるように切り替えていません。

( https://askubuntu.com/questions/7377/how-to-start-an-app-with-always-on-top-set ) wmctrl を見つけました。私はomxplayerを実行し、実行後にJavaを実行しようとしました:

おそらくJavaFXがX11ではなくフレームバッファで動作しているためです。出典: JavaFx アプリケーションを RaspberryPi で実行するとフレームが表示されないのはなぜですか?

RaspberryPi でフルスクリーンで Java 経由で Omxplayer を実行することはできないと感じています。

新しいプロセスとして omxplayer を実行するためのコード:

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

0 投票する
2 に答える
972 参照

python - Python + TKinter + OMXPlayer ウィンドウを上に表示

私はラズベリー pi 2 を所有しており、Python の学習を開始します。私は非常に基本的なことをしたいと思います: 通知システムのような omxplayer ウィンドウの上に私の Python プログラムのウィンドウ。

TKinter を使用して「常に手前に」ウィンドウを作成できましたが、omxplayer を起動すると、ウィンドウが手前に表示されなくなります。

助けていただければ幸いです。

ありがとう