Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
for k, stream in enumerate(self.streams):
n = stream.name()
stream_params = copy.deepcopy(self.def_stream_parms)
stream_params['metadata'].update({
"name": n,
"ch_count": stream.channel_count(),
"ch_format": stream.channel_format(),
"srate": stream.nominal_srate()
})
# ch = stream.desc().child("channels").child("channel")
# for ch_ix in range(stream.channel_count()):
# print(" " + ch.child_value("label"))
# ch = ch.next_sibling()
stream_params['inlet'] = pylsl.StreamInlet(stream)
stream_params['is_marker'] = stream.channel_format() in ["String", pylsl.cf_string]\
and stream.nominal_srate() == pylsl.IRREGULAR_RATE
if not stream_params['is_marker']:
if self.sig_strm_idx < 0:
self.sig_strm_idx = k
srate = stream.nominal_srate()
stream_params['downSampling'] = srate > 1000
stream_params['chunkSize'] = round(srate / self.chunksPerScreen * self.seconds_per_screen)
if stream_params['downSampling']:
stream_params['downSamplingFactor'] = round(srate / 1000)
n_buff = round(stream_params['chunkSize'] / stream_params['downSamplingFactor'])
stream_params['downSamplingBuffer'] = [[0] * int(stream.channel_count())] * n_buff
self.stream_params.append(stream_params)
self.updateStreamNames.emit([_['metadata'] for _ in self.stream_params], self.sig_strm_idx)
self.start()
def _create_python_repr_lsl_outlet(self, name):
"""Create 1 channel python representation outlet"""
stream_info = lsl.StreamInfo(
name=name,
type='Pupil Capture',
channel_count=1,
channel_format=lsl.cf_string,
source_id='%s @ %s' % (name, self.g_pool.ipc_sub_url))
self._append_channel_info(stream_info, ("Python Representation",))
self._append_acquisition_info(stream_info)
return lsl.StreamOutlet(stream_info)