ノイズでモジュレーションしてみる

前回は、ノイズモジュレーションしましたが、
今回は、ノイズモジュレーションしてみます。

use v5.14;
use strict;
use warnings;

use Cassis;
use constant SAMPLING_RATE => 44100;

my $noise = Cassis::Noise->new();
my $dco = Cassis::DCO::Tri->new( fs => SAMPLING_RATE );
my @wav = ();
foreach my $speed ( 0.001, 0.0005, 0.0002, 0.00015, 0.0001 ) {
    my $n = SAMPLING_RATE * 3;

    $noise->set_speed( $speed );
    my $dco_out = $dco->exec(
        num => $n,
        mod_pitch => {
            src => $noise->exec( num => $n ),
            depth => 1.0
        }
    );

    push @wav, @{$dco_out};
}

Cassis::File::write(
    file => 'rand_pitch.wav',
    fs => SAMPLING_RATE, channels => [ \@wav ] );

個人的に、懐かしいというかお気に入りです。(*1)

エンペローブで音量の変化を付ければ、
効果音としても使えそうですね!

おしまい。

(*1) YMO「コズミック・サーフィン」のイントロっぽくないですか?

Leave a Comment