xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.


Ticket #1178: centos-latency-via-drifting.patch

File centos-latency-via-drifting.patch, 2.2 KB (added by Antoine Martin, 5 years ago)

change pulsesink settings to try to make it work on centos6

  • xpra/sound/sink.py

     
    128128            log("%s()=%s", get_options_cb, v)
    129129            sink_attributes.update(v)
    130130        sink_attributes.update(sink_options)
     131        sink_attributes.update({
     132                                "drift-tolerance" : 2000000,
     133                                #"can-activate-pull" : 0,
     134                                "slave-method"  : 0,
     135                                "provide-clock" : 0,
     136                                "qos"           : 0,
     137                                "sync"          : 0,
     138                                "async"         : 1,
     139                                })
    131140        sink_str = plugin_str(sink_type, sink_attributes)
     141        log.warn("plugin_str(%s, %s)=%s", sink_type, sink_attributes, sink_str)
    132142        pipeline_els.append(sink_str)
    133143        if not self.setup_pipeline_and_bus(pipeline_els):
    134144            return
     
    159169    def queue_running(self, *args):
    160170        gstlog("queue_running")
    161171        self.queue_state = "running"
    162         self.set_min_level()
    163         self.set_max_level()
     172        if time.time()-self.last_underrun>2:
     173            pass
     174            #self.set_min_level()
     175            #self.set_max_level()
    164176        self.emit_info()
    165177        return True
    166178
     
    173185        self.queue_state = "underrun"
    174186        if now-self.last_underrun>2:
    175187            self.last_underrun = now
    176             self.set_min_level()
     188            #self.set_min_level()
    177189        self.emit_info()
    178190        return 1
    179191
     
    216228            now = time.time()
    217229            log("set_max_level lrange=%3i, last_max_update=%is", lrange, int(now-self.last_max_update))
    218230            #more than one second since last update and we have a range:
    219             if now-self.last_max_update>1 and lrange>0 and self.queue:
     231            if now-self.last_max_update>1 and self.queue:
    220232                cmst = self.queue.get_property("max-size-time")//MS_TO_NS
    221233                #overruns in the last minute:
    222234                olm = len([x for x in list(self.overrun_events) if now-x<60])