def setUp(self): super(TestCase, self).setUp() self.pseudo_server = types.SimpleNamespace( audio_bus_allocator=servertools.BlockAllocator(), control_bus_allocator=servertools.BlockAllocator(), node_id_allocator=servertools.NodeIdAllocator(), )
def _build_id_mapping_for_nodes(self): allocator = servertools.NodeIdAllocator() mapping = {self.root_node: 0} for offset in self.offsets[1:]: state = self.states[offset] nodes = sorted(state.start_nodes, key=lambda x: x.session_id) for node in nodes: mapping[node] = allocator.allocate_node_id() mapping[node] = node.session_id return mapping
def setUp(self): super(TestCase, self).setUp() self.pseudo_server = types.SimpleNamespace( audio_bus_allocator=servertools.BlockAllocator(), control_bus_allocator=servertools.BlockAllocator(), node_id_allocator=servertools.NodeIdAllocator(), ) self.server = servertools.Server.get_default_server().boot() synthdefs.default.allocate(self.server) self.server.debug_osc = True self.server.latency = 0.0
def _setup_allocators(self, server_options): from supriya.tools import servertools self._audio_bus_allocator = servertools.BlockAllocator( heap_maximum=server_options.audio_bus_channel_count, heap_minimum=server_options.first_private_bus_id, ) self._buffer_allocator = servertools.BlockAllocator( heap_maximum=server_options.buffer_count, ) self._control_bus_allocator = servertools.BlockAllocator( heap_maximum=server_options.control_bus_channel_count, ) self._node_id_allocator = servertools.NodeIdAllocator( initial_node_id=server_options.initial_node_id, ) self._sync_id = 0
def test__perform_realtime_01(self): node_uuid = uuid.uuid4() event = patterntools.SynthEvent( out=4, pan=0.25, synthdef=synthdefs.default, uuid=node_uuid, ) server = types.SimpleNamespace( node_id_allocator=servertools.NodeIdAllocator(), ) uuids = {} event_products = event._perform_realtime( server=server, timestamp=100.0, uuids=uuids, ) assert len(event_products) == 1 self.compare_strings( ''' supriya.tools.patterntools.EventProduct( event=supriya.tools.patterntools.SynthEvent( delta=0, out=4, pan=0.25, synthdef=<supriya.tools.synthdeftools.SynthDef('da0982184cc8fa54cf9d288a0fe1f6ca')>, uuid=UUID('...'), ), index=0, requests=[ supriya.tools.requesttools.SynthNewRequest( add_action=supriya.tools.servertools.AddAction.ADD_TO_HEAD, node_id=1000, synthdef=<supriya.tools.synthdeftools.SynthDef('da0982184cc8fa54cf9d288a0fe1f6ca')>, target_node_id=1, out=4, pan=0.25, ), ], timestamp=100.0, uuid=UUID('...'), ) ''', format(event_products[0]), ) assert node_uuid in uuids assert isinstance(uuids[node_uuid], dict) assert list(uuids[node_uuid].keys()) == [1000]
def test__perform_realtime_02(self): node_uuid = uuid.uuid4() event = patterntools.GroupEvent( is_stop=True, release_time=0, uuid=node_uuid, ) server = types.SimpleNamespace( node_id_allocator=servertools.NodeIdAllocator(), ) uuids = { node_uuid: { 1000: servertools.Group(), }, } event_products = event._perform_realtime( server=server, timestamp=100.0, uuids=uuids, ) assert len(event_products) == 1 self.compare_strings( ''' supriya.tools.patterntools.EventProduct( event=supriya.tools.patterntools.GroupEvent( delta=0, is_stop=True, release_time=0, uuid=UUID('...'), ), index=0, is_stop=True, requests=[ supriya.tools.requesttools.NodeFreeRequest( node_ids=(1000,), ), ], timestamp=100.0, uuid=UUID('...'), ) ''', format(event_products[0]), )
def test__perform_realtime_01(self): node_uuid = uuid.uuid4() event = patterntools.GroupEvent(uuid=node_uuid, ) server = types.SimpleNamespace( node_id_allocator=servertools.NodeIdAllocator(), ) uuids = {} event_products = event._perform_realtime( server=server, timestamp=100.0, uuids=uuids, ) assert len(event_products) == 1 self.compare_strings( ''' supriya.tools.patterntools.EventProduct( event=supriya.tools.patterntools.GroupEvent( delta=0, uuid=UUID('...'), ), index=0, requests=[ supriya.tools.requesttools.GroupNewRequest( add_action=supriya.tools.servertools.AddAction.ADD_TO_HEAD, node_id=1000, target_node_id=1, ), ], timestamp=100.0, uuid=UUID('...'), ) ''', format(event_products[0]), ) assert node_uuid in uuids assert isinstance(uuids[node_uuid], dict) assert list(uuids[node_uuid].keys()) == [1000]
def test__perform_realtime_01(self): event = patterntools.NoteEvent( duration=1.0, delta=10.0, frequency=443, ) server = types.SimpleNamespace( node_id_allocator=servertools.NodeIdAllocator(), ) start_product, stop_product = event._perform_realtime( server=server, timestamp=100.0, uuids={}, ) assert start_product.uuid == stop_product.uuid self.compare_strings( ''' supriya.tools.patterntools.EventProduct( event=supriya.tools.patterntools.NoteEvent( delta=10.0, duration=1.0, frequency=443, is_stop=True, ), index=0, is_stop=False, requests=[ supriya.tools.requesttools.SynthNewRequest( add_action=supriya.tools.servertools.AddAction.ADD_TO_HEAD, node_id=1000, synthdef=<supriya.tools.synthdeftools.SynthDef('da0982184cc8fa54cf9d288a0fe1f6ca')>, target_node_id=1, frequency=443, ), ], timestamp=100.0, uuid=UUID('...'), ) ''', format(start_product), ) self.compare_strings( ''' supriya.tools.patterntools.EventProduct( event=supriya.tools.patterntools.NoteEvent( delta=10.0, duration=1.0, frequency=443, is_stop=True, ), index=0, is_stop=True, requests=[ supriya.tools.requesttools.NodeSetRequest( node_id=1000, gate=0, ), ], timestamp=101.0, uuid=UUID('...'), ) ''', format(stop_product), )