Forum Replies Created
-
AuthorPosts
-
ご回答ありがとうございました。
何度も説明して頂き恐縮ですが、整理させて下さい。
ご承知の通り、マイクの入力から分離音が得られるまでの応答速度改善が第一目的です。①(ADVANCE=160、window=50の場合)preroll_length=0でも50でも、frame0に対する定位情報は
同時刻(frame0が入力されてから約540ms後、つまり音声のframe50が入力されているころ)に出力され、その(frame0の)定位情報に基づき、-今のframe50から処理(分離等のノード処理)するのがpreroll_lemgth=0
(すでにframe0は過ぎてしまっているので、frame50から処理開始)
-バッファから過去50frame分遡ったframe0から処理するのはpreroll_length=50である。つまり、あるframeに対する定位情報を取得するのにかかる時間はpreroll_lengthの設定値により変わらないが、preroll_lengthの設定frame分streamは遅延(同じframe番号の音声入力と分離音出力を比較して)する。
preroll_lengthの設定を0にすれば、理論上streamの遅延はほとんど(1frame以下)ないはず(頭は切れるかもしれないが)。
という事でよろしいでしょうか。
(特に音声の終わりを早く検知したいので、頭は多少切れても良いと考えています。)②pause_lengthについては承知しました。色々ためしたところ、pause_lengthを短くすると
細切れになってしまうため、pause_lengthは800~1200に落ち着いています。③実時間処理の件は承知致しました。
④periodの調整に関しては承知しました。
ADVANCEやLENGTHの設定に関する注意事項、ポイント等はございますでしょうか。
(LENGTHは20~40msが良く、ADVANCEは後続フレームとフレーム全体の 1/3 – 1/2 重なる量シフトを指定すると記載されていましたが、デフォルトでは各512、160samplesということで、2/3が重なっている気がします。しかし例えばLENGTH=256にすると、うまく定位しませんでした)⑤FUTUREになっていました。
今回のような用途の場合はPASTが良いのでしょうか。
上記①との関係も含めて教えて頂ければと思います。
FUTURE、PASTでも、あるframeの定位情報はどこのframeを使用するかということでしょうか?
分かりづらくて恐縮ですが、添付に整理しております。考え方はあっておりますでしょうか。
(preroll_lengthとの関係が理解できているか不安です)Attachments:
追加で質問です
・SourceIntervalExtenderに設定しているフレーム数分の時間(advance160でf=16kHzだと10ms×50=500ms)は、以後の処理を遅らせるのだと思いますが、これらを50⇒0に設定するとそれだけ遅延が短い結果となっております。
以前バッファを考慮するフレームはノードで最も大きなフレーム数であり、LocalizeMusicのwindow50であればSourceIntervalExtenderの50frameは追加で時間がかかるものではいと伺ったので、なぜかなと思いましたが、処理系の速度の違いなどによるものでしょうか。
・また、HARKで抽出した音声streamは前後に秒単位で無音がありますが、これらを極力小さくする設定はありませんでしょうか。よろしくお願い致します。
詳細教えて頂き誠にありがとうございました。
全てクリアになりました。この度は何度もご対応頂き大変感謝申し上げます。
今後ともよろしくお願い致します。ありがとうございました。
右側のHarkDataStreamSender(node_HarkDataStreamSender_1)のSRC_INFOの入力をSourceIntervalExtenderの出力に変更しましたが、同じエラーが出てしまいました。
エラーコードを見る限り、エラーは左側のHarkDataStreamSender(node_HarkDataStreamSender_2)に対して出ていると思われますが、いかがでしょうか。よろしくお願い致します。
Attachments:
失礼致しました。ver2.4でした。
HARK 2.4.1
HARK-SSS 2.4.0早急にご回答いただきありがとうございました。
1~3,5に関して承知致しました。
4についてですが、HARK2.5です。HARK3.0が出た当初に色々と動かしてみたところ、
bufferOverflowとなることがあり、とりあえず旧verで試していた次第です。よろしくお願い致します。
ありがとうございました。何度も申し訳ありませんが、以下質問させて下さい。
頂いた図に関して
1.そもそもですが、Frame1とFrame2の重複している部分は同波形データで、少しづつシフトしながら演算をしているという事でしょうか。
2.Output delayの計算式のBuffer部分ですが、max(number_of_frames)-1(例でいうと、5-1=4frames)になりませんでしょうか。
3.バッファを考慮するフレームはノードの中で最も大きなフレーム数という事で理解しましたが、その際SpirceTrackerの後段に出てくるSourceIntervalExtenderに設定している50framesもLocalizeMusicのwindowと同数であるため、特段考慮(追加)しなくて良いという考えでしょうか。
4.TIMESTAMP端子についてですが、端子の追加方法は分かりましたが、添付のようなネットワークで実行すると、下記のようなエラーが出て止まってしまいます。
どの様にすればよいか助言頂けますでしょうか。
・
・
・
time: 50,
time: 51,
time: 52,
time: 53,
send header 12: 0.
SRC_NUM: 0
PKN2FD6BufferE error: trying to read non-existing element.
Element 0
Buffer is:
<Buffer
< 99 <TimeStamp <sec 1554204444> <usec 872533> > >
C:\work\flowdesigner-0.9.1-hark\data-flow\src\BufferedNode.cc line 126: Node node_AudioStreamFromMic_1 (type 18AudioStreamFromMic) Exception caught in BufferedNode::getOutput
C:\work\HARK-Windows\hark-fd\src\HarkDataStreamSender.cc line 975: Node node_HarkDataStreamSender_2 (type 20HarkDataStreamSender) Exception caught in BufferedNode::getOutput
C:\work\flowdesigner-0.9.1-hark\data-flow\src\Collector.cc line 83: Node ALL_NETWORK_OUTPUTS (type N2FD9CollectorE) Exception caught in Collector::getOutput
C:\work\flowdesigner-0.9.1-hark\data-flow\src\Iterator.cc line 118: Node node_LOOP0_1 (type N2FD8IteratorE) Error in Iterator::getOutput
C:\work\flowdesigner-0.9.1-hark\data-flow\src\Collector.cc line 83: Node ALL_NETWORK_OUTPUTS (type N2FD9CollectorE) Exception caught in Collector::getOutput5.先に質問させて頂きましたVAD情報に関する発話区間の考えについてはいかがでしょうか。
何度も申し訳ありません。よろしくお願い致します。
Attachments:
ご回答ありがとうございました。
添付のようなノードで、LENGTH 512(samples)、Fs=16kHz、1フレームあたり32msで、MultiFFTの
WINDOW_LENGTHで32ms、LocalizeMUSICのWINDOWで50frames(1.6s)で合計約2秒ほど遅延することになるかと思いますが、考え方はあっておりますでしょうか。(実際はそこまで遅延しているようには思えません)AudioStreamFromMicからのTIMESTAMP端子の接続方法でうまくいかないのですが、
他にSRC_INFOを接続したりするのでしょうか。また、documentにはTIMESTAMPの信号情報が載っておりませんが、どこかに書かれておりますでしょうか。2つのHarkDataStreamSenderを、たとえば両方Localhost,別ポート選択で後の設定は同じで良いでしょうか。VAD情報については、IDの発生と終了時刻は取得できておりますが、同時に取得した分離音は、
前後に余裕を持った(前後に無音(に近い)が入っている)ものとなっていると思われ、”発話区間”ではないと思われますがいかがでしょうか。質問が立て続けで申し訳ありません。
よろしくお願い致します。Attachments:
-
AuthorPosts