spike_length = 1/1000; % s rate = 8000; % samplas per s filename = 'spikes.wav'; points = rate * spike_length; load cell_times.txt; spike = sin(linspace(0,2*pi,points))'; end_time = ceil(max(max(cell_times))); end_sample = (end_time + spike_length) * rate; left = zeros(end_sample, 1); right = zeros(end_sample, 1); for i = 1 : size(cell_times, 1), for j = 1 : size(cell_times, 2), position = cell_times(i, j); if isfinite(position), position = round(position * rate); right(position : position + points - 1) = right(position : position + points - 1) + spike; left(position : position + points - 1) = left(position : position + points - 1) - spike; end; end; end; wavwrite([left, right], rate, filename);