2

Processing で、ロードされた.mp3ファイルを反転するプログラムを作成し、既に実装されている抽象関数を回避する必要があります (たとえば、Minim特定のサウンドを反転する関数はまだ見つかりませんが)。今までいろいろな方法を試してきましたが、まだ再生されません。

私の最後のアプローチでは、Minim.loadFileIntoBuffer()関数を使用して a を取得してfloat[]から、Processing の関数を使用してバッファーを逆にしreverse()ます。次にAudioSample、同じfloat配列と元のファイルの形式で を作成します。次に、 を使用してサンプルを再生しますtrigger()

ここにスニペットがあります:

Minim minim;
AudioPlayer songPlayer;
MultiChannelBuffer song;
AudioSample reversedSong;
float[] reversedBuffer, mixBuffer;

void setup() {
  size(512, 200);
  minim = new Minim(this);

  songPlayer = minim.loadFile("sound.mp3");

  // loadFileIntoBuffer changes the MultiChannelBuffer's parameters to
  // match the file's, so init values doesn't really matter
  song = new MultiChannelBuffer(10, 3);
  minim.loadFileIntoBuffer("sound.mp3", song);

  mixBuffer = songPlayer.mix.toArray();
  reversedBuffer = reverse(mixBuffer);

 reversedSong = minim.createSample(reversedBuffer, songPlayer.getFormat());
 reversedSong.trigger();
} 

私もいくつかの異なる解決策を試しました。つまり、ファイルを直接AudioSample. 私がこれまで使ってきたほとんどの方法の問題点は、サウンド全体の一部にしかアクセスできないことだと思いAudioBufferます。したがって、すべてを元に戻すことはできません。

これを行う方法を知っていますか?

4

1 に答える 1