| Autor |
Beitrag |
XenoX
      
Beiträge: 50
|
Verfasst: Fr 16.05.03 07:53
Hi Leute,
wie könnte ich ein Live-Capturing verwirklichen? soll für ein Remotetool sein. sprich auf dem zu steuernden Rechner läuft der Server und auf dem anderem Rechner der Client. Jetzt würde ich gerne eine Live-Capture Funktion einbauen, sprich eine art Echtzeit überwachung. Habe aber keine Ahnung wie ich anfangen soll.
THX schon mal im vorraus!
|
|
ase
      
Beiträge: 203
Gentoo, Windows 9X, ME, 2k, NT, XP
Delphi 7 Prof., PHP 5 (Eclipse 3 SDK)
|
Verfasst: Fr 16.05.03 14:22
na ganz viele screen shoots machen und dann ab die post.
_________________ -EN
|
|
XenoX 
      
Beiträge: 50
|
Verfasst: Fr 16.05.03 14:33
Titel: hmm das ja auch nicht die beste lösung oder???
Die idee kam mir auch schon.........aber gibts nicht noch eine andere möglichkeit?
|
|
ase
      
Beiträge: 203
Gentoo, Windows 9X, ME, 2k, NT, XP
Delphi 7 Prof., PHP 5 (Eclipse 3 SDK)
|
Verfasst: Fr 16.05.03 14:54
klar. siehe remote administrator. die machen auch shoots, versenden aber nur den bildbereich, der sich beim letzten shoot nicht verändert hat. auch ne variante. dann noch als jpg komprimiert... jojo des passt scho
ase
_________________ -EN
|
|
Popov
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Fr 16.05.03 17:08
Ich hab da bereits einige Tools geschreiben die permanent den Bildschirm abfotografieren. Allerdings ist meine Erfahrung die, daß es das System sehr belastet. Überleg mal selbst was auf dich zukommt. Ein normaller Bildschirm hat heute 1024x800 Auslösung mit 32 oder 24 Bit Farbtiefe. Das macht pro Bild über 3 MByte große Datei. Jetzt kann man die 3 MB rüberschicken, und das natürlich mindesten 12 mal pro Sekunde. Mach ca. 36 MByte pro Sekunde über das Netztwerk. Auch wenn man das auf 4 Bilder pro Sekunde reduziert, so ist es immer noch viel. Man kann die Pakete aber vorher auch packen. Die Pakete werden dadurch kleiner, aber der Zip belastet das System stärker.
Ansonsten kannst du dir mal meine PopSpy, WebCamRecorder und das PopTV (mit Source) angucken. Allerdings ist PopTv ein kleines Jux-Programm, macht aber permanent Screenschots vom Bildschirm.
_________________ Popov
|
|
XenoX 
      
Beiträge: 50
|
Verfasst: Fr 16.05.03 19:56
Titel: PS: ich wills es nicht über netzwerk realisieren.....
ich spielte eigentlich mit dem gedanken mit dem internet das programm zu nutzen so ähnlich wie bei der XP Remote Software von der Professional edition
|
|
XenoX 
      
Beiträge: 50
|
Verfasst: Fr 16.05.03 21:08
Titel: Habs mir so vorgestellt....
Quelltext 1: 2: 3: 4: 5: 6:
| for i := 0 to ScreenShot.height do for j := 0 to ScreenShot.width do If OldScreenShot[i,j].Color <> NewScreenShot[i,j].Color then begin Send Change... end; |
aber keinen schimmer wie ich das richitg umsetze........als protokoll wollte ich UDP benutzen wegen der geschwindigkeit......
|
|
ase
      
Beiträge: 203
Gentoo, Windows 9X, ME, 2k, NT, XP
Delphi 7 Prof., PHP 5 (Eclipse 3 SDK)
|
Verfasst: Fr 16.05.03 22:25
servus. remote administrator kann man durchaus über ein 56k modem mit 1024x768x24er auflösung betreiben!
@XenoX: ich würde des anders machen. im prinzip verändert sich in windows nie ein einziger pixel oder so. es ist meist ein ganzes fenster was mit einmal neu gezeichnet wird. du kannst ja ne routine schreiben, die ein virtuelles rechteck um die veränderten pixel berechnet. sowas wie ne update region. die schickst du dann mit den werten x, y, width und height der region los. wenn du das pixelweise machst, dann musst du ja für jeden pixel noch die koordinaten schicken.
währe mein vorschlag.
ase
_________________ -EN
|
|
XenoX 
      
Beiträge: 50
|
Verfasst: Fr 16.05.03 23:16
Titel: ja aber wie......
ich hab irgendwie keinen Plan wie ich jetzt anfangen soll wie gesagt hab noch nichts gecoded is bisher nur ne idee die ich noch nicht in code umzusetzen weiss 
|
|
ase
      
Beiträge: 203
Gentoo, Windows 9X, ME, 2k, NT, XP
Delphi 7 Prof., PHP 5 (Eclipse 3 SDK)
|
Verfasst: Fr 16.05.03 23:20
naja, so wie ich es geschrieben habe?
schreib doch nen prog, was die unterschiede aus 2 bitmaps rausfindet und um alle stellen ein rechteck berechnet. das währe nen anfang
ase
_________________ -EN
|
|
Popov
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Fr 16.05.03 23:50
Nur sollte er nicht so arbeiten:
Delphi-Quelltext 1:
| If OldScreenShot[i,j].Color <> NewScreenShot[i,j].Color then |
Da dauert die Untersuchung schon länger als eine Sekunde. Für eine schnelle Untersuchnung reicht schon eine Prügung jedes 8x8 Pixels. Ansonsten sollte er sich ScanLine angucken.
_________________ Popov
|
|
XenoX 
      
Beiträge: 50
|
Verfasst: Fr 16.05.03 23:53
Titel: und wie ;)
Wenn du mir sagst wie ich am besten dafür ne Routine mache  zum abgleichen 2er bitmaps das neuland für mich 
|
|
ase
      
Beiträge: 203
Gentoo, Windows 9X, ME, 2k, NT, XP
Delphi 7 Prof., PHP 5 (Eclipse 3 SDK)
|
Verfasst: Sa 17.05.03 08:21
du könntest es mit ScanLine machen wenn du schon Bitmap objekte hast. das ist schneller als Pixels. Siehe Hilfe nach ScanLine.
dann kännte man noch überlegen, ob man überhaupt jeden pixel vergleichen muss. man könnte ja das bild nehmen und in ein raster aufteilen. dann überprüfst du nur die punkte, an denen sich die linien des rasters kreuzen. damit hättest du dann aber keine 100%ige sicherheit, dass die bilder immer aktuell sind.
schluss: nimm scanline.
ase
_________________ -EN
|
|
focus
      
Beiträge: 187
XP, 2k, 98, Me
D6 Prof
|
Verfasst: Di 27.05.03 10:00
klingt sicher blöd und sags gleich im vorraus: ich kenn mich mit grafik überhauptnicht aus.. theoretisch könntest du jeweils 32 bit gleichzeitig mit einem einzigen asm befehl vergleichen ... und nicht bitweise..dafür sind die prozessoren von heute schliesslich ausgelegt..vielleicht hab ich euch soweit auch missverstanden..wenn dann so ist schreibts bitte kurz..
meine nächste frage wäre warum willst du denn das bmp vergleichen?? wenn du beide umwandelst und die jpg`s vergleichst sparst du dir viel aufwandt...selbst wenn du nur auf 100k kompemierst sind das ja immerhin 1/10 der ursprünglichen vergleiche..oder nimmt das komp. soviel zeit in anspruch?
gruss
michael
|
|
ase
      
Beiträge: 203
Gentoo, Windows 9X, ME, 2k, NT, XP
Delphi 7 Prof., PHP 5 (Eclipse 3 SDK)
|
Verfasst: Di 27.05.03 11:23
kann er nicht machen weil er ja die koordinaten der unterschiede wissen muss. wenn bei position X:100, Y:100 ein unterschied festgestellt wird, dann muss er ja das entsprechende koordinaten rechteck "ausschneiden" um es zu versenden. aufgrund der komprimierung von jpeg geht des net. würdest du es trotzdem machen würde delphi das jpeg intern wieder in ein bitmap umwandeln soweit ich weiß.
ase
_________________ -EN
|
|