Aufgrund einer Wartung wird GitLab am 28.09. zwischen 10:00 und 11:00 Uhr kurzzeitig nicht zur Verfügung stehen. / Due to maintenance, GitLab will be temporarily unavailable on 28.09. between 10:00 and 11:00 am.

Commit 402e2a03 authored by Michael Kohnen's avatar Michael Kohnen

Simple binaural mixdown for ambisonics signals

parent ad3f6de7
function [ binOut ] = ita_3da_binauralMixdown( lsSignals, varargin )
%ITA_3DA_BINAURALMIXDOWN Produces a 2-Channel binaural stream out of
%loudspeaker signal(s) and coordinates (given as optional coordinates or
%better: encoded in the itaAudio channel coordinates
% Detailed explanation goes here
opts.HRTF='D:\DATA\sciebo\MKOScripts\HRTFs\2015_ITA-Kunstkopf_HRIR_2ch_D186_1x1_256_v17.daff';
opts.LSPos=itaCoordinates;
if nargin>1
opts=ita_parse_arguments(opts,varargin);
end
if ~(isa(lsSignals, 'itaAudio')&&(lsSignals.nChannels>0))
error('First input must be itaAudio with at least one channel')
end
if opts.LSPos.nPoints<1
opts.LSPos=lsSignals.channelCoordinates;
if opts.LSPos.nPoints<1
error('We need some channel coordinates!');
end
end
hrtfSet=itaHRTF('DAFF',opts.HRTF);
binOut=itaAudio;
for k=1:lsSignals.nChannels
hrtf=hrtfSet.findnearestHRTF(opts.LSPos.n(k));
convolved=ita_convolve(lsSignals.ch(k),hrtf);
if k==1
binOut=convolved;
else
binOut=binOut+convolved
end
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment