Screenshots zu groß

  • Ich will per UDP einen Screenshot übertragen.
    Das Bild ist bloß 23 KB groß, obwohl ich die Qualität auf
    0.00000000000000000000000000000000001 (!!!) hab Oo
    Der Empfänger nimmt die Daten nicht an, da es die maxlen überschreitet und die kann ich nichtmehr höher setzen, da sonst AutoIt einen Memory Fehler meldet.

  • Du könntest entweder 1) die Bilddatei aufteilen oder 2) das Bild (in Kacheln) aufteilen.

    Bei 1) muesstest Du quasi TCP ein bisschen nachbilden und vor jedem Fragment einen Zaehler (Screenshot-Nr:X) und den Offset in der Bilddatei übertragen. Beim Empfänger daran denken, daß die Reihenfolge vertauscht sein kann.

    Bei 2) unterteilst Du den Bildschirm in Kacheln und hängst vor jedes Paket z.B. noch die x/y Position. Dann darf aber die Kachel nicht zu groß werden.

    Stellt sich natürlich die Frage wieso Du nicht gleich TCP nimmst... ich vermute mal ein Problem mit NAT? Oder gar Multicast?

  • Du könntest entweder 1) die Bilddatei aufteilen oder 2) das Bild (in Kacheln) aufteilen.

    Bei 1) muesstest Du quasi TCP ein bisschen nachbilden und vor jedem Fragment einen Zaehler (Screenshot-Nr:X) und den Offset in der Bilddatei übertragen. Beim Empfänger daran denken, daß die Reihenfolge vertauscht sein kann.

    Bei 2) unterteilst Du den Bildschirm in Kacheln und hängst vor jedes Paket z.B. noch die x/y Position. Dann darf aber die Kachel nicht zu groß werden.

    Stellt sich natürlich die Frage wieso Du nicht gleich TCP nimmst... ich vermute mal ein Problem mit NAT? Oder gar Multicast?

    Ja, ich hab auch schon an 1) gedacht, aber hab erstmal hier gefragt ob es eine einfachere Lösung gibt ^^
    Dann werd ich 1) machen.

  • Übertrage das Bild halt in einzelnen String-Abschnitten
    Sagen wir du hast ne MaxLen von 100, also immer 100 Zeichen übertragen !

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Wie krieg ich das n hin?
    Ich hab das versucht mit Code lesen und dann durch StringLen die Länge rausfinden und vierteln.
    Aber ich kann damit nicht Stringabschnitte lesen sondern nur von Anfang an bis x.