Java programmer!

Hadoop

Member
Oct 28, 2011
88
15
Wadau wa Java, nahitaji ku create real-time desktop/screen sharing application in Java.

Naomba mchango wenu.
 
Wadau wa Java, nahitaji ku create real-time desktop/screen sharing application in Java.

Naomba mchango wenu.
Mchango wa aina gani unahitaji?
Kama ni mtu kukutengenezea tangaza dau, vinginevyo inabidi ufanye mwenyewe kama alivyosema bs0d
Kama umeanza na umekwama mahali sema ulipokwamia!
 
Last edited by a moderator:
Mchango wa aina gani unahitaji?
Kama ni mtu kukutengenezea tangaza dau, vinginevyo inabidi ufanye mwenyewe kama alivyosema bs0d
Kama umeanza na umekwama mahali sema ulipokwamia!

Nahitaji kutengeneza iwe desktop application, lakini communication between pc inayo capture na ku share na nyingine iwe through Sockets.

Tatizo kubwa kwangu ni jinsi njia nzuri ya ku transfer(yeah nime opt socket) captured screen kwenda kwa pc nyingine.
Nachotaka ni kwamba kusiwe na delay kubwa sana kati ya sender na receiver a.k.a viewer, yaani viewer awe anaona kama real time thing vile.

Naweza ku code program nzima, lakini kabla sijaanza ku code, natafuta idea kutoka kwenu wataalamu, ili ni save time.
 
Mchango wa aina gani unahitaji?
Kama ni mtu kukutengenezea tangaza dau, vinginevyo inabidi ufanye mwenyewe kama alivyosema bs0d
Kama umeanza na umekwama mahali sema ulipokwamia!

I thought nifanye kama ifuatavyo:-
Sender a.k.a capturing computer:-
1. Loop infinite
2. Capture screen and save as image file
3. Create video from saved image
4. Stream video kwenda kwa receiver
.....

Receiver:
1. Receive video sent by Sender
2. Show video
3. Receive Commands(mouse click, mouse move) sent by Sender
4. Respond based on mouse commands received
5.
....


Naamini nimejielezea vizuri.
 
Nahitaji kutengeneza iwe desktop application, lakini communication between pc inayo capture na ku share na nyingine iwe through Sockets.

Tatizo kubwa kwangu ni jinsi njia nzuri ya ku transfer(yeah nime opt socket) captured screen kwenda kwa pc nyingine.
Nachotaka ni kwamba kusiwe na delay kubwa sana kati ya sender na receiver a.k.a viewer, yaani viewer awe anaona kama real time thing vile.

Naweza ku code program nzima, lakini kabla sijaanza ku code, natafuta idea kutoka kwenu wataalamu, ili ni save time.
Ina maana unatumia networking
Delays = Networks Speed + Virtual Machine delay (Java is interpreted lang)+ Bad design costs +AOB

Kumbuka sockets hazijuagi zinacho-transmit kama ni video picha au whatever. Design ya sender/receiver, file format and processing zina matter.

Pia inategemeana ka unataka ku stream Picha tu (desktops Images) au unatuma na commands pia. Na kama unatuma na commands zinapokelewaje na kuwa sync'ed na desktop frames.

Kifupi ni app ambayo unahitaji precise design na uwe na muda/manpower kuitengeneza.

Kama ni ushauri ningeshauri utumie C/GTK+ au (my favorite) C++/wxWidgets ingawa QT iko fine vilevile kwa kuwa App yako ni performance critical.

Well, you have opened a can of worms and.... all the best!
 
I thought nifanye kama ifuatavyo:-
Sender a.k.a capturing computer:-
1. Loop infinite
2. Capture screen and save as image file
3. Create video from saved image
4. Stream video kwenda kwa receiver
.....
Why Infinite loop?
Are you going to use console? IF UI then no need for that. GUIs have event loops.
If you think you need a loop then spawn threads.

Also no need to save images, waste of HDD space. Just capture image and stream it to receiver, frame by frame (3o fps to make illusion of video) thru your sockets


Receiver:
1. Receive video sent by Sender
2. Show video
3. Receive Commands(mouse click, mouse move) sent by Sender
4. Respond based on mouse commands received
5.
....

Naamini nimejielezea vizuri.
Receiver will need to decode your socket stream and reshow it as sent.
You need to find a way to send commands too.

Why don't you check sources for VNC and its design? VNC is what you want to do. Libraries like Libvnc will do what you want to do (Its GPLed so you are screwed if its commercial project)

If you need consultancy (in this case paid one) Check with me in PM to get details (which will soon be on our Coming website). I would like to help 100% for free but I have not free time than this and rest of my staffs are busy also. Thats why you have to pay my company to release me do consultation.

Else you are on your own ;)
 
Ina maana unatumia networking
Delays = Networks Speed + Virtual Machine delay (Java is interpreted lang)+ Bad design costs +AOB

Kumbuka sockets hazijuagi zinacho-transmit kama ni video picha au whatever. Design ya sender/receiver, file format and processing zina matter.

Pia inategemeana ka unataka ku stream Picha tu (desktops Images) au unatuma na commands pia. Na kama unatuma na commands zinapokelewaje na kuwa sync'ed na desktop frames.

Kifupi ni app ambayo unahitaji precise design na uwe na muda/manpower kuitengeneza.

Kama ni ushauri ningeshauri utumie C/GTK+ au (my favorite) C++/wxWidgets ingawa QT iko fine vilevile kwa kuwa App yako ni performance critical.

Well, you have opened a can of worms and.... all the best!

Mkuu nashukuru kwa mchango wako.

Nimeona nitumie Java kutokana na open source library nilizozisoma + uwezo wangu wa kutumia Java si mbaya sana.

Issue kubwa nilizoonayo ni:-
1. jinsi gani ya ku synchronize images zinazokuwa captured na zinazotumwa kwenda kwa receiver?
2. jinsi gani ya ku merge images zinazokuwa received na receiver, ili iwe kama vile Real Time thing.

Pia sender's mouse movement nazo inabidi ziwe send kama commands kwenda kwa receiver, then receiver inabidi ime hizo action kwenye scene nzima. Je hili nifanyeje?

Zaidi ya hapo, ninahitajika ku monitor action zinakuwa performed na receiver? e.g. Scroll, n.k

Pamoja.
 
Mkuu nashukuru kwa mchango wako.
Ubarikiwe :)

Nimeona nitumie Java kutokana na open source library nilizozisoma + uwezo wangu wa kutumia Java si mbaya sana.
Not bad!

Issue kubwa nilizoonayo ni:-
1. jinsi gani ya ku synchronize images zinazokuwa captured na zinazotumwa kwenda kwa receiver?
2. jinsi gani ya ku merge images zinazokuwa received na receiver, ili iwe kama vile Real Time thing.
Inabidi utume data na command. Hapo utatuma image ikiwa emebeded na command kama text. Unaweza tumia XML kwa mfano ikiwa na data (picha) na command. Then upand wa pili uwe na uwezo wa kupokea na kuimitate. Actually itategemeana na kiwango cha utendaji wa App yako (kama ni just kumsupport remote person au zaidi)

Pia sender's mouse movement nazo inabidi ziwe send kama commands kwenda kwa receiver, then receiver inabidi ime hizo action kwenye scene nzima. Je hili nifanyeje?
Hii inajibiwa na comment ya kwanza kwa post hii!

Zaidi ya hapo, ninahitajika ku monitor action zinakuwa performed na receiver? e.g. Scroll, n.k
Inategemea na unataka app ifanye nini? So Yes or no!


:)
 
Why Infinite loop?
Are you going to use console? IF UI then no need for that. GUIs have event loops.
If you think you need a loop then spawn threads.

Also no need to save images, waste of HDD space. Just capture image and stream it to receiver, frame by frame (3o fps to make illusion of video) thru your sockets



Receiver will need to decode your socket stream and reshow it as sent.
You need to find a way to send commands too.

Why don't you check sources for VNC and its design? VNC is what you want to do. Libraries like Libvnc will do what you want to do (Its GPLed so you are screwed if its commercial project)

If you need consultancy (in this case paid one) Check with me in PM to get details (which will soon be on our Coming website). I would like to help 100% for free but I have not free time than this and rest of my staffs are busy also. Thats why you have to pay my company to release me do consultation.

Else you are on your own ;)

Thanks mkuu.
Hiyo infite loop nimechukua kama mfano tuu, though ni bad design.

Ku save video kweli sio nzuri, pia ina add delay isiyo ya lazima.

Nilicheki hiyo lib , naona ipo ki commercial zaidi, na ina support language nyingi tuu.

Me ni mwanafunzi, nafanya research katika application mbalimbali, so sipo kibishara mkuu, that is to say hata fee ya kukulipa sina ndugu.

Ukifuatilia utaona nauliza issue kibao hapa jamvini za IT, coz me na tafiti kila angle ya IT ili kuongeza ujuzi na kujifunza zaidi.

Nashukuru sana kwa mchango wako. Nimejifunza mengi.

Pamoja.
 
Ubarikiwe :)


Not bad!


Inabidi utume data na command. Hapo utatuma image ikiwa emebeded na command kama text. Unaweza tumia XML kwa mfano ikiwa na data (picha) na command. Then upand wa pili uwe na uwezo wa kupokea na kuimitate. Actually itategemeana na kiwango cha utendaji wa App yako (kama ni just kumsupport remote person au zaidi)


Hii inajibiwa na comment ya kwanza kwa post hii!


Inategemea na unataka app ifanye nini? So Yes or no!



:)

Thanks sana ndugu.

Darasa limeeleweka.

Pamoja.
 

Similar Discussions

Back
Top Bottom