コード例 #1
0
 def _update(self):
     if self.player is not None:
         self.prevent = True
         self.slider.setValue(self.player.get_position() * 100)
         msec = self.player.get_time()
         self.time.setTime(QTime.fromMSecsSinceStartOfDay(msec))
         self.prevent = False
コード例 #2
0
    def open_audio(self, file):
        if not has_vlc:
            return False
        self.media = None
        self.player = None
        if file is None:
            self.setVisible(False)
            return
        self.file = file
        media = vlc.Media(file)
        media.parse_with_options(parse_flag=vlc.MediaParseFlag.local,timeout=100000)
        
        self.slider.setMaximum(100)
        self.slider.setValue(0)

        t = QTime.fromMSecsSinceStartOfDay(media.get_duration())
        self.time.setMaximumTime(t)
        self.max_time.setText(t.toString("h:m:s"))

        self.media = media
        self.player = media.player_new_from_media()
        
        self.set_enabled_utils()
        self.setVisible()

        return self.is_valid()
コード例 #3
0
def human_time(time: str) -> str:
    if not time:
        return "00:00"

    time = int(time)
    format = "hh:mm:ss" if time >= 60 * 60 else "mm:ss"

    return QTime.fromMSecsSinceStartOfDay(time * 1000).toString(format)