def cont_capture(self): saved_label = self.b_capture.label self.b_capture.label = 'Stop\n' + saved_label self.open_if_closed() self.init_cont() fps = 59.64 # Fields per second # XXX (fps of Indigo monitor, not of PAL or NTSC!) tpf = 1000.0 / fps # Time per field in msec self.capturing = 1 self.start_audio() while 1: try: void = fl.check_forms() except StopCapture: break try: cd, id = self.video.GetCaptureData() except sv.error: sgi.nap(1) continue id = id + 2*self.rate data = cd.InterleaveFields(1) cd.UnlockCaptureData() t = id*tpf if not self.write_frame(t, data): break self.stop_audio() self.capturing = 0 self.end_cont() if self.aout: # If recording audio, can't capture multiple sequences self.reset() self.b_capture.label = saved_label
def run(self): while 1: olddata = data = self.iport.readsamps(600) if self.do_ulaw: data = audioop.lin2ulaw(data, 2) data = audioop.ulaw2lin(data, 2) if self.do_adpcm: data, nacstate = audioop.lin2adpcm(data, 2, \ self.acstate) data, dummy = audioop.adpcm2lin(data, 2, \ self.acstate) self.acstate = nacstate if self.do_diff: olddata = audioop.mul(olddata, 2, -1) data = audioop.add(olddata, data, 2) self.oport.writesamps(data) fl.check_forms()
#! /usr/bin/env python
# Compare different audio compression schemes.