vumeter.py

来自「minimal python variant for small footpri」· Python 代码 · 共 48 行

PY
48
字号
# Module 'VUMeter'import audiofrom StripChart import StripChartK = 1024Rates = [0, 32*K, 16*K, 8*K]class VUMeter(StripChart):	#	# Override define() and timer() methods	#	def define(self, parent):		self = StripChart.define(self, (parent, 128))		self.parent.need_timer(self)		self.sampling = 0		self.rate = 3		self.enable(0)		return self	#	def timer(self):		if self.sampling:			chunk = audio.wait_recording()			self.sampling = 0			nums = audio.chr2num(chunk)			ampl = max(abs(min(nums)), abs(max(nums)))			self.append(ampl)		if self.enabled and not self.sampling:			audio.setrate(self.rate)			size = Rates[self.rate]/10			size = size/48*48			audio.start_recording(size)			self.sampling = 1		if self.sampling:			self.parent.settimer(1)	#	# New methods: start() and stop()	#	def stop(self):		if self.sampling:			chunk = audio.stop_recording()			self.sampling = 0		self.enable(0)	#	def start(self):		self.enable(1)		self.timer()

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?