Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi wie versende ich mit tclient/serversocket eine datei? (https://www.delphipraxis.net/76747-wie-versende-ich-mit-tclient-serversocket-eine-datei.html)

jokerfacehro 9. Feb 2007 08:17

Re: wie versende ich mit tclient/serversocket eine datei?
 
Zitat:

wie groß dürfen die packerln maximal sein?
ich hab grad einfach mal die textlänge von einem teil ausgelesen und
die maximale länge ist 2^13 = 8192 zeichen ;)
das sind genau 8KByte

Muetze1 9. Feb 2007 14:13

Re: wie versende ich mit tclient/serversocket eine datei?
 
Das ist unterschiedlich und hängt von vielen Dingen ab. Dies stellt den Puffer der WinSockets dar und kann frei festgelegt werden. Grundlegend habt ihr mit dem Rückgabewert der SendBuf() Funktion die Möglichkeit dies ordentlich ohne Wissen über die Größe des Puffers zu implementieren. Daher ist die Frage nach der Größe des Puffers unerheblich.

jokerfacehro 10. Feb 2007 15:59

Re: wie versende ich mit tclient/serversocket eine datei?
 
Zitat:

so und jetz müssen wir das ganze nur noch am server empfangen Smile
macht das mit ner stringlist oder etwas anderes aber nicht mit nem memo ;)
ich hab mit ner stringlist gerade 60mbyte erfolgreich versendet
mit ner memo geht nicht ma 1mb :D

Arnulf 11. Feb 2007 11:10

Re: wie versende ich mit tclient/serversocket eine datei?
 
Zitat:

fertig Very Happy Very Happy Very Happy
funktioniert wunderbar
ja aber wie du siehst wollte ich das versenden etwas genauer steuern.
ich wollte genau wissen wieviel wann versendet wurde und wie schnell das geht ( auch ca. die bandbreite festlegen ).
das geht mit sendstream nicht - ausserdem hab ich brav wie ich bin den stream immer frei gegeben und das macht wie ich
nun weis die sendstream methode selbst schon.

sendbuf ist die methode der wahl wenn man genaue kontrolle braucht.

Arnulf

jokerfacehro 11. Feb 2007 12:48

Re: wie versende ich mit tclient/serversocket eine datei?
 
Zitat:

sendbuf ist die methode der wahl wenn man genaue kontrolle braucht.
^^
bei sendstream brauchst du doch nur wenn der server was empfängt,
die größe des gesamten textes dem client zurückschicken ;)

außerdem könnte man dazu noch den timestamp und die pakcetgröße schicken und
hätte denn exakte daten für die bandbreite ;)

wär schön wenn du deine funktion mal postest :)

Arnulf 11. Feb 2007 20:00

Re: wie versende ich mit tclient/serversocket eine datei?
 
wenn ich zeit hab eine zu schreiben mach ich das :).
nein - sollte kein problem sein - ich kümmere mich aber vorher erstmal um das protokoll meines streaming clients.
vorher hat es nicht viel sinn die streams zu kontrollieren.

Zitat:

bei sendstream brauchst du doch nur wenn der server was empfängt,
die größe des gesamten textes dem client zurückschicken Wink

außerdem könnte man dazu noch den timestamp und die pakcetgröße schicken und
hätte denn exakte daten für die bandbreite Wink
darum geht es nicht wirklich.
wenn ich eine statistik machen wollte könnte man das so machen.

die funktion die ich bereits gepostet hab hat ja schon die benutzte bandbreite kontrolliert.
je nach packetgröße bzw. sleep wird hald schneller oder langsamer verschickt.
das hab ich gebraucht, weil ich von einem spiel aus screenshots übers netz verschickt hab und den spieler
wärend des spiels nicht stören wollet ( sonst lagts im game ).

was ich jetzt machen will ist genaue kontrolle über den stream haben weil ich an einen streaming client ( pinnacle showcenter ) videos streamen will.
Dabei will ich live tv von der tv karte grabben und als stream rauf schicken.
wenn ich jetzt den sender umschalte möchte ich nahtlos und möglichst schnell den stream wechseln können.
das bedeutet ich muß möglichst wenig im puffer haben ( ein paar mb sind bei einem film nicht ausschlaggebend ) und möglichst nahtlos den neuen sender übertragen.

wenn ich das nicht mache muß jedes mal wenn ich den sender wechsle der stream vom client neu initalisiert werden und das würde ein paar sekunden dauern - das ist nicht wirklich schön wenn man wie ich die fernbediehnung ständig in der hand hat und umschalten will.
Timeshifting und pause usw. sollen auch realisiert werden.
Deshalb werd ich wohl nichts anderes nehmen könnne als sendbuf und eben genau abfragen wieviel noch im puffer ist bzw. ich nachladen muß.

sobald ich das protokoll des showcenters entschlüsselt hab werd ich mich wieder um die streams kümmern und gerne auch den code posten ...

lg
Arnulf


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:10 Uhr.
Seite 4 von 4   « Erste     234   

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