Skip to content

Commit 62bd935

Browse files
committed
Add time vector case to 'get_durations'.
1 parent 21b5289 commit 62bd935

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

src/spikeinterface/core/baserecording.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -233,8 +233,14 @@ def get_duration(self, segment_index=None) -> float:
233233
The duration in seconds
234234
"""
235235
segment_index = self._check_segment_index(segment_index)
236-
segment_num_samples = self.get_num_samples(segment_index=segment_index)
237-
segment_duration = segment_num_samples / self.get_sampling_frequency()
236+
237+
if self.has_time_vector(segment_index):
238+
times = self.get_times(segment_index)
239+
segment_duration = times[-1] - times[0] + (1 / self.get_sampling_frequency())
240+
else:
241+
segment_num_samples = self.get_num_samples(segment_index=segment_index)
242+
segment_duration = segment_num_samples / self.get_sampling_frequency()
243+
238244
return segment_duration
239245

240246
def get_total_duration(self) -> float:
@@ -246,7 +252,7 @@ def get_total_duration(self) -> float:
246252
float
247253
The duration in seconds
248254
"""
249-
duration = self.get_total_samples() / self.get_sampling_frequency()
255+
duration = sum([self.get_duration(idx) for idx in range(self.get_num_segments())])
250256
return duration
251257

252258
def get_memory_size(self, segment_index=None) -> int:

0 commit comments

Comments
 (0)