Ответы пользователя по тегу Debian
  • Как вставить паузу в исполнение питоновского скрипта?

    @alpy

    Почитав код, я не увидел там ключа, определяющего периодичность записи. Есть ли там такой ключ или возможно ли его туда добавить, хотя бы просто грубо внеся паузу в исполнение всего скрипта?


    def do_activate ...
        self.shell_player.connect('elapsed-changed', self.elapsed_changed)

    Здесь плагин подписывается на сигнал об изменении позиции, что происходит каждую секунду. Соответственно вызов elapsed_changed тоже будет происходить каждую секунду. Простой sleep здесь скорее всего не поможет, т.к. плеер должен дергать функции по сигналам неблокирующим образом.

    Я бы попробовал переделать elapsed_changed таким образом:
    def elapsed_changed(self, player, entry, data=None):
        try:
            pb_time = self.shell_player.get_playing_time()[1]
            if pb_time % 5 == 0:
                self.playback_time = self.shell_player.get_playing_time()[1]
        except:
            pass


    в этом случае позиция фиксируется каждую 5-ю секунду
    Ответ написан
    1 комментарий