3

Marsyas ライブラリを使用してアプリケーションを開発しています。

「シリーズ」-MarSystem にいくつかの MarSystems を追加しました。ここで、MEL または BARKフィルター バンク(バンドパス フィルター) を追加して、後で各バンドのエネルギーを計算したいと考えています。これには「TriangularFilterBank」を使用しますが、この MarSystem を適切に使用して MEL フィルター バンクをセットアップするにはどうすればよいですか?

その後、連続する2フレームの各バンドの処理済みデータに一度にアクセスしたいと考えています。どうやってそれをしますか?

記述されたシナリオのコード:

Marsyas::MarSystem *net = manager.create("Series", "net");
net->addMarSystem(manager.create("SoundFileSource","src"));

// ... 

net->addMarSystem(manager.create("Windowing", "ham")); // creates "frames"
net->addMarSystem(manager.create("Spectrum", "spec"));
net->addMarSystem(manager.create("PowerSpectrum", "powerSpec"));

// How to add a mel filter band here? <---

net->addMarSystem(manager.create("Energy", "en"));

// ...  

while (net->getctrl("SoundFileSource/src/mrs_bool/hasData")->to<Marsyas::mrs_bool>()) 
{
    // This processes one frame at a time at the moment:
    net->tick(); 
    Marsyas::mrs_realvec vec = net->getctrl("mrs_realvec/processedData")->to<Marsyas::mrs_realvec>(); 

    // How can I access the pocessed data of EACH band of WTO consecutive 
    // frames at ONCE here? <--    -

}

1.) メル フィルター バンドをシステムに追加するにはどうすればよいですか?

2.) 2 つの連続するウィンドウの各バンドの処理済みデータに一度にアクセスするにはどうすればよいですか?

4

0 に答える 0