[REBOL] Re: RFC: REBOL Home Multimedia Platform (RHMP)
From: petr:krenzelok:trz:cz at: 29-Dec-2001 18:17
Robert M. Muench wrote:
>>I will look for the source code on my notebook. I thought that we could
>>create some rebol effects library, which could work thru most platforms
>>that way ...
>>
>
>Ok, just send it to me if you found it. I have a look at it.
>
REBOL []
do %lib-rgb.r
img: load %coins.jpg
parse img [img-ptr:] ; a cool "hack" :-)
screen: layout [
im: image img
button "Change" [
scale-color img-ptr (length? img-prt) / 4
show im
]
]
view screen
----------------
; lib-rgb source ...
rgb-lib: load/library %some-dll.dll
scale-color: make routine! [
str [string!]
len [integer!]
] rgb-lib "scalecolor"
-----------------
; .dll source ...
#include <stdio.h>
__declspec (dllexport) void
scalecolor(unsigned char *imagedata, int numofpixels)
{
int i;
for(i=0;i<numofpixels;i+=2)
{
unsigned char pixel=( (i & 1)!=0 ? 0xff : 0x00);
imagedata[4*i]=pixel;
imagedata[4*i+1]=pixel;
imagedata[4*i+2]=pixel;
imagedata[4*i+3]=0x00;
}
}
; it will simply change each second column in the image to black color
.... (the example probably doesn't preserve alpha channel ....)
it is fast - very fast. I can't imagine doing pick/poke upon each pixel
of image on a larger image. General convolution mechanism is not
accessible from Rebol level.
The question is - if you would like to create e.g. some fire effect
(having face with some 20/sec fps timer set) how vital would be such
often library access ...
>>tcp protocol? You would have to create separate app - bridge, which
>>would have to listen to Rebol app on one side, while talking to native
>>environment on the other side ...
>>
>
>Right, but with this you don't need the /library extension and the RHMP could be
>used by anyone.
>
so you are skilled enough to create small listening server in C code?
Well, we could use Rebol itself - tcp ports are easy, and we could use
View/Pro and Encap the resulting app ... you would be even easily able
to set filters to certain tcp address access ...
>>>You can use IE as ActiveX control ;-)) you don't need all the stuff
>>>around it, you can just use the rendering part.
>>>
>>and it surely ... will work on other platforms, the same way, right? ;-)
>>
>
>Oh yes ;-))! Just plug-in something else... we only need a very small interface.
>
>>never! For me e.g., the only one open and multiplatform mailer is -
>>...
>>
>
>Well, than use Mozialla and plug this in. I really don't care, there just need
>to be enough adaptors provided for all kind of proggys the people use. Robert
>
Now I understand your intentions ..... it would be interesting to hear
RTs plans for such area though ...
-pekr-