예제 #1
0
파일: play.py 프로젝트: j1cs/asus-rog
 def __init__(self):
     self.player = None
     for player in Playerctl.list_players():
         self.on_name_appeared(None, player)
     self.player_manager = Playerctl.PlayerManager()
     self.player_manager.connect('name-appeared', self.on_name_appeared)
     self.player_manager.connect('name-vanished', self.on_name_vanished)
     print('{}'.format(STOPPED), flush=True)
     self.main = GLib.MainLoop()
     self.main.run()
                          normalize("NFD", value).encode("ascii",
                                                         "ignore")).strip()


if __name__ == "__main__":
    import gi

    gi.require_version("Playerctl", "2.0")
    from gi.repository import Playerctl, GLib

    try:
        player = None
        while not player:
            try:
                player = Playerctl.Player.new_from_name(
                    Playerctl.list_players()[0])
            except IndexError:
                sleep(0.1)

        with Display(brightness=1) as display:

            def on_metadata(player, metadata):
                """
                Print track information on track change.

                Args:
                    player (Playerctl.Player): Player instance.
                    metadata (dict): MPRIS metadata
                """
                display_text = b"\n".join(
                    (b" | ".join((value for value in row if value))