システムがスリープ/フリーズするのを防ぐ - Xviewer/VLCで行う方法

システムがスリープ/フリーズするのを防ぐ - Xviewer/VLCで行う方法

Linux Mintがフルスクリーンモードのとき、私のラップトップはスリープ状態になりませんXviewer。フルスクリーンアプリVLCなどの他のアプリは、スリープモードをブロックしません。mpv

XviewerGUIには目を覚ますオプションはありません。

どうXviewerやって予防して終了できますか?

Transmissionたとえば、この動作が有益であると思われるアプリの睡眠保護を有効にするにはどうすればよいですか?

ベストアンサー1

Linuxアプリケーションは次のように中断されます。Dバスに電話するorg.gnome.SessionManager.Inhibit

比較済み禁止そして防ぐ

気づく禁止とは違う防ぐ禁止スクリーンセーバー、スクリーンロック、または一時停止は、コンピュータがアイドル状態のときにのみ操作が実行されるのを防ぎ、ユーザーまたは他のプログラムが手動でアクティブ化するときは防ぎません。

特定のアプリケーションが停止を抑制する方法

広がる

Preferences転送には ->Desktopタブ -> に省電力を抑制するチェックボックスがありますInhibit hibernation when torrents are active

Transmissionのソースコードをダウンロードしましたが、org.gnome.SessionManager.InhibitCinnamon D-BusセッションのD-Busメソッド()を呼び出すことがわかりました。

Firefoxブラウザ

使ったdbusモニタFirefoxがビデオを再生するときに何をするかを学びます。ビデオの再生が始まると、Firefoxは2つの呼び出しを送信します。

$ dbus-monitor
. . .
# disable screensaver
method call time=1523976795.844938 sender=:1.104 ->
destination=org.freedesktop.ScreenSaver serial=9 path=/ScreenSaver;
interface=org.freedesktop.ScreenSaver; member=Inhibit
  string "firefox"
  string "video-playing"
# disable sleeping
method call time=1523976795.893407 sender=:1.21 -> destination=:1.3
serial=61 path=/org/gnome/SessionManager;
interface=org.gnome.SessionManager; member=Inhibit
  string "firefox"
  uint32 0
  string "video-playing"
  uint32 8
. . .

最後のメソッドを呼び出すと、次の抑制剤が生成されます。

$ dbus-send --session --type=method_call --print-reply
--dest=org.gnome.SessionManager /org/gnome/SessionManager
org.gnome.SessionManager.GetInhibitors
method return time=1523969881.311742 sender=:1.3 -> destination=:1.188
serial=491 reply_serial=2
  array [
     object path "/org/gnome/SessionManager/Inhibitor6"
  ]

ビデオが停止すると、インヒビターが削除されます。

$ dbus-send --session --type=method_call --print-reply
--dest=org.gnome.SessionManager /org/gnome/SessionManager
org.gnome.SessionManager.GetInhibitors
method return time=1523969881.311742 sender=:1.3 -> destination=:1.188
serial=493 reply_serial=2
  array [
  ]

可視光通信

VLCはFirefoxと同様に省電力/一時停止を抑制します。

$ dbus-monitor
. . .
method call time=1523977809.526716 sender=:1.8017 ->
destination=org.freedesktop.ScreenSaver serial=3 path=/ScreenSaver;
interface=org.freedesktop.ScreenSaver; member=Inhibit
  string "vlc"
  string "Playing some media."
method call time=1523977809.527152 sender=:1.21 -> destination=:1.3
serial=91 path=/org/gnome/SessionManager;
interface=org.gnome.SessionManager; member=Inhibit
  string "vlc"
  uint32 0
  string "Playing some media."
  uint32 8
. . .

$ dbus-send --session --type=method_call --print-reply
--dest=org.gnome.SessionManager /org/gnome/SessionManager
org.gnome.SessionManager.GetInhibitors
method return time=1523977813.424421 sender=:1.3 ->
destination=:1.8018 serial=85789 reply_serial=2
  array [
     object path "/org/gnome/SessionManager/Inhibitor7750"
  ]

Xビューア

スライドショーを再生すると、Xviewerは上記のプログラムに似たD-Busメソッドを呼び出します。

手動で中断を無効にする方法

スリープ/一時停止を抑制するために広く使用されている2つのアプレットがあります。カフェインそしてミニプログラム禁止(内蔵シナモンアプレット:下部パネルを右クリック - > Add Applets to Panel- > Inhibit Applet。ただし、これらのアプレットは、特定のアプリの実行中に停止抑制機能を自動的にオンまたはオフにするのではなく、手動でオンまたはオフにします。

おすすめ記事