問題タブ [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.
python - ターミナルから実行したときの Omxplayer-wrapper の問題
私が取り組んでいる次のプログラムがあります (すべてを作成したわけではないため、一部はかなり奇妙です) Raspberry Pi で。基本的には、ボタン付きの tkinter ウィンドウを開くことになっています。ボタンを正しい順序でクリックすると、新しいプロセスが開始されます。ボタンが間違った順序でクリックされると、ビデオが再生されます。これらはすべて Thonny IDE で機能します。(実際、プログラムの詳細は、ビデオの再生に omxplayer-wrapper を使用しているという事実以外はあまり重要ではありません)
私の問題は、Piの起動時にこれを実行したいということです。これには、端末からプログラムを起動することが含まれます。「sudo python3 [file path]」を使用すると、「Traceback (most recent call last): File "/home/pi/Documents/alienPasscodeV2.py", line 10, in from omxplayer.player import OMXPlayer ImportError」と表示されます: 「omxplayer」という名前のモジュールはありません。
「python3 [ファイルパス]」だけを使用すると、ビデオを再生する必要があるまで動作し始めます。それからそれは私に言います:
「Tkinter コールバック トレースバックの例外 (最新の呼び出しが最後):
ファイル "/usr/lib/python3.5/tkinter/ init .py"、1562 行、呼び出しで return self.func(*args) ファイル "/home/pi /Documents/alienPasscodeV2.py"、86 行目、on_click7 順 (IM) ファイル "/home/pi/Documents/alienPasscodeV2.py"、121 行目、正しくないVideo() ファイル "/home/pi/Documents/alienPasscodeV2. py"、171 行目、incorrectVideo player = OMXPlayer(incorrectPath, args=["--win", "0 0 1280 1024"], dbus_name='org.mpris.MediaPlayer2.omxplayer0') ファイル "/home/pi/ .local/lib/python3.5/site-packages/omxplayer/player.py"、162 行目、init内 self.load(source, pause=pause) File "/home/pi/.local/lib/python3.5/site-packages/omxplayer/player.py", line 245, in load self._load_source(source) File " /home/pi/.local/lib/python3.5/site-packages/omxplayer/player.py"、171 行目、_load_source self._connection = self._setup_dbus_connection(self._Connection, self._bus_address_finder) ファイル"/home /pi/.local/lib/python3.5/site-packages/omxplayer/player.py"、231 行目、_setup_dbus_connection で SystemError を発生させます ('DBus は OMXPlayer プロセスに接続できません') SystemError: DBus は OMXPlayer プロセスに接続できません"
sudo を使用する場合と使用しない場合に違いがある理由さえわかりません。私はこれを何時間も理解しようとしてきましたが、わかりません。こんな番組ですみません。
python - omxplayer でシャッフルされたビデオのリストを再生する方法
はじめに: 私は Python と bash の初心者です。何年も前に bashscript を作成しましたが、Python には手を出したことがありません。そして、私は自分の深さから少し外れていると思います。
私が持っているもの
- 91 個の mp4 ビデオ ファイル (詳細は非公開)
- Raspbian Stretch を実行している Raspberry Pi 3 B (私の知る限り)
- Western Digital My Passport USB3 外付けハードディスク-
私が欲しいもの
私は祖母のために何かをセットアップしようとしています - 彼女は Pi を差し込むと起動し、外部ドライブのフォルダー内のビデオをループでランダムな順序で再生し始めます。彼女は 80 代後半で、あまり技術的ではなく、私から 9,211 km 離れたところに住んでいるので、できるだけシンプルにしたいと考えています。その結果、どんな変更も、Linux や Python にまったく慣れていない、より技術的な家族のメンバーによって行われる必要があります。
私が持っているもの
fstab をセットアップしました。
それはうまくいきます。
ループでシャッフルされたディレクトリ内のファイルの再生をサポートしているため、VLC のコマンドラインからビデオを再生しようとしました。そしてそれはうまくいきました... ある種。ビデオ プレーヤーが大きくなるほど、ビデオは信じられないほど途切れ途切れになり、基本的に全画面表示では再生されませんでした。omxplayer は mp4 を正常に再生できることがわかりましたが、一部のビデオは再生を拒否した webm でした。でも変換したのでOKです。
次のようなbashscriptをオンラインで見つけました。
それを使用して、次の Python スクリプトを作成しました。
私がする必要があるのは、スクリプト呼び出しを追加するファイル (initrc だと思います) を検索し、指示を書き、それをパッケージ化し、両親に渡してそこを引き継ぐことだけです。
...再生の問題を整理したら。
問題は何ですか
Python の知識があれば、すべてのビデオが再生されるまで Python スクリプトが実行されることを理解しているかもしれません (ループすらしないことに気付いたばかりです)。これは、Pi をシャットダウンするのが非常に困難になることを意味します。Python プロセスを強制終了してから、すべての omxplayer プロセスを強制終了する必要があります。最初に問題に気付いたときに修正しましたが、その後、Pi のプラグを抜く必要があり、外部と一致しない可能性があります)。
プレーヤーを実行して、ループと omxplayer を強制終了するなんらかの入力が発生するまでビデオを永遠にランダムに再生する方法が必要です。または、VLC でこれらのビデオを問題なく再生する方法を誰かが理解できれば、それで完璧です。
raspberry-pi - ラズベリーパイのgstreamerでomxh264enc要素を使用してinterval-intraframesを設定する方法
omxh264enc を使用して、ラズベリー パイで USB カメラ ソースをエンコードし、ビデオをストリーミングしています。キーフレーム間隔を制御したいのですが、方法がわかりませんでした。現在、次の bash スクリプトを使用しています。
アイデアは、raspivid 機能を模倣することですが、代わりに USB カメラソースを使用します
ありがとう :)