Wie kann man sagen, dass Totem ein Video abspielt oder nicht

596
Kyle

Ich bin vor kurzem zu DWM gewechselt und habe es angepasst. Ich habe xautolock eingerichtet, um meinen Computer nach 5 Minuten automatisch zu sperren. Es wird nervig, wenn ich einen Film mit Totem sehe. Gibt es eine Möglichkeit festzustellen, ob Totem gerade einen Film abspielt, damit ich mein Bildschirmsperrungsskript bearbeiten kann, um dies zu überprüfen? Ich möchte nicht nur davon ausgehen, dass Totem nicht aktiv ist, weil der Totem läuft. Es muss spielen.

1
Ich wollte * sagen "D-Bus benutzen", aber es stellt sich heraus, dass Totem * nichts * über D-Bus freigibt ... Ignacio Vazquez-Abrams vor 11 Jahren 0

2 Antworten auf die Frage

0
Everett

Könnten Sie nicht nach Audio auf der Soundkarte suchen? Lassen Sie sich einen beliebigen Ausgang (Kopfhörer / Lautsprecher) ansehen. Ich bezweifle, dass Sie jemals einen Film im Stillen sehen werden ...

Ja, aber es macht mir nichts aus, wenn der Computer blockiert, während ich Musik spiele. Kyle vor 11 Jahren 0
Dann kann das, was Sie versuchen, unmöglich sein. Wenn Sie das Video in eine Warteschlange stellen, wird der Computer nicht gesperrt, wenn der Bildschirmschoner erscheint. Wenn Sie dies nicht auf Totem-Basis ausführen möchten, haben Sie wirklich nicht viel mehr, mit dem Sie arbeiten können ... Everett vor 11 Jahren 0
0
Kyle

I found a post on Stackoverflow explainging how to enable a D-bus plugin for totem.

The Python script I came up with is ugly, but it does the job for making sure movies playing don't lock the screen:

import dbus def totem_is_playing(): try: T_SERVICE_NAME = "org.mpris.Totem" T_OBJECT_PATH = "/Player" T_INTERFACE = "org.freedesktop.MediaPlayer" session_bus= dbus.SessionBus() totem = session_bus.get_object(T_SERVICE_NAME, T_OBJECT_PATH) totem_mediaplayer = dbus.Interface(totem, dbus_interface=T_INTERFACE) status = totem_mediaplayer.GetStatus() if status[0] == 0: return True return False except dbus.exceptions.DBusException: return False 

The plugin API can be explain via code review here: https://yayoutube.googlecode.com/svn-history/r50/trunk/totem/mpris/mpris.py