お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2020-07-05 00:32:28

sdragonman
メンバ
登録日: 2020-01-23

xscreensaverをamazon prime videoの視聴中は無効としたい

xscreensaverをamazon prime videoの視聴中は無効としたいのですが、
出来ません。ブラウザはFirefoxを使用しています。
ご教示頂けますと助かります。

よろしくお願いいたします。

オフライン

 

#2 2020-07-13 11:43:58

sdragonman
メンバ
登録日: 2020-01-23

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

https://github.com/iye/lightsOn/blob/master/lightsOn.sh
上記のシェルスクリプトを実行することでフルスクリーンにて視聴している場合には、
xscreensaverが無効できることがわかりました。

ですが、
フルスクリーンでなくても無効できる方法があると良いのですが、難しいのでしょうか。

自分で一時的にxscreensaverをマニュアルで無効にすれば済む話なのかもしれませんが、
windowsと同じような動作をさせてみたいという興味もあり、もしも方法があるようで
したら、ご教示願いたいです。
よろしくお願いいたします。

オフライン

 

#3 2020-08-06 12:15:33

okajimaituki
メンバ
登録日: 2018-08-09

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

そのプログラムを、改良してみました。使って見てください。だめだったら言ってください。
https://github.com/okajimaitsuki/modifi … ightsOn.sh

オフライン

 

#4 2020-08-20 12:44:49

sdragonman
メンバ
登録日: 2020-01-23

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

okajimaitukiさん

お返事遅くなってしまい、誠に申し訳ございませんでした。

ありがとうございました。改良していただいたシェルスクリプト機能しています。
助かります。内容確認して、自分なりに理解しようとも思います。

本当にありがとうございました。m(_ _)m

オフライン

 

#5 2020-08-20 13:51:45

sdragonman
メンバ
登録日: 2020-01-23

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

okajimaitukiさん

上手く機能していると思ったのですが、違っておりまして、機能上は改良前のものと
同様の動作のようでフルスクリーン時スクリーンセーバーが無効となる動作となって
おります。

自分なりにシェルスクリプトの内容を確認して解析したいと思います。

オフライン

 

#6 2020-10-18 12:25:48

okajimaituki
メンバ
登録日: 2018-08-09

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

すいません、Githubの使い方間違えてました。
CloneしてからUploadしてました。
Forkしました。
https://github.com/okajimaitsuki/lightsOn/
が正しいです。

オフライン

 

#7 2020-10-18 12:30:46

okajimaituki
メンバ
登録日: 2018-08-09

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

よくスクリプトを見ていると、なんとxscreensaverを無効化していたのはたったの1行です。
delayScreensaver()関数には、kscreensaverとxscreensaverを判別し、実際に実行していたのは一行だけでした。

コード:

$ xscreensaver-command -deactivate > /dev/null

だけです。
面倒くさい場合、
https://github.com/okajimaitsuki/disablexscreensaver.git
をcloneして、中のdisable.sh

オフライン

 

#8 2020-10-18 12:32:47

okajimaituki
メンバ
登録日: 2018-08-09

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

間違えて送信ボタンをなぜか押してしまいました。
中のdisable.shを実行してください。

オフライン

 

#9 2020-10-18 23:21:31

sdragonman
メンバ
登録日: 2020-01-23

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

okajimaitukiさん

ありがとうございます。大変勉強になります。


自分でも色々調べて機能するシェリスプリクトを見つけました。
自動起動しても問題なく動作することが確認できましたので記述しておきます。

https://www.it-swarm-ja.tech/ja/video/映画の再生中にxscreensaverを停止するにはどうすればよいですか?/961656256/
で”オーディオが再生されているかどうかを検出する”シェルスクリプトが紹介されています。以下参考ください。

【紹介されていたシェルスクリプト】
------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/bash

while true
do
    state=$(pacmd list-sinks | grep -A 4 "*" | grep "state: " | cut -c 9-) 
    if [[ $state == SUSPENDED || $state == IDLE ]]
    then
        echo "State: $state. Not pausing screensaver."
        sleep 2m
    else
        echo "State: $state. Pausing screensaver."
        xscreensaver-command -deactivate > /dev/null
        sleep 4m
    fi
done
------------------------------------------------------------------------------------------------------------------------------------------------

ただし、このシェルを実行させてみましたが、上手く実行されませんでした。
それで、以下のように変更してみました。

         echo "State: $state. Not pausing screensaver."
  xscreensaver -nosplash &   ←追加
         sleep 2m

        echo "State: $state. Pausing screensaver."
        xscreensaver-command -exit > /dev/null   ←変更
        sleep 4m

すると、ちゃんと機能していることが確認できました。

しかしながら、今度は自動起動でシェルスクリプトを実行させたのですが上手くいきませんでした。
どうやら、ターミナルが起動していないと機能しないような挙動でしたので、以下のシェルスクリプト
を自動起動して実行させています。

------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/bash

nohup bash ”上記の変更したシェルスクリプト” &

gnome-terminal  ← ターミナル起動

IDNo=$(xdotool getactivewindow)
xdotool windowminimize $IDNo  ← ターミナルを最小化
------------------------------------------------------------------------------------------------------------------------------------------------

以上です。

オフライン

 

#10 2020-10-19 00:17:07

sdragonman
メンバ
登録日: 2020-01-23

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

しかしながら、今度は自動起動でシェルスクリプトを実行させたのですが上手くいきませんでした。

← 間違いでした。

nohup bash ”オーディオを検出するシェルスクリプト変更版” &

を自動起動に設定すれば、機能しています。

以上です。

オフライン

 

#11 2020-10-20 11:01:42

sdragonman
メンバ
登録日: 2020-01-23

Re: xscreensaverをamazon prime videoの視聴中は無効としたい

また、訂正です。
以下の紹介されていたシェルスクリプトで基本機能していることがわかりました。
ただし、イマイチよくわからないところがありますが、
xscreensaverの周期より①の時間を短く設定する必要があるようです。


【紹介されていたシェルスクリプト】
------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/bash

while true
do
    state=$(pacmd list-sinks | grep -A 4 "*" | grep "state: " | cut -c 9-)
    if [[ $state == SUSPENDED || $state == IDLE ]]
    then
        echo "State: $state. Not pausing screensaver."
        sleep 2m
    else
        echo "State: $state. Pausing screensaver."
        xscreensaver-command -deactivate > /dev/null
        sleep 4m ・・・・①
    fi
done
------------------------------------------------------------------------------------------------------------------------------------------------

オフライン

 

Board footer

Powered by FluxBB