from timeside.api import IProcessor
from timeside.exceptions import Error, ApiError
import re
+import time
import numpy
__all__ = ['Processor', 'MetaProcessor', 'implements', 'abstract',
# setup/reset processors and configure channels and samplerate throughout the pipe
source.setup()
+ #FIXME: wait for decoder mainloop
+ time.sleep(0.1)
+
last = source
for item in items:
- item.setup(last.channels(), last.samplerate(), last.blocksize(), last.totalframes())
+ item.setup(channels = last.channels(),
+ samplerate = last.samplerate(),
+ blocksize = last.blocksize(),
+ totalframes = last.totalframes())
last = item
# now stream audio data along the pipe
self.input_width = caps[0]["width"]
else:
self.input_width = caps[0]["depth"]
- self.output_totalframes = self.totalframes()
def _on_message_cb(self, bus, message):
t = message.type
if self.input_samplerate == self.output_samplerate:
return self.input_totalframes
else:
- ratio = self.input_totalframes / self.output_samplerate
+ ratio = self.output_samplerate / self.input_samplerate
return self.input_totalframes * ratio
@interfacedoc