AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Schnelle Bildschirmübertragung per Netzwerk
Thema durchsuchen
Ansicht
Themen-Optionen

Schnelle Bildschirmübertragung per Netzwerk

Offene Frage von "Mavarik"
Ein Thema von Zacherl · begonnen am 16. Okt 2012 · letzter Beitrag vom 11. Nov 2016
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von olee
olee

Registriert seit: 16. Feb 2008
Ort: Boppard
540 Beiträge
 
Turbo Delphi für Win32
 
#11

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 16. Okt 2012, 21:22
Danke fürs posten
Björn Zeutzheim
Codename: Performancepumpe
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#12

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 17. Okt 2012, 00:16
Danke euch beiden, das sieht doch recht vielversprechend aus Ich werde mir die Funktion mal selbst für variable Bittiefen anpassen. Die Erweiterung für gerade und ungerade Zahöen ist einfach damit der Empfänger schonmal in der Hälfte der Zeit eine Änderung sieht? Wäre auf jeden Fall auch da an deiner Umsetzung interessiert.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#13

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 17. Okt 2012, 01:03
Joa. Aufjedenfall kann ich mit ihm Videos im kleinen Player auf youtube mit 7-8fps mitkucken!

Bzgl der Aufnahme: bei mir (i7 3.4 ghz) kann ich mit 30~ fps im Schnitt per StretchBlt / BitBlt Bilder mit der Auflösung 1920x1080 aufzeichnen. Deaktiviere ich Aero, so steigt es auf ~150.

Also falls man da noch ein paar Frames rausholen will, könnte man dieses Bottleneck entfernen... DwmDisableComposition()
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von olee
olee

Registriert seit: 16. Feb 2008
Ort: Boppard
540 Beiträge
 
Turbo Delphi für Win32
 
#14

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 17. Okt 2012, 02:14
Hi nochmal,

Dein Posting hier hatte nochmal mein Interesse geweckt und da hab ich schnell mal das alte Programm mit Aphton's Hilfe etwas überarbeitet und auch die unterscheidung zwischen den Bittiefen 8 / 24 Bit hinzugefügt, sowie mancher kleiner Extras.
Wenn du Interesse an diesem "Codec" hast, ich habe ihn als Unit angehangen.

EDIT: Schon irgendwie lustig, dass du dieses Thema anpackst, wo wir erst vor kurzem selbst drauf gekommen sind
Wäre cool, wenn du das ganze vielleicht noch schneller bekommen könntest!
Testen lässt sich das am besten mit ein paar ausgewählten Bildern, welche man laden, durch den Codec jagen und anschließend nach Paketgrößen prüfen kann.

EDIT-2: Der neue Code ist auch variabel auf einen *übertrage-jede-n-te-Zeile* mit Parameter 'n' einstellbar.

EDIT-3 (man bin ich vergesslich -.-'): Das neue Programm hat sich je nach Scenario sogar schneller als Teamviewer erwiesen. Scheint als wäre das der richtige Weg

Viel Spaß damit

MFG
Angehängte Dateien
Dateityp: zip ScreenShare.zip (268,1 KB, 81x aufgerufen)
Dateityp: pas ScreenShareCodec.pas (4,9 KB, 84x aufgerufen)
Björn Zeutzheim
Codename: Performancepumpe

Geändert von olee (17. Okt 2012 um 02:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#15

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 17. Okt 2012, 07:02
Vielen vielen Dank schonmal für die Codec Unit und das Beispielprogramm Das Verfahren ist echt schon irre schnell muss man sagen. Lustigerweise gibt es bei mir keinen wirklichen Unterschied bei den Frameraten bezüglich lokaler Verbindung und Verbindung über WAN IP. Ich muss das später von der Uni aus nochmal genau prüfen, vielleicht hat mein Router die WAN IP auch einfach ganz geschickt wieder auf meine LAN IP geroutet. Oder hast du in der Demo Anwendung sowas wie eine Framerate Begrenzung eingebaut?

Ich bastele mir mal eine eigene kleine Demoanwendung und schaue dann, was sich noch optimieren lässt.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Benutzerbild von olee
olee

Registriert seit: 16. Feb 2008
Ort: Boppard
540 Beiträge
 
Turbo Delphi für Win32
 
#16

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 18. Nov 2012, 13:28
Auf mehrfache Anfrage hier mal der gesamte Code der Screen-Sharing Demo.
Intern werden dabei meine Net-Messages zur einfachen und effizienten Übertragung von großen TCP Paketen verwendet.

MFG
Angehängte Dateien
Dateityp: zip ScreenShare.zip (277,4 KB, 133x aufgerufen)
Björn Zeutzheim
Codename: Performancepumpe
  Mit Zitat antworten Zitat
arnof

Registriert seit: 25. Apr 2013
1.254 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#17

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 10. Nov 2016, 17:56
gibt es hier schon was neues ?

Ich habe mir gerade die Teamviewer Updatepreise angeschaut, da bin ich echt am überlegen, sowas selbst zu machen ....
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#18

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 10. Nov 2016, 18:18
gibt es hier schon was neues ?

Ich habe mir gerade die Teamviewer Updatepreise angeschaut, da bin ich echt am überlegen, sowas selbst zu machen ....
Musst du da auf Rechner in entfernten Netzwerken zugreifen? Ansonsten schau dir mal TightVNC an. Ich meine da wäre sogar der SourceCode bzw. eine DLL dabei um sowas in das eigene Programm zu implementieren.

Benutzen wir hier in der Firma zur Fernwartung. Funktioniert perfekt. Besser als RealVNC oder UltraVNC.

Nur haben wir das natürlich nicht in einer eigenen Anwendung integriert. Ist aber ja mit TeamViewer auch nicht möglich, oder?
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#19

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 10. Nov 2016, 18:43
Gibt seit Windows 8 tatsächlich etwas sehr Feines: Die Desktop Duplication API.

Über dieses Interface bekommst du direkt von Windows alle Änderungen am Bildschirminhalt zwischen zwei Aufrufen der Funktion geliefert. Dabei sind die Daten sehr geschickt und platzsparend arrangiert. Zum Einen bekommst du eine Liste mit Rechtecken (nur die Position und Größe, keine Bildaten) von gleichgebliebenen Bereichen, die sich allerdings verschoben haben und zum Zweiten erhälst du eine Liste mit Rechtecken (diesmal Position, Größe und Bilddaten) von Bereichen, die sich geändert haben.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)

Geändert von Zacherl (10. Nov 2016 um 18:47 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.538 Beiträge
 
Delphi 11 Alexandria
 
#20

AW: Schnelle Bildschirmübertragung per Netzwerk

  Alt 10. Nov 2016, 19:17
gibt es hier schon was neues ?

Ich habe mir gerade die Teamviewer Updatepreise angeschaut, da bin ich echt am überlegen, sowas selbst zu machen ....
Vor der Überlegung stand ich auch vor kurzem, mein Remote-Desktop-Programm (bei Interesse, hier: http://www.pc-network.biz/) auf einen Fernwartungsmodus zu erweitern, denn die TeamViewer-Preise finde ich inakzeptabel.

Habe dann aber anydesk gefunden, das ist sehr preiswert und in einigen Punkten sogar noch besser als der Teamviewer :http://anydesk.de/remote-desktop

Das nutze ich jetzt seit einiger Zeit und bin bislang sehr zufrieden.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz