Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Libs On Demand #9

Open
smakhtin opened this issue Aug 21, 2012 · 4 comments
Open

Libs On Demand #9

smakhtin opened this issue Aug 21, 2012 · 4 comments

Comments

@smakhtin
Copy link

Hi, i checked your libs on demand branch and looks like it's not working. If i understanding right, you want to load only requered js files. If you can deeply explain your implementation, maybe i can help you to realise it.

I think libs on demand is important, because currently when we loading some code with webaudio api, all vvvv js engine stops working during the exeption, that throw browsers like Firefox and IE. So to prevent this, we can just don't use this kind of nodes in crossbrowser projects.

@zauner
Copy link
Owner

zauner commented Aug 21, 2012

Hi,

the libs on demand functionality should help developers to add 3rd-party libraries (I'm thinking of box2d.js). The idea is, that e.g. box2d.js should only be loaded, if there are nodes which require it.

So it's actually only a first step to what you are explaining -- let's call it "nodes on demand".

"First step", because there are now methods which should be helpful for that.

What exactly does not work for you with that branch?

@smakhtin
Copy link
Author

Currently we loading all nodes categories in VVVV.Init function. If some nodes of the category is not supported by the web browser (like all nodes with WebAudio API in Firefox), loading is stopping during browser exeption and whole VVVV.js engine stops working. So we need to somehow check if the node is compatible with current browser and then load it. Or just avoid it in pathces, that targeting problem browser. Currently in you "lod" branch we still loading all node categories and when i doing insertJS('nodes/vvvv.nodes.dshow9.js') all VVVV.js examples stops working in Firefox because it get exeption at initialisation phase.

@zauner
Copy link
Owner

zauner commented Aug 22, 2012

Hi,

off-topic, but: I extended your ScopeSpread node so that it works with Firefox using Audio Data API, but I just can't push to github -- always gives me fatal: sha1 file '<stdout>' write error: Invalid argument

on-topic again: I think the nodes rather should provide suitable fallbacks themselves instead of letting VVVV.js do anything magic here. Taking the DShow9 category as an example: there will be most likely nodes in that category, that don't use Web Audio API, so that shouldn't prevent VVVV.js from loading the entire nodes/vvvv.nodes.dshow9.js file, I guess. Do you agree here?

@smakhtin
Copy link
Author

Yes, i'm also thinking about this, looks like you are right. Maybe we should integrate standart compability checker method to VVVV.Core.Node?

About Git, can you provide full error log and client type (if you using), maybe i can help, my skype - algariol

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants