PDL-Audio

 view release on metacpan or  search on metacpan

bin/pdlaudio-birds  view on Meta::CPAN

      [4.8,0.05,1180,1180,0.06,[0,0,1,10,0.5,20,0.6,40,0.5,60,0,100],[0,0,1,25,1,75,0,100],[1,0.1,2,1,3,0.1,4,0.01,5,0.09,6,0.01,7,0.01]],
      [4.95,0.1,1180,1180,0.08,[0,0,1,10,0.5,20,0.6,40,0.5,60,0,100],[0,0,1,25,1,75,0,100],[1,0.1,2,1,3,0.1,4,0.01,5,0.09,6,0.01,7,0.01]],
      [5.15,0.1,1180,1180,0.09,[0,0,1,10,0.5,20,0.6,40,0.5,60,0,100],[0,0,1,25,1,75,0,100],[1,0.1,2,1,3,0.1,4,0.01,5,0.09,6,0.01,7,0.01]],
      [5.35,0.1,1180,1180,0.1,[0,0,1,10,0.5,30,0.5,80,0,100],[0,0,1,25,1,75,0,100],[1,0.1,2,1,3,0.1,4,0.01,5,0.09,6,0.01,7,0.01]],
      [5.45,0.4,1050,1050,0.1,[0,0,1,5,0.5,10,0.4,90,0,100],[0,0,1,25,1,75,0,100],[1,0.1,2,1,3,0.1,4,0.01,5,0.09,6,0.01,7,0.01]],
      [6.25,0.8,1050,1050,0.1,[0,0,1,5,0.5,10,0.4,90,0,100],[0,0,1,25,1,75,0,100],[1,0.1,2,1,3,0.1,4,0.01,5,0.09,6,0.01,7,0.01]],
      [7.45,1.8,1050,1050,0.1,[0,0,1,5,0.5,10,0.4,90,0,100],[0,0,1,25,1,75,0,100],[1,0.1,2,1,3,0.1,4,0.01,5,0.09,6,0.01,7,0.01]],
   ],
};

sub hz(){ 44100 }

sub bird {
   my ($dur, $freq, $skew, $amp, $freqenv, $ampenv, $partials) = @_;
   $freqenv = gen_env $dur, @$freqenv;
   $ampenv = gen_env $dur, @$ampenv;
   my $os = gen_oscil $dur, $freq, 0, $freqenv*$skew;#*PDL::Audio::PI2;
   $os = pdl($partials)->partials2polynomial(1)->polynomial($os) if defined $partials;
   $os*$ampenv;
}



( run in 4.396 seconds using v1.01-cache-2.11-cpan-524268b4103 )