From: Dennis S. <sy...@yo...> - 2004-12-13 23:57:27
|
I am still working on that libvisual winamp AVS reimplementation. I've redone the script deserializer, and it's very easy to add new elements now. Part of winamp AVS is their small script and mostly formula eval language to easily do dynamic things. We will have to implement this as well, and thus I wroten a small draft: ______ VisScript proposal: Compatible with winamp AVS script language. script = visual_script_new (); /* Add extra elements on the fly */ visual_script_function_add ("clear", clear_function); visual_script_variable_add ("w", width); visual_script_constant_add ("PI", 3.1415); visual_script_from_text (script, text); /* Compile (automaticly selects right engine) */ visual_script_compile (script); /* Select compile target manually */ visual_script_compile_to_native (script); visual_script_compile_to_vm (script); /* Run the script */ visual_script_run (script); Big Question: Implement only in libvisual-AVS Implement in libvisual as an eval language Extend language with more instructions than AVS has. _____ The thing I am really insecure about is if we should only implement it the libvisual AVS plugin, or if we should do this at libvisual layer. The advantage of doing it in libvisual is that everyone can use the script language. The big question is still, does it belong here ? I am very doubtful about this, however, putting it just in the libvisual AVS plugin would make it inaccessible for others, that while, when the jitter rocks, it can be really useful. You could use equations to shape the waveform and such, and make them user editable.... Please, I need some advice here. Cheers, Dennis |