Good news for those of you who often work with nodes in the RAW category. The general performance overhead has been reduced by quite a bit in the latest alpha version of vvvv. The respective commit can be found here.
This was achieved by an internal change to work with the IStream interface directly, instead of wrapping it in adapter classes, exposing it either as System.IO.Stream to .NET or TStream to Delphi. So a downstream plugin node will now have direct access to the upstream stream output, instead of going through an internal adapter class.
In case you write your own plugins and you want to keep the overhead as small as possible create your own custom Stream class, which implements the before mentioned IStream interface - for example have a look at the ComStream.*.cs files here and nodes making use of it here.
Thanks to woeiuser and jens.a.euser for reporting the performance issues and keeping on nagging me about it ;)
Comments:
Comments are no longer accepted for this post.
it might have to do something with these changes: in here:
AsValue freaking out like this:
But if I take out Take (note the pun) all fine.
Update: Any Raw sink node freaks out after Take in this situation Update2: Problem occurs when raw stream coming from AsRaw (String) but AsRaw (Value) is fine
also + (Raw Spectral) doesn’t like the changes: