annotate sequences/windowparams.m @ 61:eff6bddf82e3 tip

Finally implemented perceptual brightness thing.
author samer
date Sun, 11 Oct 2015 10:20:42 +0100
parents 672052bd81f8
children
rev   line source
samer@0 1 function [span,jump]=windowparams(sz,frame,hop,width,opts)
samer@0 2 % windowparams - compute windowing parameters to get buffers of a certain size
samer@0 3 %
samer@0 4 % windowparams ::
samer@0 5 % [[1,2]] ~ 'size of signal [channels,length]',
samer@0 6 % natural ~ 'desired frame length',
samer@0 7 % natural ~ 'desired hop per frame',
samer@0 8 % natural|[] ~ 'desired number of frames per buffer or [] for all',
samer@0 9 % options {
samer@0 10 % natural : jump/[] ~'override window jump'
samer@0 11 % }
samer@0 12 % -> natural ~ 'recommended window span',
samer@0 13 % natural ~ 'recommended window jump'.
samer@0 14
samer@0 15 channels = sz(1);
samer@0 16 length = sz(2);
samer@0 17
samer@0 18 if isempty(width)
samer@0 19 width=channels*(floor((length-frame)/hop)+1);
samer@0 20 end
samer@0 21
samer@0 22 span = (hop*(width-1)+frame)/channels;
samer@0 23 jump = (hop*width)/channels;
samer@0 24
samer@0 25 if nargin>4 && isfield(opts,'jump'), jump = channels*hop*opts.jump; end
samer@0 26
samer@0 27