Wednesday, December 12, 2007

Remote Desktop Capture using DSNetwork Sender and Receiver

1.I modified the PushSource Desktop output pin's type as
MEDIATYPE_Stream, MEDIASUBTYPE_NULL or CLSID_NULL and So on.

2.In the Code SetSockopt() fn used for making the socket connection as multicast.
network interface card address is passed as an argument to this function ( SetsockOpt()).
I commented this code in DSNetwork Sender and Receiversample application in
DXSDK.
I modified the DSNetwork and DSReceiver Filter's property pages as Simply store
what we type as IPAddress.

3.I developed the raw transform filter which accepts MEDIATYPE_Stream as input and
gives MEDIATYPE_Video and we can connect it to the renderer

I tested this filter by doing the following :

PushSourceDesktop Filter ->Raw Transform filter-> LEAD RGB converter -> Video Render


within Raw Transform filter, I hardcoded the video width as 350 and height as 288, bitcount as 16

and RGB555.


4.next Integrated the raw transform filter with DSNetwork Sender and receiver.

5. within one PC, I captured the desktop using filter

Push Source Desktop_MEDIATypeStream -> MPEG Multicast Sender

6. On another PC, I constuct the graph as follows :


MPEG Multicast Receiver -> Raw Transform Filter -> Video Renderer


Actually the MPEG multicast receiver output pin's media type is MEDIAType_Stream...



Now the captured desktop is being displayed in remote system's video Renderer.


DrawBacks :
-----------
1. It consumes more network bandwidth...
we tested it within LAN. it requires more speed...

within this method, we got the framerate as 127.
Next we have to develop the Network Sender and Network Receiver as filter with WMV format...

No comments: