#buf.timestamp = timestamp #buf.duration = duration #buf.offset = offset #buf.offset_end = offset_end #buf.set_caps(gst.caps_from_string(caps)) r = self.src.emit("push-buffer", buf) if r != gst.FlowReturn.OK: if self.queue_state != "error": log.error("Error pushing buffer: %s", r) self.update_state("error") self.emit('error', "push-buffer error: %s" % r) return 0 return 1 gobject.type_register(SoundSink) def main(): from xpra.platform import program_context with program_context("Sound-Record"): args = sys.argv log.enable_debug() import os.path if len(args) not in (2, 3): print("usage: %s [-v|--verbose] filename [codec]" % sys.argv[0]) return 1 filename = args[1] if not os.path.exists(filename): print("file %s does not exist" % filename) return 2
self.do_emit_buffer(d, m) def do_emit_buffer(self, data, metadata={}): self.inc_buffer_count() self.inc_byte_count(len(data)) for x in self.pending_metadata: self.inc_buffer_count() self.inc_byte_count(len(x)) metadata["time"] = int(time.time() * 1000) self.idle_emit("new-buffer", data, metadata, self.pending_metadata) self.pending_metadata = [] self.emit_info() return 0 gobject.type_register(SoundSource) def main(): from xpra.platform import program_context with program_context("Xpra-Sound-Source"): import os.path if "-v" in sys.argv: log.enable_debug() sys.argv.remove("-v") if len(sys.argv) not in (2, 3): log.error("usage: %s filename [codec] [--encoder=rencode]", sys.argv[0]) return 1 filename = sys.argv[1]
def flush_jitter_queue(self): while not self.jitter_queue.empty(): d,m = self.jitter_queue.get(False) self.do_emit_buffer(d, m) def do_emit_buffer(self, data, metadata={}): self.inc_buffer_count() self.inc_byte_count(len(data)) metadata["time"] = int(time.time()*1000) self.idle_emit("new-buffer", data, metadata) self.emit_info() return 0 gobject.type_register(SoundSource) def main(): from xpra.platform import program_context with program_context("Xpra-Sound-Source"): import os.path if "-v" in sys.argv: log.enable_debug() sys.argv.remove("-v") if len(sys.argv) not in (2, 3): log.error("usage: %s filename [codec] [--encoder=rencode]", sys.argv[0]) return 1 filename = sys.argv[1] if filename=="-":
#buf.size = size #buf.timestamp = timestamp #buf.duration = duration #buf.offset = offset #buf.offset_end = offset_end #buf.set_caps(gst.caps_from_string(caps)) r = self.src.emit("push-buffer", buf) if r!=gst.FLOW_OK: if self.queue_state != "error": log.error("Error pushing buffer: %s", r) self.update_state("error") self.emit('error', "push-buffer error: %s" % r) return 0 return 1 gobject.type_register(SoundSink) def main(): from xpra.platform import program_context with program_context("Sound-Record"): args = sys.argv log.enable_debug() import os.path if len(args) not in (2, 3): print("usage: %s [-v|--verbose] filename [codec]" % sys.argv[0]) return 1 filename = args[1] if not os.path.exists(filename): print("file %s does not exist" % filename) return 2